From 690f42efe8e129a47e158082f4cc1b96d75ed1f9 Mon Sep 17 00:00:00 2001 From: tastyducks <15849445+TastyDucks@users.noreply.github.com> Date: Thu, 24 Apr 2025 21:38:59 -0700 Subject: [PATCH 1/3] Add Spectacles-2-Unitree sample --- README.md | 25 + Spectacles-2-Unitree/.devcontainer/Dockerfile | 96 + .../.devcontainer/devcontainer.json | 24 + Spectacles-2-Unitree/.gitattributes | 105 + .../.github/workflows/build-and-push.yml | 80 + Spectacles-2-Unitree/.gitignore | 16 + Spectacles-2-Unitree/ATTRIBUTION.md | 23 + Spectacles-2-Unitree/Assets/Base.png | 3 + Spectacles-2-Unitree/Assets/Base.png.meta | 19 + .../Device Camera Texture.deviceCameraTexture | 2 + ...ce Camera Texture.deviceCameraTexture.meta | 17 + Spectacles-2-Unitree/Assets/Echopark.hdr | 3 + Spectacles-2-Unitree/Assets/Echopark.hdr.meta | 18 + Spectacles-2-Unitree/Assets/Image.mat | 73 + Spectacles-2-Unitree/Assets/Image.mat.meta | 16 + Spectacles-2-Unitree/Assets/Joystick/Base.png | 3 + .../Assets/Joystick/Base.png.meta | 19 + .../Assets/Joystick/Cylinder.fbx | 3 + .../Assets/Joystick/Cylinder.fbx.meta | 105 + .../Assets/Joystick/ImageMaterial.mat | 73 + .../Assets/Joystick/ImageMaterial.mat.meta | 16 + .../Assets/Joystick/Joystick.prefab | 298 + .../Assets/Joystick/Joystick.prefab.meta | 331 + .../Assets/Joystick/Joystick.ts | 270 + .../Assets/Joystick/Joystick.ts.meta | 65 + .../Assets/Joystick/JoystickInner.prefab | 207 + .../Assets/Joystick/JoystickInner.prefab.meta | 235 + .../Assets/Joystick/JoystickPlane.mat | 120 + .../Assets/Joystick/JoystickPlane.mat.meta | 16 + .../Assets/Joystick/JoystickScene.scene | 13946 ++++++++++++++++ .../Assets/Joystick/JoystickScene.scene.meta | 17 + .../Assets/Joystick/MaterialParams.png | 3 + .../Assets/Joystick/MaterialParams.png.meta | 19 + .../Assets/Joystick/Normal.png | 3 + .../Assets/Joystick/Normal.png.meta | 19 + .../Assets/Joystick/Simple Frame.png | 3 + .../Assets/Joystick/Simple Frame.png.meta | 19 + .../Assets/Joystick/image_unlit.ss_graph | 3 + .../Assets/Joystick/image_unlit.ss_graph.meta | 16 + .../Assets/Joystick/joystick box.png | 3 + .../Assets/Joystick/joystick box.png.meta | 19 + .../Assets/Joystick/pbr.ss_graph | 3 + .../Assets/Joystick/pbr.ss_graph.meta | 16 + .../Assets/MaterialParams.png | 3 + .../Assets/MaterialParams.png.meta | 19 + Spectacles-2-Unitree/Assets/Normal.png | 3 + Spectacles-2-Unitree/Assets/Normal.png.meta | 19 + Spectacles-2-Unitree/Assets/PBR 1.mat | 120 + Spectacles-2-Unitree/Assets/PBR 1.mat.meta | 16 + Spectacles-2-Unitree/Assets/PBR 2.mat | 120 + Spectacles-2-Unitree/Assets/PBR 2.mat.meta | 16 + Spectacles-2-Unitree/Assets/PBR 3.mat | 120 + Spectacles-2-Unitree/Assets/PBR 3.mat.meta | 16 + Spectacles-2-Unitree/Assets/PBR.mat | 72 + Spectacles-2-Unitree/Assets/PBR.mat.meta | 16 + Spectacles-2-Unitree/Assets/Pyramid.mesh | 3 + Spectacles-2-Unitree/Assets/Pyramid.mesh.meta | 22 + .../Assets/Render Target.renderTarget | 13 + .../Assets/Render Target.renderTarget.meta | 17 + Spectacles-2-Unitree/Assets/Scene.scene | 11578 +++++++++++++ Spectacles-2-Unitree/Assets/Scene.scene.meta | 17 + .../Assets/Audio/HoverAudioTrack.wav | 3 + .../Assets/Audio/HoverAudioTrack.wav.meta | 16 + .../Assets/Audio/TriggerEndAudioTrack.wav | 3 + .../Audio/TriggerEndAudioTrack.wav.meta | 16 + .../Assets/Audio/TriggerStartAudioTrack.wav | 3 + .../Audio/TriggerStartAudioTrack.wav.meta | 16 + .../FingerHighlightLeft.mat | 131 + .../FingerHighlightLeft.mat.meta | 16 + .../FingerHighlightRight.mat | 128 + .../FingerHighlightRight.mat.meta | 16 + .../FingerTipGlow.mat | 74 + .../FingerTipGlow.mat.meta | 16 + .../HandOccluderLeft.mat | 30 + .../HandOccluderLeft.mat.meta | 16 + .../HandOccluderRight.mat | 30 + .../HandOccluderRight.mat.meta | 16 + .../RadialGradientOcclusion.mat | 75 + .../RadialGradientOcclusion.mat.meta | 16 + .../Assets/Materials/BitmojiMaterial.mat | 73 + .../Assets/Materials/BitmojiMaterial.mat.meta | 16 + .../Materials/ContainerImageMaterial.mat | 73 + .../Materials/ContainerImageMaterial.mat.meta | 16 + .../Assets/Materials/LogoMaterial.mat | 73 + .../Assets/Materials/LogoMaterial.mat.meta | 16 + .../Materials/NormalBasedTargetOutline.mat | 65 + .../NormalBasedTargetOutline.mat.meta | 16 + .../Materials/PinchButtonDarkInactive.mat | 130 + .../PinchButtonDarkInactive.mat.meta | 16 + .../Materials/PinchButtonDarkRadial.mat | 74 + .../Materials/PinchButtonDarkRadial.mat.meta | 16 + .../Materials/PinchButtonToggleOffIcon.mat | 499 + .../PinchButtonToggleOffIcon.mat.meta | 16 + .../Materials/PinchButtonToggleOnDefault.mat | 131 + .../PinchButtonToggleOnDefault.mat.meta | 16 + .../Materials/PinchButtonToggleOnIcon.mat | 131 + .../PinchButtonToggleOnIcon.mat.meta | 16 + .../Materials/PinchButtonToggleOnSelect.mat | 131 + .../PinchButtonToggleOnSelect.mat.meta | 16 + .../SysSet_round_button_close 1.mat | 131 + .../SysSet_round_button_close 1.mat.meta | 17 + .../SysSet_round_button_close 10.mat | 212 + .../SysSet_round_button_close 10.mat.meta | 17 + .../SysSet_round_button_close 2.mat | 153 + .../SysSet_round_button_close 2.mat.meta | 17 + .../SysSet_round_button_close 3.mat | 185 + .../SysSet_round_button_close 3.mat.meta | 17 + .../SysSet_round_button_close 4.mat | 215 + .../SysSet_round_button_close 4.mat.meta | 17 + .../SysSet_round_button_close 5.mat | 185 + .../SysSet_round_button_close 5.mat.meta | 17 + .../SysSet_round_button_close 6.mat | 131 + .../SysSet_round_button_close 6.mat.meta | 17 + .../SysSet_round_button_close 7.mat | 158 + .../SysSet_round_button_close 7.mat.meta | 17 + .../SysSet_round_button_close 8.mat | 170 + .../SysSet_round_button_close 8.mat.meta | 17 + .../SysSet_round_button_close 9.mat | 158 + .../SysSet_round_button_close 9.mat.meta | 17 + .../SysSet_round_button_close.mat | 165 + .../SysSet_round_button_close.mat.meta | 17 + .../SysSet_round_button_glow 1.mat | 83 + .../SysSet_round_button_glow 1.mat.meta | 16 + .../SysSet_round_button_glow 2.mat | 35 + .../SysSet_round_button_glow 2.mat.meta | 16 + .../SysSet_round_button_glow.mat | 83 + .../SysSet_round_button_glow.mat.meta | 16 + .../Materials/PlatformUI/RoundButtonHover.mat | 113 + .../PlatformUI/RoundButtonHover.mat.meta | 16 + .../PlatformUI/RoundButtonPinched.mat | 101 + .../PlatformUI/RoundButtonPinched.mat.meta | 16 + .../Materials/PlatformUI/RoundButton_Idle.mat | 101 + .../PlatformUI/RoundButton_Idle.mat.meta | 16 + .../LensExplorer/LensExp_scroll 1.mat | 222 + .../LensExplorer/LensExp_scroll 1.mat.meta | 16 + .../LensExplorer/LensExp_scroll 2.mat | 294 + .../LensExplorer/LensExp_scroll 2.mat.meta | 16 + .../Materials/LensExplorer/LensExp_scroll.mat | 174 + .../LensExplorer/LensExp_scroll.mat.meta | 16 + .../LensExplorer/LensExp_scroll_bg.mat | 129 + .../LensExplorer/LensExp_scroll_bg.mat.meta | 16 + .../Materials/PlatformUI/Slider_Platform.mat | 66 + .../PlatformUI/Slider_Platform.mat.meta | 17 + .../Materials/ScaleBasedTargetOutline.mat | 36 + .../ScaleBasedTargetOutline.mat.meta | 16 + .../Assets/Materials/ScrollBarButton.mat | 74 + .../Assets/Materials/ScrollBarButton.mat.meta | 16 + .../Assets/Materials/ScrollBarSlider.mat | 57 + .../Assets/Materials/ScrollBarSlider.mat.meta | 16 + .../Assets/Materials/SimplePBRMaterial.mat | 72 + .../Materials/SimplePBRMaterial.mat.meta | 16 + .../SliderMat/PinchButtonDarkDefault.mat | 131 + .../SliderMat/PinchButtonDarkDefault.mat.meta | 16 + .../SliderMat/PinchButtonOnSelect.mat | 131 + .../SliderMat/PinchButtonOnSelect.mat.meta | 16 + .../Assets/Materials/SliderMat/SliderMat.mat | 143 + .../Materials/SliderMat/SliderMat.mat.meta | 16 + .../SliderMat/TargetOutlineMaterial.mat | 65 + .../SliderMat/TargetOutlineMaterial.mat.meta | 16 + .../Assets/Materials/SpritePreset.mat | 73 + .../Assets/Materials/SpritePreset.mat.meta | 16 + .../Materials/TargetOutlineMaterial.mat | 65 + .../Materials/TargetOutlineMaterial.mat.meta | 16 + .../Assets/Materials/Text3DDefault.mat | 178 + .../Assets/Materials/Text3DDefault.mat.meta | 16 + .../Assets/Meshes/BoxMesh.mesh | 3 + .../Assets/Meshes/BoxMesh.mesh.meta | 28 + .../Assets/Meshes/ButtonCapsuleMesh.mesh | 3 + .../Assets/Meshes/ButtonCapsuleMesh.mesh.meta | 27 + .../Assets/Meshes/ButtonSphereMesh.mesh | 3 + .../Assets/Meshes/ButtonSphereMesh.mesh.meta | 27 + .../Assets/Meshes/Check.mesh | 3 + .../Assets/Meshes/Check.mesh.meta | 28 + .../Assets/Meshes/LeftHandMesh.mesh | 3 + .../Assets/Meshes/LeftHandMesh.mesh.meta | 29 + .../Assets/Meshes/PlaneMesh.mesh | 3 + .../Assets/Meshes/PlaneMesh.mesh.meta | 29 + .../PlatformUI/PlatformCapsuleButton.mesh | 3 + .../PlatformCapsuleButton.mesh.meta | 29 + .../PlatformUI/PlatformSphereButton.mesh | 3 + .../PlatformUI/PlatformSphereButton.mesh.meta | 29 + .../Assets/Meshes/PlatformUI/RoundButton.mesh | 3 + .../Meshes/PlatformUI/RoundButton.mesh.meta | 22 + .../Meshes/PlatformUI/RoundButtonGlow.mesh | 3 + .../PlatformUI/RoundButtonGlow.mesh.meta | 22 + .../Meshes/PlatformUI/ScrollBarKnobMesh.mesh | 3 + .../PlatformUI/ScrollBarKnobMesh.mesh.meta | 22 + .../Meshes/PlatformUI/ScrollBarMesh.mesh | 3 + .../Meshes/PlatformUI/ScrollBarMesh.mesh.meta | 22 + .../Assets/Meshes/PlatformUI/Slider.mesh | 3 + .../Assets/Meshes/PlatformUI/Slider.mesh.meta | 22 + .../Assets/Meshes/RightHandMesh.mesh | 3 + .../Assets/Meshes/RightHandMesh.mesh.meta | 29 + .../Assets/Meshes/ScrollBarSlider.mesh | 3 + .../Assets/Meshes/ScrollBarSlider.mesh.meta | 28 + .../Assets/Meshes/SliderSphereKnob.mesh | 3 + .../Assets/Meshes/SliderSphereKnob.mesh.meta | 27 + .../Assets/Meshes/SliderTrack.mesh | 3 + .../Assets/Meshes/SliderTrack.mesh.meta | 28 + .../Assets/Meshes/SnapGhost_Mesh.mesh | 3 + .../Assets/Meshes/SnapGhost_Mesh.mesh.meta | 26 + .../Assets/Meshes/SphereMesh.mesh | 3 + .../Assets/Meshes/SphereMesh.mesh.meta | 28 + .../Assets/Meshes/Uncheck.mesh | 3 + .../Assets/Meshes/Uncheck.mesh.meta | 28 + .../FingerHighlight.ss_graph | 3 + .../FingerHighlight.ss_graph.meta | 16 + .../FingerTipGlow.ss_graph | 3 + .../FingerTipGlow.ss_graph.meta | 16 + .../HandOccluder.ss_graph | 3 + .../HandOccluder.ss_graph.meta | 16 + .../RadialGradientOcclusion.ss_graph | 3 + .../RadialGradientOcclusion.ss_graph.meta | 16 + .../Shaders/NormalBasedTargetOutline.ss_graph | 3 + .../NormalBasedTargetOutline.ss_graph.meta | 16 + .../PinchButton-ActiveOrInActive.ss_graph | 3 + ...PinchButton-ActiveOrInActive.ss_graph.meta | 16 + .../Assets/Shaders/PinchDarkRadial.ss_graph | 3 + .../Shaders/PinchDarkRadial.ss_graph.meta | 16 + .../Shaders/PlatformUI/ButtonHover.ss_graph | 3 + .../PlatformUI/ButtonHover.ss_graph.meta | 17 + .../Shaders/PlatformUI/ButtonIdle.ss_graph | 3 + .../PlatformUI/ButtonIdle.ss_graph.meta | 17 + .../Shaders/PlatformUI/ButtonPinched.ss_graph | 3 + .../PlatformUI/ButtonPinched.ss_graph.meta | 17 + .../PlatformUI/CapsuleButtonHover.ss_graph | 3 + .../CapsuleButtonHover.ss_graph.meta | 17 + .../PlatformUI/CapsuleButtonIdle.ss_graph | 3 + .../CapsuleButtonIdle.ss_graph.meta | 17 + .../PlatformUI/CapsuleButtonPinched.ss_graph | 3 + .../CapsuleButtonPinched.ss_graph.meta | 17 + .../PlatformUI/RoundButtonGlowHover.ss_graph | 3 + .../RoundButtonGlowHover.ss_graph.meta | 16 + .../PlatformUI/RoundButtonGlowIdle.ss_graph | 3 + .../RoundButtonGlowIdle.ss_graph.meta | 16 + .../RoundButtonGlowPinched.ss_graph | 3 + .../RoundButtonGlowPinched.ss_graph.meta | 16 + .../PlatformUI/RoundButtonHover.ss_graph | 3 + .../PlatformUI/RoundButtonHover.ss_graph.meta | 16 + .../PlatformUI/RoundButtonPinched.ss_graph | 3 + .../RoundButtonPinched.ss_graph.meta | 16 + .../PlatformUI/RoundButton_Idle.ss_graph | 3 + .../PlatformUI/RoundButton_Idle.ss_graph.meta | 16 + .../PlatformUI/ScrollBackground.ss_graph | 3 + .../PlatformUI/ScrollBackground.ss_graph.meta | 16 + .../PlatformUI/ScrollButtonHover.ss_graph | 3 + .../ScrollButtonHover.ss_graph.meta | 16 + .../PlatformUI/ScrollButtonIdle.ss_graph | 3 + .../PlatformUI/ScrollButtonIdle.ss_graph.meta | 16 + .../PlatformUI/ScrollButtonPinched.ss_graph | 3 + .../ScrollButtonPinched.ss_graph.meta | 16 + .../PlatformUI/Slider_Platform.ss_graph | 3 + .../PlatformUI/Slider_Platform.ss_graph.meta | 16 + .../StateButtonToggledHover.ss_graph | 3 + .../StateButtonToggledHover.ss_graph.meta | 17 + .../StateButtonToggledPinched.ss_graph | 3 + .../StateButtonToggledPinched.ss_graph.meta | 17 + .../Shaders/ScaleBasedTargetOutline.ss_graph | 3 + .../ScaleBasedTargetOutline.ss_graph.meta | 16 + .../Assets/Shaders/ScrollBarSlider.ss_graph | 3 + .../Shaders/ScrollBarSlider.ss_graph.meta | 16 + .../PinchButton-Default.ss_graph | 3 + .../PinchButton-Default.ss_graph.meta | 16 + .../Shaders/SliderShaders/Slider.ss_graph | 3 + .../SliderShaders/Slider.ss_graph.meta | 16 + .../Assets/Shaders/SpritePreset.ss_graph | 3 + .../Assets/Shaders/SpritePreset.ss_graph.meta | 16 + .../Assets/Shaders/TargetOutline.ss_graph | 3 + .../Shaders/TargetOutline.ss_graph.meta | 16 + .../Assets/Shaders/Text3DDefault.ss_graph | 3 + .../Shaders/Text3DDefault.ss_graph.meta | 16 + .../Assets/Shaders/ToggleOff.ss_graph | 3 + .../Assets/Shaders/ToggleOff.ss_graph.meta | 16 + .../Assets/Shaders/ToggleOn.ss_graph | 3 + .../Assets/Shaders/ToggleOn.ss_graph.meta | 16 + .../Assets/Shaders/ToggleOnSelect.ss_graph | 3 + .../Shaders/ToggleOnSelect.ss_graph.meta | 16 + .../Assets/Shaders/simple_pbr.ss_graph | 3 + .../Assets/Shaders/simple_pbr.ss_graph.meta | 16 + .../Assets/Textures/2DBitmojiAvatar.png | 3 + .../Assets/Textures/2DBitmojiAvatar.png.meta | 19 + .../Assets/Textures/Base.png | 3 + .../Assets/Textures/Base.png.meta | 19 + .../Textures/BaseHandVisualsTextures/Glow.png | 3 + .../BaseHandVisualsTextures/Glow.png.meta | 19 + .../handMeshNewMask.png | 3 + .../handMeshNewMask.png.meta | 19 + .../handMeshNewMaskColored.png | 3 + .../handMeshNewMaskColored.png.meta | 19 + .../handMeshPinchTexture.png | 3 + .../handMeshPinchTexture.png.meta | 19 + .../handMeshTapTexture.png | 3 + .../handMeshTapTexture.png.meta | 19 + .../occlusionGradient.png | 3 + .../occlusionGradient.png.meta | 19 + .../Assets/Textures/MaterialParams.png | 3 + .../Assets/Textures/MaterialParams.png.meta | 19 + .../Assets/Textures/Normal.png | 3 + .../Assets/Textures/Normal.png.meta | 19 + .../Assets/Textures/PlatformUI/ArrowDown.png | 3 + .../Textures/PlatformUI/ArrowDown.png.meta | 19 + .../Assets/Textures/PlatformUI/ArrowUp.png | 3 + .../Textures/PlatformUI/ArrowUp.png.meta | 18 + .../Assets/Textures/PlatformUI/Close.png | 3 + .../Assets/Textures/PlatformUI/Close.png.meta | 19 + .../Textures/PlatformUI/FollowIconBlack.png | 3 + .../PlatformUI/FollowIconBlack.png.meta | 19 + .../Textures/PlatformUI/FollowIconWhite.png | 3 + .../PlatformUI/FollowIconWhite.png.meta | 19 + .../Assets/Textures/PlatformUI/Image.png | 3 + .../Assets/Textures/PlatformUI/Image.png.meta | 19 + .../Mask_simple_reflection_ellipse.png | 3 + .../Mask_simple_reflection_ellipse.png.meta | 19 + .../Assets/Textures/PlatformUI/SimpleIdle.jpg | 3 + .../Textures/PlatformUI/SimpleIdle.jpg.meta | 19 + .../Textures/PlatformUI/SimpleIdle_05.jpg | 3 + .../PlatformUI/SimpleIdle_05.jpg.meta | 19 + .../Textures/PlatformUI/SimpleRefl_02.jpg | 3 + .../PlatformUI/SimpleRefl_02.jpg.meta | 19 + .../Textures/PlatformUI/SimpleRefl_05.jpg | 3 + .../PlatformUI/SimpleRefl_05.jpg.meta | 19 + .../Textures/PlatformUI/SimpleRefl_06.jpg | 3 + .../PlatformUI/SimpleRefl_06.jpg.meta | 19 + .../Assets/Textures/PlatformUI/UI_glow.jpg | 3 + .../Textures/PlatformUI/UI_glow.jpg.meta | 19 + .../Assets/Textures/Rectangle-Active.png | 3 + .../Assets/Textures/Rectangle-Active.png.meta | 19 + .../Assets/Textures/Rectangle-Inactive.png | 3 + .../Textures/Rectangle-Inactive.png.meta | 19 + .../Assets/Textures/Rectangle.png | 3 + .../Assets/Textures/Rectangle.png.meta | 19 + .../Textures/SIKContainerExampleImage.jpg | 3 + .../SIKContainerExampleImage.jpg.meta | 19 + .../Assets/Textures/SIKLogo.png | 3 + .../Assets/Textures/SIKLogo.png.meta | 19 + .../Assets/Textures/ScrollBarRectangle.png | 3 + .../Textures/ScrollBarRectangle.png.meta | 19 + .../Components/Helpers/ButtonFeedback.ts | 544 + .../Components/Helpers/ButtonFeedback.ts.meta | 105 + .../Helpers/CapsuleMeshCustomizer.ts | 317 + .../Helpers/CapsuleMeshCustomizer.ts.meta | 54 + .../Helpers/InteractableAudioFeedback.ts | 151 + .../Helpers/InteractableAudioFeedback.ts.meta | 45 + .../Helpers/InteractableColorFeedback.ts | 96 + .../Helpers/InteractableColorFeedback.ts.meta | 52 + .../Helpers/InteractableOutlineFeedback.ts | 158 + .../InteractableOutlineFeedback.ts.meta | 52 + .../Helpers/InteractableSquishFeedback.ts | 105 + .../InteractableSquishFeedback.ts.meta | 45 + .../Helpers/ScreenTransformAdapter.ts | 47 + .../Helpers/ScreenTransformAdapter.ts.meta | 40 + .../Components/Helpers/ScrollBarFeedback.ts | 137 + .../Helpers/ScrollBarFeedback.ts.meta | 38 + .../Components/Helpers/SliderFeedback.ts | 95 + .../Components/Helpers/SliderFeedback.ts.meta | 42 + .../Components/Helpers/ToggleFeedback.ts | 146 + .../Components/Helpers/ToggleFeedback.ts.meta | 55 + .../Interaction/Billboard/Billboard.ts | 148 + .../Interaction/Billboard/Billboard.ts.meta | 56 + .../Billboard/BillboardController.ts | 254 + .../Billboard/BillboardController.ts.meta | 40 + .../Billboard/BillboardRotationCalculator.ts | 179 + .../BillboardRotationCalculator.ts.meta | 40 + .../Interaction/HandVisual/GlowEffectView.ts | 657 + .../HandVisual/GlowEffectView.ts.meta | 40 + .../HandVisual/GlowEffectViewModel.ts | 352 + .../HandVisual/GlowEffectViewModel.ts.meta | 40 + .../Interaction/HandVisual/HandVisual.ts | 466 + .../Interaction/HandVisual/HandVisual.ts.meta | 190 + .../HandVisual/RadialOcclusionView.ts | 299 + .../HandVisual/RadialOcclusionView.ts.meta | 40 + .../Interaction/Headlock/Headlock.ts | 365 + .../Interaction/Headlock/Headlock.ts.meta | 84 + .../Headlock/HeadlockController.ts | 315 + .../Headlock/HeadlockController.ts.meta | 40 + .../Headlock/HeadlockRotationCalculator.ts | 210 + .../HeadlockRotationCalculator.ts.meta | 40 + .../Headlock/HeadlockTranslationCalculator.ts | 144 + .../HeadlockTranslationCalculator.ts.meta | 40 + .../Interaction/Interactable/Interactable.ts | 359 + .../Interactable/Interactable.ts.meta | 48 + .../InteractableManipulation.ts | 1275 ++ .../InteractableManipulation.ts.meta | 101 + .../InteractionPlane/InteractionPlane.ts | 213 + .../InteractionPlane/InteractionPlane.ts.meta | 47 + .../InteractorCursor/CircleVisual.ts | 408 + .../InteractorCursor/CircleVisual.ts.meta | 40 + .../Interaction/InteractorCursor/Cursor.mat | 279 + .../InteractorCursor/Cursor.mat.meta | 16 + .../InteractorCursor/CursorController.ts | 68 + .../InteractorCursor/CursorController.ts.meta | 39 + .../InteractorCursor/CursorMat.ss_graph | 3 + .../InteractorCursor/CursorMat.ss_graph.meta | 16 + .../InteractorCursor/CursorViewModel.ts | 688 + .../InteractorCursor/CursorViewModel.ts.meta | 40 + .../InteractorCursor/InteractorCursor.ts | 353 + .../InteractorCursor/InteractorCursor.ts.meta | 45 + .../ManipulateLineMat.ss_graph | 3 + .../ManipulateLineMat.ss_graph.meta | 16 + .../ManipulateLineMaterial.mat | 93 + .../ManipulateLineMaterial.mat.meta | 16 + .../Interaction/InteractorCursor/Plane.mesh | 3 + .../InteractorCursor/Plane.mesh.meta | 29 + .../Interaction/InteractorCursor/disabled.png | 3 + .../InteractorCursor/disabled.png.meta | 19 + .../Interaction/InteractorCursor/scale-tl.png | 3 + .../InteractorCursor/scale-tl.png.meta | 19 + .../Interaction/InteractorCursor/scale-tr.png | 3 + .../InteractorCursor/scale-tr.png.meta | 19 + .../InteractorCursor/translate.png | 3 + .../InteractorCursor/translate.png.meta | 19 + .../InteractorLineMat.ss_graph | 3 + .../InteractorLineMat.ss_graph.meta | 16 + .../InteractorLineMaterial.mat | 93 + .../InteractorLineMaterial.mat.meta | 16 + .../InteractorLineRenderer.ts | 42 + .../InteractorLineRenderer.ts.meta | 40 + .../InteractorLineVisual.ts | 302 + .../InteractorLineVisual.ts.meta | 60 + .../UI/ContainerFrame/ContainerFrame.ts | 1740 ++ .../UI/ContainerFrame/ContainerFrame.ts.meta | 124 + .../Materials/FrameMaterial.mat | 288 + .../Materials/FrameMaterial.mat.meta | 16 + .../Materials/FrameMaterial.ss_graph | 3 + .../Materials/FrameMaterial.ss_graph.meta | 16 + .../Materials/Ghost Material.mat | 114 + .../Materials/Ghost Material.mat.meta | 16 + .../Materials/Ghost Material.ss_graph | 3 + .../Materials/Ghost Material.ss_graph.meta | 16 + .../UI/ContainerFrame/Materials/Image.mat | 73 + .../ContainerFrame/Materials/Image.mat.meta | 16 + .../UI/ContainerFrame/Materials/Label.mat | 73 + .../ContainerFrame/Materials/Label.mat.meta | 16 + .../Materials/container-button.mat | 171 + .../Materials/container-button.mat.meta | 16 + .../Materials/container-button.ss_graph | 3 + .../Materials/container-button.ss_graph.meta | 16 + .../UI/ContainerFrame/Materials/flat.ss_graph | 3 + .../Materials/flat.ss_graph.meta | 16 + .../UI/ContainerFrame/Meshes/Frame.mesh | 3 + .../UI/ContainerFrame/Meshes/Frame.mesh.meta | 28 + .../UI/ContainerFrame/Meshes/Frame_High.mesh | 3 + .../Meshes/Frame_High.mesh.meta | 28 + .../UI/ContainerFrame/Meshes/Frame_Mid.mesh | 3 + .../ContainerFrame/Meshes/Frame_Mid.mesh.meta | 28 + .../ContainerFrame/Meshes/SphereButton.mesh | 3 + .../Meshes/SphereButton.mesh.meta | 29 + .../Meshes/SysSettings_settings_button.mesh | 3 + .../SysSettings_settings_button.mesh.meta | 22 + .../Meshes/pinch-depth-button.mesh | 3 + .../Meshes/pinch-depth-button.mesh.meta | 23 + .../ContainerFrame/Prefabs/FramePrefab.prefab | 60 + .../Prefabs/FramePrefab.prefab.meta | 82 + .../Prefabs/container-button.prefab | 85 + .../Prefabs/container-button.prefab.meta | 108 + .../Components/UI/ContainerFrame/README.md | 93 + .../UI/ContainerFrame/README.md.meta | 16 + .../ContainerFrame/Textures/close-icon-1.png | 3 + .../Textures/close-icon-1.png.meta | 19 + .../UI/ContainerFrame/Textures/close-icon.png | 3 + .../Textures/close-icon.png.meta | 19 + .../Textures/container-button-matcap.jpg | 3 + .../Textures/container-button-matcap.jpg.meta | 19 + .../ContainerFrame/Textures/follow-black.png | 3 + .../Textures/follow-black.png.meta | 19 + .../Textures/follow-white-shadow.png | 3 + .../Textures/follow-white-shadow.png.meta | 19 + .../ContainerFrame/Textures/follow-white.png | 3 + .../Textures/follow-white.png.meta | 19 + .../Textures/reflection-map-1-cube.png | 3 + .../Textures/reflection-map-1-cube.png.meta | 18 + .../Textures/reflection-map-1.jpg | 3 + .../Textures/reflection-map-1.jpg.meta | 18 + .../Textures/soft-reflection.jpg | 3 + .../Textures/soft-reflection.jpg.meta | 19 + .../UI/ContainerFrame/container-ui.png | 3 + .../UI/ContainerFrame/container-ui.png.meta | 19 + .../ContainerFrame/modules/CursorHandler.ts | 149 + .../modules/CursorHandler.ts.meta | 39 + .../modules/ForceContainerParent.ts | 28 + .../modules/ForceContainerParent.ts.meta | 39 + .../modules/FrameInputHandler.ts | 347 + .../modules/FrameInputHandler.ts.meta | 39 + .../ContainerFrame/modules/HoverBehavior.ts | 194 + .../modules/HoverBehavior.ts.meta | 39 + .../modules/LabeledPinchButton.ts | 155 + .../modules/LabeledPinchButton.ts.meta | 39 + .../SimpleLODRenderMeshVisual.ts | 103 + .../SimpleLODRenderMeshVisual.ts.meta | 46 + .../UI/ContainerFrame/modules/SmoothFollow.ts | 211 + .../modules/SmoothFollow.ts.meta | 39 + .../modules/SnappableBehavior.ts | 892 + .../modules/SnappableBehavior.ts.meta | 39 + .../Components/UI/PinchButton/PinchButton.ts | 70 + .../UI/PinchButton/PinchButton.ts.meta | 48 + .../Components/UI/ScrollBar/ScrollBar.ts | 332 + .../Components/UI/ScrollBar/ScrollBar.ts.meta | 42 + .../UI/ScrollView/GridContentCreator.ts | 22 + .../UI/ScrollView/GridContentCreator.ts.meta | 42 + .../Components/UI/ScrollView/ScrollArea.ts | 347 + .../UI/ScrollView/ScrollArea.ts.meta | 40 + .../UI/ScrollView/ScrollProvider.ts | 702 + .../UI/ScrollView/ScrollProvider.ts.meta | 40 + .../Components/UI/ScrollView/ScrollView.ts | 420 + .../UI/ScrollView/ScrollView.ts.meta | 57 + .../boundariesProvider/BoundariesProvider.ts | 16 + .../BoundariesProvider.ts.meta | 40 + .../BufferedBoundariesProvider.ts | 46 + .../BufferedBoundariesProvider.ts.meta | 40 + .../SceneObjectBoundariesProvider.ts | 106 + .../SceneObjectBoundariesProvider.ts.meta | 40 + .../ScreenTransformBoundariesProvider.ts | 14 + .../ScreenTransformBoundariesProvider.ts.meta | 40 + .../VisualBoundariesProvider.ts | 62 + .../VisualBoundariesProvider.ts.meta | 40 + .../Components/UI/Slider/Slider.ts | 793 + .../Components/UI/Slider/Slider.ts.meta | 131 + .../UI/ToggleButton/ToggleButton.ts | 148 + .../UI/ToggleButton/ToggleButton.ts.meta | 57 + .../ConfigurationValidator.ts | 22 + .../ConfigurationValidator.ts.meta | 39 + .../Core/HandInteractor/HandInteractor.ts | 587 + .../HandInteractor/HandInteractor.ts.meta | 94 + .../InteractionManager/EventDispatcher.ts | 175 + .../EventDispatcher.ts.meta | 40 + .../InteractionManager/InteractionManager.ts | 650 + .../InteractionManager.ts.meta | 40 + .../Core/Interactor/BaseInteractor.ts | 380 + .../Core/Interactor/BaseInteractor.ts.meta | 40 + .../Core/Interactor/ColliderTargetProvider.ts | 202 + .../Interactor/ColliderTargetProvider.ts.meta | 40 + .../Core/Interactor/DirectTargetProvider.ts | 140 + .../Interactor/DirectTargetProvider.ts.meta | 40 + .../Core/Interactor/DragProvider.ts | 92 + .../Core/Interactor/DragProvider.ts.meta | 40 + .../Core/Interactor/HandRayProvider.ts | 110 + .../Core/Interactor/HandRayProvider.ts.meta | 40 + .../Core/Interactor/IndirectTargetProvider.ts | 183 + .../Interactor/IndirectTargetProvider.ts.meta | 40 + .../Core/Interactor/Interactor.ts | 128 + .../Core/Interactor/Interactor.ts.meta | 40 + .../Core/Interactor/InteractorEvent.ts | 68 + .../Core/Interactor/InteractorEvent.ts.meta | 40 + .../Core/Interactor/MobileRayProvider.ts | 48 + .../Core/Interactor/MobileRayProvider.ts.meta | 40 + .../Core/Interactor/MouseTargetProvider.ts | 202 + .../Interactor/MouseTargetProvider.ts.meta | 39 + .../Core/Interactor/PokeTargetProvider.ts | 209 + .../Interactor/PokeTargetProvider.ts.meta | 40 + .../Core/Interactor/RayProvider.ts | 27 + .../Core/Interactor/RayProvider.ts.meta | 40 + .../Core/Interactor/TouchRayProvider.ts | 80 + .../Core/Interactor/TouchRayProvider.ts.meta | 40 + .../Interactor/raycastAlgorithms/AxisAngle.ts | 46 + .../raycastAlgorithms/AxisAngle.ts.meta | 40 + .../ContinousIrInteractionTransition.ts | 117 + .../ContinousIrInteractionTransition.ts.meta | 40 + .../IrInteractionTransition.ts | 33 + .../IrInteractionTransition.ts.meta | 40 + .../raycastAlgorithms/PinchJumpSuppressor.ts | 720 + .../PinchJumpSuppressor.ts.meta | 40 + .../raycastAlgorithms/RaycastAnchorHead.ts | 658 + .../RaycastAnchorHead.ts.meta | 40 + .../RaycastAnchorVariableShoulder.ts | 130 + .../RaycastAnchorVariableShoulder.ts.meta | 40 + .../raycastAlgorithms/RaycastBase.ts | 329 + .../raycastAlgorithms/RaycastBase.ts.meta | 40 + .../RaycastLegacySingleCamera.ts | 45 + .../RaycastLegacySingleCamera.ts.meta | 40 + .../raycastAlgorithms/RaycastProxy.ts | 33 + .../raycastAlgorithms/RaycastProxy.ts.meta | 40 + .../RgbIrTransitionJumpSuppressor.ts | 507 + .../RgbIrTransitionJumpSuppressor.ts.meta | 40 + .../SwitchIrInteractionTransition.ts | 189 + .../SwitchIrInteractionTransition.ts.meta | 40 + .../raycastAlgorithms/TimeDataContainer.ts | 153 + .../TimeDataContainer.ts.meta | 40 + .../raycastAlgorithms/TimeScalarContainer.ts | 50 + .../TimeScalarContainer.ts.meta | 40 + .../raycastAlgorithms/TimedVec2Container.ts | 50 + .../TimedVec2Container.ts.meta | 40 + .../raycastAlgorithms/TimedVec3Container.ts | 59 + .../TimedVec3Container.ts.meta | 39 + .../LogLevelConfiguration.ts | 19 + .../LogLevelConfiguration.ts.meta | 38 + .../SIKLogLevelConfiguration.ts | 35 + .../SIKLogLevelConfiguration.ts.meta | 41 + .../Core/MobileInteractor/MobileInteractor.ts | 410 + .../MobileInteractor/MobileInteractor.ts.meta | 82 + .../Core/MouseInteractor/MouseInteractor.ts | 189 + .../MouseInteractor/MouseInteractor.ts.meta | 76 + .../Decorators/Singleton.ts | 30 + .../Decorators/Singleton.ts.meta | 40 + .../Materials/Icons/ModernBodyTube_icon.mat | 73 + .../Icons/ModernBodyTube_icon.mat.meta | 16 + .../Materials/Icons/ModernFins_icon.mat | 73 + .../Materials/Icons/ModernFins_icon.mat.meta | 16 + .../Materials/Icons/ModernNoseCone_icon.mat | 73 + .../Icons/ModernNoseCone_icon.mat.meta | 16 + .../Materials/Icons/SleekBodyTube_icon.mat | 73 + .../Icons/SleekBodyTube_icon.mat.meta | 16 + .../Materials/Icons/SleekFins_icon.mat | 73 + .../Materials/Icons/SleekFins_icon.mat.meta | 16 + .../Materials/Icons/SleekNoseCone_icon.mat | 73 + .../Icons/SleekNoseCone_icon.mat.meta | 16 + .../Materials/Icons/SpaceAgeBodyTube_icon.mat | 73 + .../Icons/SpaceAgeBodyTube_icon.mat.meta | 16 + .../Materials/Icons/SpaceAgeFins_icon.mat | 73 + .../Icons/SpaceAgeFins_icon.mat.meta | 16 + .../Materials/Icons/SpaceAgeNoseCone_icon.mat | 73 + .../Icons/SpaceAgeNoseCone_icon.mat.meta | 16 + .../Materials/Objects/SIK_Meteor.mat | 54 + .../Materials/Objects/SIK_Meteor.mat.meta | 16 + .../Materials/Objects/SIK_Planet.mat | 243 + .../Materials/Objects/SIK_Planet.mat.meta | 16 + .../Materials/Objects/SIK_Planet_rings.mat | 168 + .../Objects/SIK_Planet_rings.mat.meta | 16 + .../Materials/Objects/SIK_Platform.mat | 108 + .../Materials/Objects/SIK_Platform.mat.meta | 16 + .../Materials/Objects/SIK_Rocket_fire.mat | 120 + .../Objects/SIK_Rocket_fire.mat.meta | 16 + .../Materials/Objects/SIK_Rocket_glass.mat | 167 + .../Objects/SIK_Rocket_glass.mat.meta | 16 + .../Objects/SIK_Rocket_glass_satellite.mat | 124 + .../SIK_Rocket_glass_satellite.mat.meta | 16 + .../Materials/Objects/SIK_Rocket_grey.mat | 120 + .../Objects/SIK_Rocket_grey.mat.meta | 16 + .../Materials/Objects/SIK_Rocket_metal.mat | 120 + .../Objects/SIK_Rocket_metal.mat.meta | 16 + .../Objects/SIK_Rocket_metal_red.mat | 120 + .../Objects/SIK_Rocket_metal_red.mat.meta | 16 + .../Objects/SIK_Rocket_plastic_01.mat | 120 + .../Objects/SIK_Rocket_plastic_01.mat.meta | 16 + .../Objects/SIK_Rocket_plastic_02.mat | 120 + .../Objects/SIK_Rocket_plastic_02.mat.meta | 16 + .../Objects/SIK_Rocket_plastic_03.mat | 120 + .../Objects/SIK_Rocket_plastic_03.mat.meta | 16 + .../Objects/SIK_Rocket_plastic_03_logo.mat | 159 + .../SIK_Rocket_plastic_03_logo.mat.meta | 16 + .../Materials/Objects/SIK_Rocket_white.mat | 120 + .../Objects/SIK_Rocket_white.mat.meta | 16 + .../Objects/SIK_Rocket_white_logo.mat | 159 + .../Objects/SIK_Rocket_white_logo.mat.meta | 16 + .../Materials/Objects/SIK_Satellite_blue.mat | 120 + .../Objects/SIK_Satellite_blue.mat.meta | 16 + .../Examples/RocketWorkshop/Meshes/Bases.fbx | 3 + .../RocketWorkshop/Meshes/Bases.fbx.meta | 190 + .../RocketWorkshop/Meshes/SIK_Rockets.fbx | 3 + .../Meshes/SIK_Rockets.fbx.meta | 945 ++ .../Prefabs/Parts/Modern Body Tube.prefab | 41 + .../Parts/Modern Body Tube.prefab.meta | 62 + .../Prefabs/Parts/Modern Fins.prefab | 654 + .../Prefabs/Parts/Modern Fins.prefab.meta | 712 + .../Prefabs/Parts/Modern Nose Cone.prefab | 83 + .../Parts/Modern Nose Cone.prefab.meta | 106 + .../Prefabs/Parts/Sleek Body Tube.prefab | 41 + .../Prefabs/Parts/Sleek Body Tube.prefab.meta | 62 + .../Prefabs/Parts/Sleek Fins.prefab | 442 + .../Prefabs/Parts/Sleek Fins.prefab.meta | 488 + .../Prefabs/Parts/Sleek Nose Cone.prefab | 41 + .../Prefabs/Parts/Sleek Nose Cone.prefab.meta | 62 + .../Prefabs/Parts/Space Age Body Tube.prefab | 83 + .../Parts/Space Age Body Tube.prefab.meta | 106 + .../Prefabs/Parts/Space Age Fins.prefab | 249 + .../Prefabs/Parts/Space Age Fins.prefab.meta | 282 + .../Prefabs/Parts/Space Age Nose Cone.prefab | 62 + .../Parts/Space Age Nose Cone.prefab.meta | 84 + .../Body Tube Category.prefab | 180 + .../Body Tube Category.prefab.meta | 204 + .../ScrollViewListItems/Fins Category.prefab | 180 + .../Fins Category.prefab.meta | 204 + .../Modern Body Tube.prefab | 786 + .../Modern Body Tube.prefab.meta | 833 + .../ScrollViewListItems/Modern Fins.prefab | 786 + .../Modern Fins.prefab.meta | 833 + .../Modern Nose Cone.prefab | 786 + .../Modern Nose Cone.prefab.meta | 833 + .../Nose Cone Category.prefab | 180 + .../Nose Cone Category.prefab.meta | 204 + .../Sleek Body Tube.prefab | 786 + .../Sleek Body Tube.prefab.meta | 833 + .../ScrollViewListItems/Sleek Fins.prefab | 786 + .../Sleek Fins.prefab.meta | 833 + .../Sleek Nose Cone.prefab | 786 + .../Sleek Nose Cone.prefab.meta | 833 + .../Space Age Body Tube.prefab | 786 + .../Space Age Body Tube.prefab.meta | 833 + .../ScrollViewListItems/Space Age Fins.prefab | 786 + .../Space Age Fins.prefab.meta | 833 + .../Space Age Nose Cone.prefab | 786 + .../Space Age Nose Cone.prefab.meta | 833 + .../RocketWorkshop/Scripts/ExhaustControls.ts | 88 + .../Scripts/ExhaustControls.ts.meta | 43 + .../Scripts/RocketConfigurator.ts | 146 + .../Scripts/RocketConfigurator.ts.meta | 42 + .../Scripts/RocketGridContentCreator.ts | 44 + .../Scripts/RocketGridContentCreator.ts.meta | 42 + .../Scripts/RocketLaunchControl.ts | 288 + .../Scripts/RocketLaunchControl.ts.meta | 68 + .../Scripts/RocketScrollViewItem.ts | 67 + .../Scripts/RocketScrollViewItem.ts.meta | 41 + .../RocketWorkshop/Shaders/Glass.ss_graph | 3 + .../Shaders/Glass.ss_graph.meta | 16 + .../RocketWorkshop/Shaders/Meteor.ss_graph | 3 + .../Shaders/Meteor.ss_graph.meta | 16 + .../RocketWorkshop/Shaders/Planet.ss_graph | 3 + .../Shaders/Planet.ss_graph.meta | 16 + .../Shaders/Planet_rings.ss_graph | 3 + .../Shaders/Planet_rings.ss_graph.meta | 16 + .../RocketWorkshop/Shaders/Platform.ss_graph | 3 + .../Shaders/Platform.ss_graph.meta | 16 + .../RocketWorkshop/Shaders/Rocket.ss_graph | 3 + .../Shaders/Rocket.ss_graph.meta | 16 + .../RocketWorkshop/Textures/A-icon.png | 3 + .../RocketWorkshop/Textures/A-icon.png.meta | 19 + .../RocketWorkshop/Textures/B-icon.png | 3 + .../RocketWorkshop/Textures/B-icon.png.meta | 19 + .../RocketWorkshop/Textures/C-icon.png | 3 + .../RocketWorkshop/Textures/C-icon.png.meta | 19 + .../RocketWorkshop/Textures/SIK_Meteor_bc.png | 3 + .../Textures/SIK_Meteor_bc.png.meta | 18 + .../Textures/SIK_Platforms_AO.jpg | 3 + .../Textures/SIK_Platforms_AO.jpg.meta | 18 + .../Textures/SIK_Rockets_AO.jpg | 3 + .../Textures/SIK_Rockets_AO.jpg.meta | 18 + .../RocketWorkshop/Textures/SIK_Snap_logo.png | 3 + .../Textures/SIK_Snap_logo.png.meta | 18 + .../Textures/SIK_Space_logo_TEMP.png | 3 + .../Textures/SIK_Space_logo_TEMP.png.meta | 18 + .../body-tube_rocket-A.png | 3 + .../body-tube_rocket-A.png.meta | 19 + .../body-tube_rocket-B.png | 3 + .../body-tube_rocket-B.png.meta | 19 + .../body-tube_rocket-C.png | 3 + .../body-tube_rocket-C.png.meta | 19 + .../ScrollViewThumbnails/fins_rocket-A.png | 3 + .../fins_rocket-A.png.meta | 19 + .../ScrollViewThumbnails/fins_rocket-B.png | 3 + .../fins_rocket-B.png.meta | 19 + .../ScrollViewThumbnails/fins_rocket-C.png | 3 + .../fins_rocket-C.png.meta | 19 + .../nose-cone_rocket-A.png | 3 + .../nose-cone_rocket-A.png.meta | 19 + .../nose-cone_rocket-B.png | 3 + .../nose-cone_rocket-B.png.meta | 19 + .../nose-cone_rocket-C.png | 3 + .../nose-cone_rocket-C.png.meta | 19 + .../Bones_clouds_ANIM_mat_landing.mat | 157 + .../Bones_clouds_ANIM_mat_landing.mat.meta | 16 + .../Bones_clouds_material_landing_.ss_graph | 3 + ...nes_clouds_material_landing_.ss_graph.meta | 16 + .../CloudsLanding.animationAsset | 7245 ++++++++ .../CloudsLanding.animationAsset.meta | 16 + .../VFX/Clouds Landing/line1.mesh | 3 + .../VFX/Clouds Landing/line1.mesh.meta | 22 + .../Bones_clouds_ANIM_mat_takeoff.mat | 163 + .../Bones_clouds_ANIM_mat_takeoff.mat.meta | 16 + .../Bones_clouds_material_start_.ss_graph | 3 + ...Bones_clouds_material_start_.ss_graph.meta | 16 + .../Clouds Start/CloudsStart.animationAsset | 10515 ++++++++++++ .../CloudsStart.animationAsset.meta | 16 + .../VFX/Clouds Start/line1.mesh | 3 + .../VFX/Clouds Start/line1.mesh.meta | 24 + .../Custom Mesh Emitter.prefab | 34 + .../Custom Mesh Emitter.prefab.meta | 55 + .../Rocket_clouds_emit.vfxgraph | 3 + .../Rocket_clouds_emit.vfxgraph.meta | 43 + .../VFX/Custom Mesh Emitter/cl_goup.mesh | 3 + .../VFX/Custom Mesh Emitter/cl_goup.mesh.meta | 22 + .../RocketWorkshop/VFX/Exhaust/Fire.ss_graph | 3 + .../VFX/Exhaust/Fire.ss_graph.meta | 16 + .../VFX/Exhaust/Fire_ANIM_mat.mat | 208 + .../VFX/Exhaust/Fire_ANIM_mat.mat.meta | 16 + .../VFX/Exhaust/Glow_ANIM_mat.mat | 127 + .../VFX/Exhaust/Glow_ANIM_mat.mat.meta | 16 + .../VFX/Exhaust/Glow_MAt.ss_graph | 3 + .../VFX/Exhaust/Glow_MAt.ss_graph.meta | 16 + .../VFX/Exhaust/blendshapes1.mesh | 3 + .../VFX/Exhaust/blendshapes1.mesh.meta | 26 + .../RocketWorkshop/VFX/Exhaust/dots.png | 3 + .../RocketWorkshop/VFX/Exhaust/dots.png.meta | 19 + .../VFX/Exhaust/engine_exhaust.prefab | 102 + .../VFX/Exhaust/engine_exhaust.prefab.meta | 127 + .../VFX/Exhaust/glow_plane.mesh | 3 + .../VFX/Exhaust/glow_plane.mesh.meta | 22 + .../VFX/Radial Heat/Noise00.png | 3 + .../VFX/Radial Heat/Noise00.png.meta | 19 + .../RocketWorkshop/VFX/Radial Heat/Plane.mesh | 3 + .../VFX/Radial Heat/Plane.mesh.meta | 22 + .../VFX/Radial Heat/RadialHeat_ANIM_mat.mat | 139 + .../Radial Heat/RadialHeat_ANIM_mat.mat.meta | 16 + .../VFX/Radial Heat/Radial_heat.ss_graph | 3 + .../VFX/Radial Heat/Radial_heat.ss_graph.meta | 16 + .../Base Layer Rocket 1.animationAsset | 1218 ++ .../Base Layer Rocket 1.animationAsset.meta | 16 + .../Base Layer Rocket 2.animationAsset | 1394 ++ .../Base Layer Rocket 2.animationAsset.meta | 16 + .../Base Layer Rocket 3.animationAsset | 1062 ++ .../Base Layer Rocket 3.animationAsset.meta | 16 + .../VFX/Rocket Sparks/Rocket_sparks.mesh | 3 + .../VFX/Rocket Sparks/Rocket_sparks.mesh.meta | 21 + .../VFX/Rocket Sparks/Top_Rocket_Trail.mat | 133 + .../Rocket Sparks/Top_Rocket_Trail.mat.meta | 16 + .../Rocket Sparks/Top_Rocket_Trail.ss_graph | 3 + .../Top_Rocket_Trail.ss_graph.meta | 16 + .../VFX/Rocket Sparks/stripe_noise 2.png | 3 + .../VFX/Rocket Sparks/stripe_noise 2.png.meta | 19 + .../Examples/SIK Examples.prefab | 10663 ++++++++++++ .../Examples/SIK Examples.prefab.meta | 11098 ++++++++++++ .../Prefabs/ScrollViewListItem.prefab | 721 + .../Prefabs/ScrollViewListItem.prefab.meta | 766 + .../Prefabs/SpectaclesInteractionKit.prefab | 2274 +++ .../SpectaclesInteractionKit.prefab.meta | 2420 +++ .../CameraProvider/ARCameraFinderProvider.ts | 50 + .../ARCameraFinderProvider.ts.meta | 39 + .../BaseCameraFinderProvider.ts | 75 + .../BaseCameraFinderProvider.ts.meta | 39 + .../CameraProvider/BaseWorldCameraProvider.ts | 131 + .../BaseWorldCameraProvider.ts.meta | 40 + .../CameraProvider/CameraProvider.ts | 105 + .../CameraProvider/CameraProvider.ts.meta | 40 + .../WorldCameraFinderProvider.ts | 23 + .../WorldCameraFinderProvider.ts.meta | 40 + .../CursorControllerProvider.ts | 80 + .../CursorControllerProvider.ts.meta | 39 + .../Providers/HandInputData/BaseHand.ts | 437 + .../Providers/HandInputData/BaseHand.ts.meta | 40 + .../DefaultHandTrackingAssetProvider.ts | 30 + .../DefaultHandTrackingAssetProvider.ts.meta | 40 + .../GestureProvider/GestureModuleProvider.ts | 41 + .../GestureModuleProvider.ts.meta | 40 + .../MotionControllerProvider.ts | 43 + .../MotionControllerProvider.ts.meta | 39 + .../PalmTapDetection/PalmTapDetector.ts | 55 + .../PalmTapDetection/PalmTapDetector.ts.meta | 39 + .../PalmTapDetectorStateMachine.ts | 80 + .../PalmTapDetectorStateMachine.ts.meta | 39 + .../GestureProvider/PalmTapDetectionEvent.ts | 11 + .../PalmTapDetectionEvent.ts.meta | 39 + .../GestureProvider/PalmTapEvent.ts | 7 + .../GestureProvider/PalmTapEvent.ts.meta | 39 + .../HciPinchDetectionStrategy.ts | 80 + .../HciPinchDetectionStrategy.ts.meta | 40 + .../HeuristicPinchDetectionStrategy.ts | 128 + .../HeuristicPinchDetectionStrategy.ts.meta | 40 + .../PinchDetectionStrategy.ts | 21 + .../PinchDetectionStrategy.ts.meta | 40 + .../PinchDetection/PinchDetector.ts | 120 + .../PinchDetection/PinchDetector.ts.meta | 40 + .../PinchDetectorStateMachine.ts | 95 + .../PinchDetectorStateMachine.ts.meta | 40 + .../GestureProvider/PinchEventType.ts | 15 + .../GestureProvider/PinchEventType.ts.meta | 40 + .../Providers/HandInputData/HandInputData.ts | 76 + .../HandInputData/HandInputData.ts.meta | 40 + .../HandTrackingAssetProvider.ts | 13 + .../HandTrackingAssetProvider.ts.meta | 40 + .../Providers/HandInputData/HandType.ts | 5 + .../Providers/HandInputData/HandType.ts.meta | 40 + .../Providers/HandInputData/HandVisuals.ts | 154 + .../HandInputData/HandVisuals.ts.meta | 40 + .../Providers/HandInputData/Joints.ts | 135 + .../Providers/HandInputData/Joints.ts.meta | 40 + .../Providers/HandInputData/Keypoint.ts | 125 + .../Providers/HandInputData/Keypoint.ts.meta | 40 + .../Providers/HandInputData/LandmarkNames.ts | 147 + .../HandInputData/LandmarkNames.ts.meta | 40 + .../LeftHandAsset.handTracking3D | 57 + .../LeftHandAsset.handTracking3D.meta | 16 + .../RightHandAsset.handTracking3D | 57 + .../RightHandAsset.handTracking3D.meta | 16 + .../Providers/HandInputData/TrackedHand.ts | 809 + .../HandInputData/TrackedHand.ts.meta | 40 + .../InteractionConfigurationProvider.ts | 86 + .../InteractionConfigurationProvider.ts.meta | 40 + .../LogLevelProvider.ts | 37 + .../LogLevelProvider.ts.meta | 39 + .../SIKLogLevelProvider.ts | 14 + .../SIKLogLevelProvider.ts.meta | 39 + .../MobileInputData/MobileInputData.ts | 191 + .../MobileInputData/MobileInputData.ts.meta | 40 + .../TargetProvider/TargetProvider.ts | 190 + .../TargetProvider/TargetProvider.ts.meta | 40 + .../Providers/TargetProvider/TargetingData.ts | 10 + .../TargetProvider/TargetingData.ts.meta | 40 + .../Assets/SpectaclesInteractionKit/SIK.ts | 39 + .../SpectaclesInteractionKit/SIK.ts.meta | 40 + .../Utils/BistableThreshold.ts | 119 + .../Utils/BistableThreshold.ts.meta | 40 + .../SpectaclesInteractionKit/Utils/Event.ts | 83 + .../Utils/Event.ts.meta | 40 + .../SpectaclesInteractionKit/Utils/Filter.ts | 20 + .../Utils/Filter.ts.meta | 40 + .../Utils/InputChecker.ts | 66 + .../Utils/InputChecker.ts.meta | 40 + .../Utils/InspectorCallbacks.ts | 21 + .../Utils/InspectorCallbacks.ts.meta | 40 + .../Utils/LensConfig.ts | 19 + .../Utils/LensConfig.ts.meta | 40 + .../Utils/LogLevel.ts | 10 + .../Utils/LogLevel.ts.meta | 39 + .../Utils/MovingAverageFilter.ts | 42 + .../Utils/MovingAverageFilter.ts.meta | 40 + .../Utils/NativeLogger.ts | 70 + .../Utils/NativeLogger.ts.meta | 40 + .../Utils/OneEuroFilter.ts | 519 + .../Utils/OneEuroFilter.ts.meta | 40 + .../Utils/ReplayEvent.ts | 41 + .../Utils/ReplayEvent.ts.meta | 40 + .../Utils/SafeReference.ts | 14 + .../Utils/SafeReference.ts.meta | 40 + .../Utils/SampleOps.ts | 94 + .../Utils/SampleOps.ts.meta | 40 + .../Utils/SceneObjectUtils.ts | 61 + .../Utils/SceneObjectUtils.ts.meta | 40 + .../Utils/SeededRandomNumberGenerator.ts | 183 + .../Utils/SeededRandomNumberGenerator.ts.meta | 40 + .../SpectaclesInteractionKit/Utils/Spatial.ts | 23 + .../Utils/Spatial.ts.meta | 40 + .../SpectaclesInteractionKit/Utils/State.ts | 153 + .../Utils/State.ts.meta | 40 + .../Utils/StateMachine.ts | 140 + .../Utils/StateMachine.ts.meta | 40 + .../Utils/UpdateDispatcher.ts | 207 + .../Utils/UpdateDispatcher.ts.meta | 40 + .../SpectaclesInteractionKit/Utils/aabb.ts | 7 + .../Utils/aabb.ts.meta | 40 + .../Utils/algorithms.ts | 88 + .../Utils/algorithms.ts.meta | 40 + .../SpectaclesInteractionKit/Utils/animate.ts | 427 + .../Utils/animate.ts.meta | 40 + .../SpectaclesInteractionKit/Utils/color.ts | 278 + .../Utils/color.ts.meta | 40 + .../Utils/debounce.ts | 74 + .../Utils/debounce.ts.meta | 40 + .../Utils/lazyProperty.ts | 20 + .../Utils/lazyProperty.ts.meta | 40 + .../SpectaclesInteractionKit/Utils/logger.ts | 11 + .../Utils/logger.ts.meta | 40 + .../Utils/mathUtils.ts | 195 + .../Utils/mathUtils.ts.meta | 40 + .../Utils/notEmpty.ts | 12 + .../Utils/notEmpty.ts.meta | 39 + .../Utils/springAnimate.ts | 52 + .../Utils/springAnimate.ts.meta | 39 + .../Utils/validate.ts | 19 + .../Utils/validate.ts.meta | 39 + .../Utils/views/LineRenderer/LineMeshUtils.ts | 117 + .../views/LineRenderer/LineMeshUtils.ts.meta | 40 + .../Utils/views/LineRenderer/LineRenderer.ts | 369 + .../views/LineRenderer/LineRenderer.ts.meta | 40 + .../Utils/views/MeshView.ts | 162 + .../Utils/views/MeshView.ts.meta | 40 + .../Utils/views/View.ts | 445 + .../Utils/views/View.ts.meta | 40 + .../SpectaclesInteractionKit/package.native | 40 + .../package.native.meta | 16 + .../Materials/DiscFinal.mat | 73 + .../Materials/DiscFinal.mat.meta | 16 + .../Unitree2Spectacles/Materials/DiscTemp.mat | 73 + .../Materials/DiscTemp.mat.meta | 16 + .../Prefab/PrefabFinalPosition.prefab | 54 + .../Prefab/PrefabFinalPosition.prefab.meta | 77 + .../Prefab/PrefabTemporaryPosition.prefab | 54 + .../PrefabTemporaryPosition.prefab.meta | 77 + .../Scripts/TS/CoordinationClient.ts | 518 + .../Scripts/TS/CoordinationClient.ts.meta | 44 + .../Scripts/TS/HandControl.ts | 326 + .../Scripts/TS/HandControl.ts.meta | 50 + .../Scripts/TS/JoystickToggle.ts | 20 + .../Scripts/TS/JoystickToggle.ts.meta | 41 + .../Scripts/TS/RobotDecoyController.ts | 238 + .../Scripts/TS/RobotDecoyController.ts.meta | 56 + .../Scripts/TS/SimulationImage.ts | 112 + .../Scripts/TS/SimulationImage.ts.meta | 39 + .../Scripts/TS/SingleObjectRaycaster.ts | 321 + .../Scripts/TS/SingleObjectRaycaster.ts.meta | 54 + .../Unitree2Spectacles/Scripts/TS/Utils.ts | 63 + .../Scripts/TS/Utils.ts.meta | 39 + .../Textures/ImageMaterial 1.mat | 73 + .../Textures/ImageMaterial 1.mat.meta | 16 + .../Textures/ImageMaterial.mat | 73 + .../Textures/ImageMaterial.mat.meta | 16 + .../Unitree2Spectacles/Textures/arrow_1.png | 3 + .../Textures/arrow_1.png.meta | 19 + .../Textures/simple-white-circle.png | 3 + .../Textures/simple-white-circle.png.meta | 19 + Spectacles-2-Unitree/Assets/Unlit.mat | 120 + Spectacles-2-Unitree/Assets/Unlit.mat.meta | 16 + .../Materials/Plane.mat | 30 + .../Materials/Plane.mat.meta | 16 + .../Materials/cloud.mat | 118 + .../Materials/cloud.mat.meta | 16 + .../Materials/house.mat | 118 + .../Materials/house.mat.meta | 16 + .../Materials/statue.mat | 118 + .../Materials/statue.mat.meta | 16 + .../Materials/tree.mat | 118 + .../Materials/tree.mat.meta | 16 + .../Meshes/Plane.mesh | 3 + .../Meshes/Plane.mesh.meta | 22 + .../Meshes/cloud.mesh | 3 + .../Meshes/cloud.mesh.meta | 22 + .../Meshes/eyes.mesh | 3 + .../Meshes/eyes.mesh.meta | 22 + .../Meshes/mouth_open.mesh | 3 + .../Meshes/mouth_open.mesh.meta | 22 + .../Meshes/mouth_smile.mesh | 3 + .../Meshes/mouth_smile.mesh.meta | 22 + .../Meshes/sit.mesh | 3 + .../Meshes/sit.mesh.meta | 22 + .../Meshes/stand.mesh | 3 + .../Meshes/stand.mesh.meta | 22 + .../Meshes/statue.mesh | 3 + .../Meshes/statue.mesh.meta | 22 + .../Meshes/tail.mesh | 3 + .../Meshes/tail.mesh.meta | 22 + .../Meshes/tree.mesh | 3 + .../Meshes/tree.mesh.meta | 22 + .../Shaders/cloud.ss_graph | 3 + .../Shaders/cloud.ss_graph.meta | 16 + .../Shaders/pbr.ss_graph | 3 + .../Shaders/pbr.ss_graph.meta | 16 + .../Textures/Tree_base.png | 3 + .../Textures/Tree_base.png.meta | 19 + .../Textures/Tree_normal.png | 3 + .../Textures/Tree_normal.png.meta | 19 + .../Textures/Tree_params.png | 3 + .../Textures/Tree_params.png.meta | 19 + .../Textures/cloud_base.png | 3 + .../Textures/cloud_base.png.meta | 19 + .../Textures/cloud_normal.png | 3 + .../Textures/cloud_normal.png.meta | 19 + .../Textures/cloud_params.png | 3 + .../Textures/cloud_params.png.meta | 19 + .../Textures/house_base.png | 3 + .../Textures/house_base.png.meta | 19 + .../Textures/house_normal.png | 3 + .../Textures/house_normal.png.meta | 19 + .../Textures/house_params.png | 3 + .../Textures/house_params.png.meta | 19 + .../Textures/statue_base.png | 3 + .../Textures/statue_base.png.meta | 19 + .../Textures/statue_normal.png | 3 + .../Textures/statue_normal.png.meta | 19 + .../Textures/statue_params.png | 3 + .../Textures/statue_params.png.meta | 19 + .../World Query Hit Example.prefab | 478 + .../World Query Hit Example.prefab.meta | 524 + .../WorldQueryHitExample.ts | 124 + .../WorldQueryHitExample.ts.meta | 48 + Spectacles-2-Unitree/Assets/flat.ss_graph | 3 + .../Assets/flat.ss_graph.meta | 16 + .../Assets/image_unlit.ss_graph | 3 + .../Assets/image_unlit.ss_graph.meta | 16 + Spectacles-2-Unitree/Assets/pbr.ss_graph | 3 + Spectacles-2-Unitree/Assets/pbr.ss_graph.meta | 16 + Spectacles-2-Unitree/Assets/unlit.ss_graph | 3 + .../Assets/unlit.ss_graph.meta | 16 + Spectacles-2-Unitree/Dockerfile | 96 + Spectacles-2-Unitree/LICENSE | 21 + Spectacles-2-Unitree/README-ref/dex-3.png | Bin 0 -> 75349 bytes Spectacles-2-Unitree/README-ref/hands.png | Bin 0 -> 160013 bytes Spectacles-2-Unitree/README-ref/high-five.gif | Bin 0 -> 5143642 bytes Spectacles-2-Unitree/README-ref/meshcat.png | Bin 0 -> 100030 bytes .../README-ref/sample-list-unitree.gif | Bin 0 -> 4072232 bytes Spectacles-2-Unitree/README-ref/server-a.png | Bin 0 -> 69016 bytes Spectacles-2-Unitree/README-ref/server-b.png | Bin 0 -> 542846 bytes .../README-ref/vscode-command.png | Bin 0 -> 14414 bytes Spectacles-2-Unitree/README.md | 338 + Spectacles-2-Unitree/Unitree.esproj | 39 + .../coordination-server/Dockerfile | 36 + .../coordination-server/pyproject.toml | 58 + .../coordination-server/src/main.py | 601 + .../coordination-server/src/static/styles.css | 282 + .../src/templates/connection_details.html | 170 + .../src/templates/dashboard.html | 137 + .../src/templates/login.html | 26 + Spectacles-2-Unitree/devcontainer.json | 24 + .../unitree-client/Dockerfile | 94 + .../unitree-client/environment.yml | 14 + .../unitree-client/run-robot-client.sh | 9 + .../unitree-client/src/ik/__init__.py | 3 + .../unitree-client/src/ik/g1_controller.py | 331 + .../unitree-client/src/ik/g1_solver.py | 382 + .../unitree-client/src/ik/ik.py | 395 + .../unitree-client/src/ik/urdf/LICENSE | 32 + .../src/ik/urdf/dex_hand/unitree_dex3.yml | 59 + .../ik/urdf/dex_hand/unitree_dex3_left.urdf | 443 + .../ik/urdf/dex_hand/unitree_dex3_right.urdf | 443 + .../unitree-client/src/ik/urdf/g1/README.md | 33 + .../src/ik/urdf/g1/g1_body29_hand14.urdf | 1476 ++ .../src/ik/urdf/g1/g1_body29_hand14.xml | 408 + .../src/ik/urdf/g1/meshes/head_link.STL | 3 + .../urdf/g1/meshes/left_ankle_pitch_link.STL | 3 + .../urdf/g1/meshes/left_ankle_roll_link.STL | 3 + .../src/ik/urdf/g1/meshes/left_elbow_link.STL | 3 + .../urdf/g1/meshes/left_hand_index_0_link.STL | 3 + .../urdf/g1/meshes/left_hand_index_1_link.STL | 3 + .../g1/meshes/left_hand_middle_0_link.STL | 3 + .../g1/meshes/left_hand_middle_1_link.STL | 3 + .../ik/urdf/g1/meshes/left_hand_palm_link.STL | 3 + .../urdf/g1/meshes/left_hand_thumb_0_link.STL | 3 + .../urdf/g1/meshes/left_hand_thumb_1_link.STL | 3 + .../urdf/g1/meshes/left_hand_thumb_2_link.STL | 3 + .../ik/urdf/g1/meshes/left_hip_pitch_link.STL | 3 + .../ik/urdf/g1/meshes/left_hip_roll_link.STL | 3 + .../ik/urdf/g1/meshes/left_hip_yaw_link.STL | 3 + .../src/ik/urdf/g1/meshes/left_knee_link.STL | 3 + .../ik/urdf/g1/meshes/left_rubber_hand.STL | 3 + .../g1/meshes/left_shoulder_pitch_link.STL | 3 + .../g1/meshes/left_shoulder_roll_link.STL | 3 + .../urdf/g1/meshes/left_shoulder_yaw_link.STL | 3 + .../urdf/g1/meshes/left_wrist_pitch_link.STL | 3 + .../urdf/g1/meshes/left_wrist_roll_link.STL | 3 + .../g1/meshes/left_wrist_roll_rubber_hand.STL | 3 + .../ik/urdf/g1/meshes/left_wrist_yaw_link.STL | 3 + .../src/ik/urdf/g1/meshes/logo_link.STL | 3 + .../src/ik/urdf/g1/meshes/pelvis.STL | 3 + .../ik/urdf/g1/meshes/pelvis_contour_link.STL | 3 + .../urdf/g1/meshes/right_ankle_pitch_link.STL | 3 + .../urdf/g1/meshes/right_ankle_roll_link.STL | 3 + .../ik/urdf/g1/meshes/right_elbow_link.STL | 3 + .../g1/meshes/right_hand_index_0_link.STL | 3 + .../g1/meshes/right_hand_index_1_link.STL | 3 + .../g1/meshes/right_hand_middle_0_link.STL | 3 + .../g1/meshes/right_hand_middle_1_link.STL | 3 + .../urdf/g1/meshes/right_hand_palm_link.STL | 3 + .../g1/meshes/right_hand_thumb_0_link.STL | 3 + .../g1/meshes/right_hand_thumb_1_link.STL | 3 + .../g1/meshes/right_hand_thumb_2_link.STL | 3 + .../urdf/g1/meshes/right_hip_pitch_link.STL | 3 + .../ik/urdf/g1/meshes/right_hip_roll_link.STL | 3 + .../ik/urdf/g1/meshes/right_hip_yaw_link.STL | 3 + .../src/ik/urdf/g1/meshes/right_knee_link.STL | 3 + .../ik/urdf/g1/meshes/right_rubber_hand.STL | 3 + .../g1/meshes/right_shoulder_pitch_link.STL | 3 + .../g1/meshes/right_shoulder_roll_link.STL | 3 + .../g1/meshes/right_shoulder_yaw_link.STL | 3 + .../urdf/g1/meshes/right_wrist_pitch_link.STL | 3 + .../urdf/g1/meshes/right_wrist_roll_link.STL | 3 + .../meshes/right_wrist_roll_rubber_hand.STL | 3 + .../urdf/g1/meshes/right_wrist_yaw_link.STL | 3 + .../g1/meshes/torso_constraint_L_link.STL | 3 + .../g1/meshes/torso_constraint_L_rod_link.STL | 3 + .../g1/meshes/torso_constraint_R_link.STL | 3 + .../g1/meshes/torso_constraint_R_rod_link.STL | 3 + .../src/ik/urdf/g1/meshes/torso_link.STL | 3 + .../g1/meshes/torso_link_23dof_rev_1_0.STL | 3 + .../ik/urdf/g1/meshes/torso_link_rev_1_0.STL | 3 + .../ik/urdf/g1/meshes/waist_constraint_L.STL | 3 + .../ik/urdf/g1/meshes/waist_constraint_R.STL | 3 + .../src/ik/urdf/g1/meshes/waist_roll_link.STL | 3 + .../g1/meshes/waist_roll_link_rev_1_0.STL | 3 + .../ik/urdf/g1/meshes/waist_support_link.STL | 3 + .../src/ik/urdf/g1/meshes/waist_yaw_link.STL | 3 + .../urdf/g1/meshes/waist_yaw_link_rev_1_0.STL | 3 + .../src/ik/urdf/inspire_hand/inspire_hand.yml | 35 + .../urdf/inspire_hand/inspire_hand_left.urdf | 819 + .../urdf/inspire_hand/inspire_hand_right.urdf | 830 + .../inspire_hand/meshes/L_hand_base_link.STL | 3 + .../meshes/L_hand_base_link.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link11_L.STL | 3 + .../meshes/Link11_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link11_R.STL | 3 + .../meshes/Link11_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link12_L.STL | 3 + .../meshes/Link12_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link12_R.STL | 3 + .../meshes/Link12_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link13_L.STL | 3 + .../meshes/Link13_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link13_R.STL | 3 + .../meshes/Link13_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link14_L.STL | 3 + .../meshes/Link14_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link14_R.STL | 3 + .../meshes/Link14_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link15_L.STL | 3 + .../meshes/Link15_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link15_R.STL | 3 + .../meshes/Link15_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link16_L.STL | 3 + .../meshes/Link16_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link16_R.STL | 3 + .../meshes/Link16_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link17_L.STL | 3 + .../meshes/Link17_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link17_R.STL | 3 + .../meshes/Link17_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link18_L.STL | 3 + .../meshes/Link18_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link18_R.STL | 3 + .../meshes/Link18_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link19_L.STL | 3 + .../meshes/Link19_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link19_R.STL | 3 + .../meshes/Link19_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link20_L.STL | 3 + .../meshes/Link20_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link20_R.STL | 3 + .../meshes/Link20_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link21_L.STL | 3 + .../meshes/Link21_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link21_R.STL | 3 + .../meshes/Link21_R.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link22_L.STL | 3 + .../meshes/Link22_L.STL.convex.stl | 3 + .../ik/urdf/inspire_hand/meshes/Link22_R.STL | 3 + .../meshes/Link22_R.STL.convex.stl | 3 + .../inspire_hand/meshes/R_hand_base_link.STL | 3 + .../meshes/R_hand_base_link.STL.convex.stl | 3 + .../meshes/left_ankle_pitch_link.STL | 3 + .../meshes/left_ankle_roll_link.STL | 3 + .../meshes/left_elbow_pitch_link.STL | 3 + .../meshes/left_elbow_roll_link.STL | 3 + .../inspire_hand/meshes/left_hand_link.STL | 3 + .../meshes/left_hip_pitch_link.STL | 3 + .../meshes/left_hip_roll_link.STL | 3 + .../inspire_hand/meshes/left_hip_yaw_link.STL | 3 + .../inspire_hand/meshes/left_knee_link.STL | 3 + .../meshes/left_shoulder_pitch_link.STL | 3 + .../meshes/left_shoulder_roll_link.STL | 3 + .../meshes/left_shoulder_yaw_link.STL | 3 + .../meshes/left_wrist_pitch_link.STL | 3 + .../ik/urdf/inspire_hand/meshes/logo_link.STL | 3 + .../ik/urdf/inspire_hand/meshes/pelvis.STL | 3 + .../meshes/right_ankle_pitch_link.STL | 3 + .../meshes/right_ankle_roll_link.STL | 3 + .../meshes/right_elbow_pitch_link.STL | 3 + .../meshes/right_elbow_roll_link.STL | 3 + .../inspire_hand/meshes/right_hand_link.STL | 3 + .../meshes/right_hip_pitch_link.STL | 3 + .../meshes/right_hip_roll_link.STL | 3 + .../meshes/right_hip_yaw_link.STL | 3 + .../inspire_hand/meshes/right_knee_link.STL | 3 + .../meshes/right_shoulder_pitch_link.STL | 3 + .../meshes/right_shoulder_roll_link.STL | 3 + .../meshes/right_shoulder_yaw_link.STL | 3 + .../meshes/right_wrist_pitch_link.STL | 3 + .../urdf/inspire_hand/meshes/torso_link.STL | 3 + .../inspire_hand/meshes/wrist_yaw_link.STL | 3 + .../unitree-client/src/ik/utils/__init__.py | 0 .../src/ik/utils/weighted_moving_filter.py | 52 + .../unitree-client/src/main.py | 491 + 1245 files changed, 168031 insertions(+) create mode 100644 Spectacles-2-Unitree/.devcontainer/Dockerfile create mode 100644 Spectacles-2-Unitree/.devcontainer/devcontainer.json create mode 100644 Spectacles-2-Unitree/.gitattributes create mode 100644 Spectacles-2-Unitree/.github/workflows/build-and-push.yml create mode 100644 Spectacles-2-Unitree/.gitignore create mode 100644 Spectacles-2-Unitree/ATTRIBUTION.md create mode 100644 Spectacles-2-Unitree/Assets/Base.png create mode 100644 Spectacles-2-Unitree/Assets/Base.png.meta create mode 100644 Spectacles-2-Unitree/Assets/Device Camera Texture.deviceCameraTexture create mode 100644 Spectacles-2-Unitree/Assets/Device Camera Texture.deviceCameraTexture.meta create mode 100644 Spectacles-2-Unitree/Assets/Echopark.hdr create mode 100644 Spectacles-2-Unitree/Assets/Echopark.hdr.meta create mode 100644 Spectacles-2-Unitree/Assets/Image.mat create mode 100644 Spectacles-2-Unitree/Assets/Image.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Base.png create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Base.png.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Cylinder.fbx create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Cylinder.fbx.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/ImageMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/Joystick/ImageMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Joystick.prefab create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Joystick.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Joystick.ts create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Joystick.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/JoystickInner.prefab create mode 100644 Spectacles-2-Unitree/Assets/Joystick/JoystickInner.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/JoystickPlane.mat create mode 100644 Spectacles-2-Unitree/Assets/Joystick/JoystickPlane.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/JoystickScene.scene create mode 100644 Spectacles-2-Unitree/Assets/Joystick/JoystickScene.scene.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/MaterialParams.png create mode 100644 Spectacles-2-Unitree/Assets/Joystick/MaterialParams.png.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Normal.png create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Normal.png.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Simple Frame.png create mode 100644 Spectacles-2-Unitree/Assets/Joystick/Simple Frame.png.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/image_unlit.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/Joystick/image_unlit.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/joystick box.png create mode 100644 Spectacles-2-Unitree/Assets/Joystick/joystick box.png.meta create mode 100644 Spectacles-2-Unitree/Assets/Joystick/pbr.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/Joystick/pbr.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/MaterialParams.png create mode 100644 Spectacles-2-Unitree/Assets/MaterialParams.png.meta create mode 100644 Spectacles-2-Unitree/Assets/Normal.png create mode 100644 Spectacles-2-Unitree/Assets/Normal.png.meta create mode 100644 Spectacles-2-Unitree/Assets/PBR 1.mat create mode 100644 Spectacles-2-Unitree/Assets/PBR 1.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/PBR 2.mat create mode 100644 Spectacles-2-Unitree/Assets/PBR 2.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/PBR 3.mat create mode 100644 Spectacles-2-Unitree/Assets/PBR 3.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/PBR.mat create mode 100644 Spectacles-2-Unitree/Assets/PBR.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/Pyramid.mesh create mode 100644 Spectacles-2-Unitree/Assets/Pyramid.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/Render Target.renderTarget create mode 100644 Spectacles-2-Unitree/Assets/Render Target.renderTarget.meta create mode 100644 Spectacles-2-Unitree/Assets/Scene.scene create mode 100644 Spectacles-2-Unitree/Assets/Scene.scene.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/HoverAudioTrack.wav create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/HoverAudioTrack.wav.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerEndAudioTrack.wav create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerEndAudioTrack.wav.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerStartAudioTrack.wav create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerStartAudioTrack.wav.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightLeft.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightLeft.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightRight.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightRight.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerTipGlow.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerTipGlow.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderLeft.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderLeft.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderRight.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderRight.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/RadialGradientOcclusion.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/RadialGradientOcclusion.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BitmojiMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BitmojiMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ContainerImageMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ContainerImageMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/LogoMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/LogoMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/NormalBasedTargetOutline.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/NormalBasedTargetOutline.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkInactive.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkInactive.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkRadial.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkRadial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOffIcon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOffIcon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnDefault.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnDefault.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnIcon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnIcon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnSelect.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnSelect.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 1.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 1.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 10.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 10.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 2.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 2.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 3.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 3.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 4.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 4.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 5.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 5.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 6.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 6.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 7.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 7.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 8.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 8.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 9.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 9.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 1.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 1.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 2.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 2.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonHover.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonHover.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonPinched.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonPinched.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButton_Idle.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButton_Idle.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 1.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 1.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 2.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 2.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll_bg.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll_bg.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/Slider_Platform.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/Slider_Platform.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScaleBasedTargetOutline.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScaleBasedTargetOutline.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarButton.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarButton.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarSlider.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarSlider.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SimplePBRMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SimplePBRMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonDarkDefault.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonDarkDefault.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonOnSelect.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonOnSelect.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/SliderMat.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/SliderMat.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/TargetOutlineMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/TargetOutlineMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SpritePreset.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SpritePreset.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/TargetOutlineMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/TargetOutlineMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/Text3DDefault.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/Text3DDefault.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/BoxMesh.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/BoxMesh.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonCapsuleMesh.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonCapsuleMesh.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonSphereMesh.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonSphereMesh.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Check.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Check.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/LeftHandMesh.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/LeftHandMesh.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlaneMesh.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlaneMesh.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformCapsuleButton.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformCapsuleButton.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformSphereButton.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformSphereButton.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButton.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButton.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButtonGlow.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButtonGlow.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarKnobMesh.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarKnobMesh.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarMesh.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarMesh.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/Slider.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/Slider.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/RightHandMesh.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/RightHandMesh.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ScrollBarSlider.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ScrollBarSlider.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderSphereKnob.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderSphereKnob.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderTrack.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderTrack.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SnapGhost_Mesh.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SnapGhost_Mesh.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SphereMesh.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SphereMesh.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Uncheck.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Uncheck.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerHighlight.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerHighlight.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerTipGlow.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerTipGlow.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/HandOccluder.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/HandOccluder.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/RadialGradientOcclusion.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/RadialGradientOcclusion.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/NormalBasedTargetOutline.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/NormalBasedTargetOutline.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchButton-ActiveOrInActive.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchButton-ActiveOrInActive.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchDarkRadial.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchDarkRadial.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonHover.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonHover.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonIdle.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonIdle.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonPinched.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonPinched.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonHover.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonHover.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonIdle.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonIdle.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonPinched.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonPinched.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowHover.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowHover.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowIdle.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowIdle.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowPinched.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowPinched.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonHover.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonHover.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonPinched.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonPinched.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButton_Idle.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButton_Idle.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollBackground.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollBackground.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonHover.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonHover.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonIdle.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonIdle.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonPinched.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonPinched.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/Slider_Platform.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/Slider_Platform.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledHover.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledHover.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledPinched.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledPinched.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScaleBasedTargetOutline.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScaleBasedTargetOutline.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScrollBarSlider.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScrollBarSlider.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/PinchButton-Default.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/PinchButton-Default.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/Slider.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/Slider.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SpritePreset.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SpritePreset.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/TargetOutline.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/TargetOutline.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/Text3DDefault.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/Text3DDefault.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOff.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOff.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOn.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOn.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOnSelect.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOnSelect.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/simple_pbr.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/simple_pbr.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/2DBitmojiAvatar.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/2DBitmojiAvatar.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Base.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Base.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/Glow.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/Glow.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMask.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMask.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMaskColored.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMaskColored.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshPinchTexture.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshPinchTexture.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshTapTexture.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshTapTexture.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/occlusionGradient.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/occlusionGradient.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/MaterialParams.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/MaterialParams.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Normal.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Normal.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowDown.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowDown.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowUp.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowUp.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Close.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Close.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconBlack.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconBlack.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconWhite.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconWhite.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Image.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Image.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Mask_simple_reflection_ellipse.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Mask_simple_reflection_ellipse.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle_05.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle_05.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_02.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_02.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_05.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_05.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_06.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_06.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/UI_glow.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/UI_glow.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Active.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Active.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Inactive.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Inactive.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKContainerExampleImage.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKContainerExampleImage.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKLogo.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKLogo.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/ScrollBarRectangle.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/ScrollBarRectangle.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ButtonFeedback.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ButtonFeedback.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/CapsuleMeshCustomizer.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/CapsuleMeshCustomizer.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableAudioFeedback.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableAudioFeedback.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableColorFeedback.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableColorFeedback.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableOutlineFeedback.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableOutlineFeedback.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableSquishFeedback.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableSquishFeedback.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScreenTransformAdapter.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScreenTransformAdapter.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScrollBarFeedback.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScrollBarFeedback.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/SliderFeedback.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/SliderFeedback.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ToggleFeedback.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ToggleFeedback.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/Billboard.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/Billboard.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardController.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardController.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardRotationCalculator.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardRotationCalculator.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectView.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectView.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectViewModel.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectViewModel.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/HandVisual.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/HandVisual.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/RadialOcclusionView.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/RadialOcclusionView.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/Headlock.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/Headlock.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockController.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockController.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockRotationCalculator.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockRotationCalculator.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockTranslationCalculator.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockTranslationCalculator.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Interactable/Interactable.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Interactable/Interactable.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractableManipulation/InteractableManipulation.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractableManipulation/InteractableManipulation.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractionPlane/InteractionPlane.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractionPlane/InteractionPlane.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CircleVisual.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CircleVisual.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Cursor.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Cursor.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorController.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorController.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorMat.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorMat.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorViewModel.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorViewModel.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/InteractorCursor.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/InteractorCursor.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMat.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMat.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Plane.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Plane.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/disabled.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/disabled.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tl.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tl.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tr.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tr.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/translate.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/translate.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMat.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMat.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineRenderer.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineRenderer.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineVisual.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineVisual.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/ContainerFrame.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/ContainerFrame.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Image.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Image.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Label.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Label.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/flat.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/flat.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_High.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_High.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_Mid.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_Mid.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SphereButton.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SphereButton.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SysSettings_settings_button.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SysSettings_settings_button.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/pinch-depth-button.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/pinch-depth-button.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/FramePrefab.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/FramePrefab.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/container-button.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/container-button.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/README.md create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/README.md.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon-1.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon-1.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/container-button-matcap.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/container-button-matcap.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-black.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-black.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white-shadow.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white-shadow.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1-cube.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1-cube.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/soft-reflection.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/soft-reflection.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/container-ui.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/container-ui.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/CursorHandler.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/CursorHandler.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/ForceContainerParent.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/ForceContainerParent.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/FrameInputHandler.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/FrameInputHandler.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/HoverBehavior.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/HoverBehavior.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/LabeledPinchButton.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/LabeledPinchButton.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SimpleLODRenderMeshVisual/SimpleLODRenderMeshVisual.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SimpleLODRenderMeshVisual/SimpleLODRenderMeshVisual.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SmoothFollow.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SmoothFollow.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SnappableBehavior.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SnappableBehavior.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/PinchButton/PinchButton.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/PinchButton/PinchButton.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollBar/ScrollBar.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollBar/ScrollBar.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/GridContentCreator.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/GridContentCreator.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollArea.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollArea.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollView.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollView.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BoundariesProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BoundariesProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BufferedBoundariesProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BufferedBoundariesProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/SceneObjectBoundariesProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/SceneObjectBoundariesProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/ScreenTransformBoundariesProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/ScreenTransformBoundariesProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/VisualBoundariesProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/VisualBoundariesProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/Slider/Slider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/Slider/Slider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ToggleButton/ToggleButton.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ToggleButton/ToggleButton.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/ConfigurationValidator/ConfigurationValidator.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/ConfigurationValidator/ConfigurationValidator.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/HandInteractor/HandInteractor.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/HandInteractor/HandInteractor.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/EventDispatcher.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/EventDispatcher.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/InteractionManager.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/InteractionManager.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/BaseInteractor.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/BaseInteractor.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/ColliderTargetProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/ColliderTargetProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DirectTargetProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DirectTargetProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DragProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DragProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/HandRayProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/HandRayProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/IndirectTargetProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/IndirectTargetProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/Interactor.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/Interactor.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/InteractorEvent.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/InteractorEvent.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MobileRayProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MobileRayProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MouseTargetProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MouseTargetProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/PokeTargetProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/PokeTargetProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/RayProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/RayProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/TouchRayProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/TouchRayProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/AxisAngle.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/AxisAngle.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/ContinousIrInteractionTransition.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/ContinousIrInteractionTransition.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/IrInteractionTransition.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/IrInteractionTransition.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/PinchJumpSuppressor.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/PinchJumpSuppressor.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorHead.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorHead.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorVariableShoulder.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorVariableShoulder.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastBase.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastBase.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastLegacySingleCamera.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastLegacySingleCamera.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastProxy.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastProxy.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RgbIrTransitionJumpSuppressor.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RgbIrTransitionJumpSuppressor.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/SwitchIrInteractionTransition.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/SwitchIrInteractionTransition.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeDataContainer.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeDataContainer.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeScalarContainer.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeScalarContainer.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec2Container.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec2Container.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec3Container.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec3Container.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/LogLevelConfiguration.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/LogLevelConfiguration.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/SIKLogLevelConfiguration.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/SIKLogLevelConfiguration.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MobileInteractor/MobileInteractor.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MobileInteractor/MobileInteractor.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MouseInteractor/MouseInteractor.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MouseInteractor/MouseInteractor.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Decorators/Singleton.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Decorators/Singleton.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernBodyTube_icon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernBodyTube_icon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernFins_icon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernFins_icon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernNoseCone_icon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernNoseCone_icon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekBodyTube_icon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekBodyTube_icon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekFins_icon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekFins_icon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekNoseCone_icon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekNoseCone_icon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeBodyTube_icon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeBodyTube_icon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeFins_icon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeFins_icon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeNoseCone_icon.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeNoseCone_icon.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Meteor.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Meteor.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet_rings.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet_rings.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Platform.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Platform.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_fire.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_fire.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass_satellite.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass_satellite.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_grey.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_grey.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal_red.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal_red.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_01.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_01.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_02.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_02.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03_logo.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03_logo.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white_logo.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white_logo.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Satellite_blue.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Satellite_blue.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/Bases.fbx create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/Bases.fbx.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/SIK_Rockets.fbx create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/SIK_Rockets.fbx.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Body Tube.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Body Tube.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Fins.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Fins.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Nose Cone.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Nose Cone.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Body Tube.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Body Tube.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Fins.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Fins.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Nose Cone.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Nose Cone.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Body Tube.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Body Tube.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Fins.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Fins.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Nose Cone.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Nose Cone.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Body Tube Category.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Body Tube Category.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Fins Category.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Fins Category.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Body Tube.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Body Tube.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Fins.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Fins.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Nose Cone.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Nose Cone.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Nose Cone Category.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Nose Cone Category.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Body Tube.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Body Tube.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Fins.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Fins.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Nose Cone.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Nose Cone.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Body Tube.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Body Tube.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Fins.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Fins.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Nose Cone.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Nose Cone.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/ExhaustControls.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/ExhaustControls.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketConfigurator.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketConfigurator.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketGridContentCreator.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketGridContentCreator.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketLaunchControl.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketLaunchControl.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketScrollViewItem.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketScrollViewItem.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Glass.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Glass.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Meteor.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Meteor.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet_rings.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet_rings.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Platform.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Platform.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Rocket.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Rocket.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/A-icon.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/A-icon.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/B-icon.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/B-icon.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/C-icon.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/C-icon.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Meteor_bc.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Meteor_bc.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Platforms_AO.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Platforms_AO.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Rockets_AO.jpg create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Rockets_AO.jpg.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Snap_logo.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Snap_logo.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Space_logo_TEMP.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Space_logo_TEMP.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-A.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-A.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-B.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-B.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-C.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-C.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-A.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-A.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-B.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-B.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-C.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-C.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-A.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-A.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-B.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-B.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-C.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-C.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_ANIM_mat_landing.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_ANIM_mat_landing.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_material_landing_.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_material_landing_.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/CloudsLanding.animationAsset create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/CloudsLanding.animationAsset.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/line1.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/line1.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_ANIM_mat_takeoff.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_ANIM_mat_takeoff.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_material_start_.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_material_start_.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/CloudsStart.animationAsset create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/CloudsStart.animationAsset.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/line1.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/line1.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Custom Mesh Emitter.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Custom Mesh Emitter.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Rocket_clouds_emit.vfxgraph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Rocket_clouds_emit.vfxgraph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/cl_goup.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/cl_goup.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire_ANIM_mat.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire_ANIM_mat.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_ANIM_mat.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_ANIM_mat.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_MAt.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_MAt.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/blendshapes1.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/blendshapes1.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/dots.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/dots.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/engine_exhaust.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/engine_exhaust.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/glow_plane.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/glow_plane.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Noise00.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Noise00.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Plane.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Plane.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/RadialHeat_ANIM_mat.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/RadialHeat_ANIM_mat.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Radial_heat.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Radial_heat.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 1.animationAsset create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 1.animationAsset.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 2.animationAsset create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 2.animationAsset.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 3.animationAsset create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 3.animationAsset.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Rocket_sparks.mesh create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Rocket_sparks.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.mat create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/stripe_noise 2.png create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/stripe_noise 2.png.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/SIK Examples.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/SIK Examples.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/ScrollViewListItem.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/ScrollViewListItem.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/SpectaclesInteractionKit.prefab create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/SpectaclesInteractionKit.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/ARCameraFinderProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/ARCameraFinderProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseCameraFinderProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseCameraFinderProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseWorldCameraProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseWorldCameraProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/CameraProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/CameraProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/WorldCameraFinderProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/WorldCameraFinderProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CursorControllerProvider/CursorControllerProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CursorControllerProvider/CursorControllerProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/BaseHand.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/BaseHand.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/DefaultHandTrackingAssetProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/DefaultHandTrackingAssetProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/GestureModuleProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/GestureModuleProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/MotionControllerProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/MotionControllerProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetector.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetector.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetectorStateMachine.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetectorStateMachine.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetectionEvent.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetectionEvent.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapEvent.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapEvent.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HciPinchDetectionStrategy.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HciPinchDetectionStrategy.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HeuristicPinchDetectionStrategy.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HeuristicPinchDetectionStrategy.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/PinchDetectionStrategy.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/PinchDetectionStrategy.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetector.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetector.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetectorStateMachine.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetectorStateMachine.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchEventType.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchEventType.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandInputData.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandInputData.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandTrackingAssetProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandTrackingAssetProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandType.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandType.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandVisuals.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandVisuals.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Joints.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Joints.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Keypoint.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Keypoint.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LandmarkNames.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LandmarkNames.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LeftHandAsset.handTracking3D create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LeftHandAsset.handTracking3D.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/RightHandAsset.handTracking3D create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/RightHandAsset.handTracking3D.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/TrackedHand.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/TrackedHand.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/InteractionConfigurationProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/InteractionConfigurationProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/LogLevelProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/LogLevelProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/SIKLogLevelProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/SIKLogLevelProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/MobileInputData/MobileInputData.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/MobileInputData/MobileInputData.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetProvider.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetProvider.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetingData.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetingData.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/SIK.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/SIK.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/BistableThreshold.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/BistableThreshold.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Event.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Event.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Filter.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Filter.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InputChecker.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InputChecker.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InspectorCallbacks.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InspectorCallbacks.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LensConfig.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LensConfig.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LogLevel.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LogLevel.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/MovingAverageFilter.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/MovingAverageFilter.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/NativeLogger.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/NativeLogger.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/OneEuroFilter.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/OneEuroFilter.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/ReplayEvent.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/ReplayEvent.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SafeReference.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SafeReference.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SampleOps.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SampleOps.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SceneObjectUtils.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SceneObjectUtils.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SeededRandomNumberGenerator.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SeededRandomNumberGenerator.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Spatial.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Spatial.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/State.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/State.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/StateMachine.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/StateMachine.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/UpdateDispatcher.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/UpdateDispatcher.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/aabb.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/aabb.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/algorithms.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/algorithms.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/animate.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/animate.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/color.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/color.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/debounce.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/debounce.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/lazyProperty.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/lazyProperty.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/logger.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/logger.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/mathUtils.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/mathUtils.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/notEmpty.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/notEmpty.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/springAnimate.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/springAnimate.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/validate.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/validate.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineMeshUtils.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineMeshUtils.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineRenderer.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineRenderer.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/MeshView.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/MeshView.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/View.ts create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/View.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/package.native create mode 100644 Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/package.native.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscFinal.mat create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscFinal.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscTemp.mat create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscTemp.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabFinalPosition.prefab create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabFinalPosition.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabTemporaryPosition.prefab create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabTemporaryPosition.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/CoordinationClient.ts create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/CoordinationClient.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/HandControl.ts create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/HandControl.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/JoystickToggle.ts create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/JoystickToggle.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/RobotDecoyController.ts create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/RobotDecoyController.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SimulationImage.ts create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SimulationImage.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SingleObjectRaycaster.ts create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SingleObjectRaycaster.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/Utils.ts create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/Utils.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial 1.mat create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial 1.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial.mat create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/arrow_1.png create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/arrow_1.png.meta create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/simple-white-circle.png create mode 100644 Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/simple-white-circle.png.meta create mode 100644 Spectacles-2-Unitree/Assets/Unlit.mat create mode 100644 Spectacles-2-Unitree/Assets/Unlit.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/Plane.mat create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/Plane.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/cloud.mat create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/cloud.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/house.mat create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/house.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/statue.mat create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/statue.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/tree.mat create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/tree.mat.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/Plane.mesh create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/Plane.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/cloud.mesh create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/cloud.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/eyes.mesh create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/eyes.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_open.mesh create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_open.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_smile.mesh create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_smile.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/sit.mesh create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/sit.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/stand.mesh create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/stand.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/statue.mesh create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/statue.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tail.mesh create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tail.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tree.mesh create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tree.mesh.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/cloud.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/cloud.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/pbr.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/pbr.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_base.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_base.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_normal.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_normal.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_params.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_params.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_base.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_base.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_normal.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_normal.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_params.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_params.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_base.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_base.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_normal.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_normal.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_params.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_params.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_base.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_base.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_normal.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_normal.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_params.png create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_params.png.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/World Query Hit Example.prefab create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/World Query Hit Example.prefab.meta create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/WorldQueryHitExample.ts create mode 100644 Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/WorldQueryHitExample.ts.meta create mode 100644 Spectacles-2-Unitree/Assets/flat.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/flat.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/image_unlit.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/image_unlit.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/pbr.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/pbr.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Assets/unlit.ss_graph create mode 100644 Spectacles-2-Unitree/Assets/unlit.ss_graph.meta create mode 100644 Spectacles-2-Unitree/Dockerfile create mode 100644 Spectacles-2-Unitree/LICENSE create mode 100644 Spectacles-2-Unitree/README-ref/dex-3.png create mode 100644 Spectacles-2-Unitree/README-ref/hands.png create mode 100644 Spectacles-2-Unitree/README-ref/high-five.gif create mode 100644 Spectacles-2-Unitree/README-ref/meshcat.png create mode 100644 Spectacles-2-Unitree/README-ref/sample-list-unitree.gif create mode 100644 Spectacles-2-Unitree/README-ref/server-a.png create mode 100644 Spectacles-2-Unitree/README-ref/server-b.png create mode 100644 Spectacles-2-Unitree/README-ref/vscode-command.png create mode 100644 Spectacles-2-Unitree/README.md create mode 100644 Spectacles-2-Unitree/Unitree.esproj create mode 100644 Spectacles-2-Unitree/coordination-server/Dockerfile create mode 100644 Spectacles-2-Unitree/coordination-server/pyproject.toml create mode 100644 Spectacles-2-Unitree/coordination-server/src/main.py create mode 100644 Spectacles-2-Unitree/coordination-server/src/static/styles.css create mode 100644 Spectacles-2-Unitree/coordination-server/src/templates/connection_details.html create mode 100644 Spectacles-2-Unitree/coordination-server/src/templates/dashboard.html create mode 100644 Spectacles-2-Unitree/coordination-server/src/templates/login.html create mode 100644 Spectacles-2-Unitree/devcontainer.json create mode 100644 Spectacles-2-Unitree/unitree-client/Dockerfile create mode 100644 Spectacles-2-Unitree/unitree-client/environment.yml create mode 100644 Spectacles-2-Unitree/unitree-client/run-robot-client.sh create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/__init__.py create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/g1_controller.py create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/g1_solver.py create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/ik.py create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/LICENSE create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/dex_hand/unitree_dex3.yml create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/dex_hand/unitree_dex3_left.urdf create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/dex_hand/unitree_dex3_right.urdf create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/README.md create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/g1_body29_hand14.urdf create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/g1_body29_hand14.xml create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/head_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_ankle_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_ankle_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_elbow_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hand_index_0_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hand_index_1_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hand_middle_0_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hand_middle_1_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hand_palm_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hand_thumb_0_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hand_thumb_1_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hand_thumb_2_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hip_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hip_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_hip_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_knee_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_rubber_hand.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_shoulder_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_shoulder_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_shoulder_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_wrist_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_wrist_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_wrist_roll_rubber_hand.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/left_wrist_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/logo_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/pelvis.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/pelvis_contour_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_ankle_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_ankle_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_elbow_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hand_index_0_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hand_index_1_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hand_middle_0_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hand_middle_1_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hand_palm_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hand_thumb_0_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hand_thumb_1_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hand_thumb_2_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hip_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hip_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_hip_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_knee_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_rubber_hand.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_shoulder_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_shoulder_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_shoulder_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_wrist_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_wrist_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_wrist_roll_rubber_hand.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/right_wrist_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/torso_constraint_L_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/torso_constraint_L_rod_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/torso_constraint_R_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/torso_constraint_R_rod_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/torso_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/torso_link_23dof_rev_1_0.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/torso_link_rev_1_0.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/waist_constraint_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/waist_constraint_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/waist_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/waist_roll_link_rev_1_0.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/waist_support_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/waist_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/g1/meshes/waist_yaw_link_rev_1_0.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/inspire_hand.yml create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/inspire_hand_left.urdf create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/inspire_hand_right.urdf create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/L_hand_base_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/L_hand_base_link.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link11_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link11_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link11_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link11_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link12_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link12_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link12_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link12_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link13_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link13_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link13_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link13_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link14_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link14_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link14_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link14_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link15_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link15_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link15_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link15_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link16_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link16_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link16_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link16_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link17_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link17_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link17_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link17_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link18_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link18_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link18_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link18_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link19_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link19_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link19_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link19_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link20_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link20_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link20_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link20_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link21_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link21_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link21_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link21_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link22_L.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link22_L.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link22_R.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/Link22_R.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/R_hand_base_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/R_hand_base_link.STL.convex.stl create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_ankle_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_ankle_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_elbow_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_elbow_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_hand_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_hip_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_hip_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_hip_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_knee_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_shoulder_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_shoulder_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_shoulder_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/left_wrist_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/logo_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/pelvis.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_ankle_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_ankle_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_elbow_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_elbow_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_hand_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_hip_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_hip_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_hip_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_knee_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_shoulder_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_shoulder_roll_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_shoulder_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/right_wrist_pitch_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/torso_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/urdf/inspire_hand/meshes/wrist_yaw_link.STL create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/utils/__init__.py create mode 100644 Spectacles-2-Unitree/unitree-client/src/ik/utils/weighted_moving_filter.py create mode 100644 Spectacles-2-Unitree/unitree-client/src/main.py diff --git a/README.md b/README.md index f45f9cfb..b0ec5893 100644 --- a/README.md +++ b/README.md @@ -451,6 +451,31 @@ Extended Permissions mode on device must be enabled in some of the projects to a +## Community Samples + + + + + + + +
+ + spectacles-2-unitree + +

Spectacles to Unitree Teleoperation

+

+ + + +

+

Simulate or remote control a humanoid robot by copying your hand movements

+
+ + + +
+ ## Support If you have any questions or need assistance, please don't hesitate to reach out. Our community is here to help, and you can connect with us and ask for support [here](https://www.reddit.com/r/Spectacles/). We look forward to hearing from you and are excited to assist you on your journey! diff --git a/Spectacles-2-Unitree/.devcontainer/Dockerfile b/Spectacles-2-Unitree/.devcontainer/Dockerfile new file mode 100644 index 00000000..e877d6a0 --- /dev/null +++ b/Spectacles-2-Unitree/.devcontainer/Dockerfile @@ -0,0 +1,96 @@ +FROM ubuntu:noble AS dev + +LABEL org.opencontainers.image.description="Spectacles-2-Unitree dev container" + +ARG UV_VERSION=0.6.2 + +ENV CYCLONEDDS_HOME=/usr/local \ + DEBIAN_FRONTEND=noninteractive \ + PATH="/opt/conda/bin:${PATH}" + +RUN apt-get update && apt-get install -y --no-install-recommends \ + ca-certificates \ + apt-transport-https \ + curl \ + gnupg \ + # Needed for some Python dependencies that want the full non-headless version of OpenCV. + libgl1 \ + libglib2.0-0 \ + lsb-release \ + python3.12 \ + && apt-get clean && rm -rf /var/lib/apt/lists/* + +RUN . /etc/lsb-release \ + # Git LFS + && curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey \ + | gpg --dearmor -o /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg \ + && curl -fsSL "https://packagecloud.io/install/repositories/github/git-lfs/config_file.list?os=${DISTRIB_ID}&dist=${DISTRIB_CODENAME}" > /etc/apt/sources.list.d/github_git-lfs.list \ + # GitHub CLI + && curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg -o /usr/share/keyrings/githubcli.gpg \ + && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli.gpg] https://cli.github.com/packages stable main" > /etc/apt/sources.list.d/github-cli.list \ + # Docker + && curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc \ + && echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" > /etc/apt/sources.list.d/docker.list + +# Additional dev packages +RUN apt-get update && apt-get install -y --no-install-recommends \ + build-essential \ + cmake \ + docker-buildx-plugin \ + docker-ce-cli \ + gcc-aarch64-linux-gnu \ + gh \ + git \ + git-lfs \ + htop \ + iputils-ping \ + jq \ + less \ + linux-tools-common \ + linux-tools-generic \ + micro \ + net-tools \ + openssl \ + pipx \ + python3-pip \ + ssh \ + unzip \ + && apt-get clean && rm -rf /var/lib/apt/lists/* + +# Install act +RUN --mount=type=cache,target=/root/.cache/act \ + curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/nektos/act/master/install.sh | bash + +# Install uv +RUN pipx ensurepath && pipx install "uv==$UV_VERSION" + +# Install conda +RUN curl -fsSL https://github.com/conda-forge/miniforge/releases/download/25.3.0-1/Miniforge3-25.3.0-1-Linux-aarch64.sh -o /tmp/miniforge.sh \ + && chmod +x /tmp/miniforge.sh \ + && /tmp/miniforge.sh -b -p /opt/conda \ + && rm /tmp/miniforge.sh + +# Build CycloneDDS +RUN git clone https://github.com/eclipse-cyclonedds/cyclonedds /tmp/cyclonedds \ + && cd /tmp/cyclonedds \ + # The unitree-sdk2py depends on CycloneDDS 0.10.2 + && git checkout 0.10.2 \ + && mkdir build && cd build \ + && cmake -DCMAKE_INSTALL_PREFIX=/usr/local .. \ + && cmake --build . --target install \ + && cd / && rm -rf /tmp/cyclonedds + +SHELL ["/bin/bash", "-c"] + +COPY unitree-client/environment.yml environment.yml + +RUN source /opt/conda/etc/profile.d/conda.sh \ + && conda env create -f environment.yml \ + && conda clean -afy + +RUN source /opt/conda/etc/profile.d/conda.sh \ + && conda activate unitree-client \ + && pip install --no-cache-dir \ + meshcat@git+https://github.com/TastyDucks/meshcat-python.git \ + unitree_sdk2py@git+https://github.com/TastyDucks/unitree_sdk2_python.git \ + cyclonedds==0.10.2 \ No newline at end of file diff --git a/Spectacles-2-Unitree/.devcontainer/devcontainer.json b/Spectacles-2-Unitree/.devcontainer/devcontainer.json new file mode 100644 index 00000000..49953d73 --- /dev/null +++ b/Spectacles-2-Unitree/.devcontainer/devcontainer.json @@ -0,0 +1,24 @@ +// For format details, see https://aka.ms/devcontainer.json. +{ + "name": "Spectacles-2-Unitree dev", + "build": { + "dockerfile": "Dockerfile", + "context": "..", + "options": [ + "--platform=linux/arm64" + ] + }, + "mounts": [ + { + "source": "/var/run/docker.sock", + "target": "/var/run/docker.sock", + "type": "bind" + } + ], + "runArgs": [ + "--platform=linux/arm64" + ], + "forwardPorts": [ + 8080 + ] +} \ No newline at end of file diff --git a/Spectacles-2-Unitree/.gitattributes b/Spectacles-2-Unitree/.gitattributes new file mode 100644 index 00000000..b5606a96 --- /dev/null +++ b/Spectacles-2-Unitree/.gitattributes @@ -0,0 +1,105 @@ +# Shipped by Lens Studio +*.esproj text linguist-language=yaml + +Assets/**/* filter=lfs diff=lfs merge=lfs -text + +Assets/**/*.css !filter !diff !merge text +Assets/**/*.glsl !filter !diff !merge text +Assets/**/*.js !filter !diff !merge text +Assets/**/*.json !filter !diff !merge text +Assets/**/*.lensanim !filter !diff !merge text +Assets/**/*.md !filter !diff !merge text +Assets/**/*.rtf !filter !diff !merge text +Assets/**/*.svg !filter !diff !merge text +Assets/**/*.t3d !filter !diff !merge text +Assets/**/*.ts !filter !diff !merge text +Assets/**/*.txt !filter !diff !merge text +Assets/**/*.ui !filter !diff !merge text +Assets/**/*.yaml !filter !diff !merge text + +Assets/**/*.meta !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge + +Assets/**/*.animationAsset !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.animationCurveTrack !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.animationLayer !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.animationMixerLayer !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.audioOutput !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.bitmojiModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.bodyDepthTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.bodyInstanceSegmentationTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.bodyMesh !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.bodyNormalsTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.bodyTracking3D !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.cameraModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.cameraRawModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.cloudStorageModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.colocatedLandmarks2DMesh !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.colocatedLandmarks3DMesh !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.connectedLensModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.coreMLModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.depthStencilRenderTarget !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.depthTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.deviceCameraTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.deviceTrackingModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.dialogModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.faceCropTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.faceImagePickerTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.faceTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.faceTrackingModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.facelessTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.facemesh !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.filter !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.handTracking3D !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.imagePickerTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.imgmarker !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.internetModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.leaderBoardModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.licensedAudio !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.location !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.locationCloudStorageModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.locationTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.location_mesh !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.mapModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.mat !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.matter !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.mediaPickerTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.micaudio !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.microphoneRawModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.motionControllerModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.native !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.objectTrackingTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.prefab !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.processedLocationModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.proxyTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.rawLocationModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.rayTracingSettings !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.remoteMLAsset !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.remoteMediaModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.remoteReferenceAsset !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.remoteServiceModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.renderTarget !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.reverseCameraTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.scanModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.scene !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.scmarker !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.screenCropTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.screenTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.segmentationTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.shoppingModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.textInputModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.textTexture !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.textToSpeechModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.upperBodyMesh !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.upperBodyTracking3D !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.voiceMLModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.worldQueryModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.worldSettings !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.worldUnderstandingModule !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +Assets/**/*.worldmesh !filter !diff !merge text linguist-language=yaml merge=lens-studio-yaml-merge +# Shipped by Lens Studio +.png filter=lfs diff=lfs merge=lfs -text +.jpg filter=lfs diff=lfs merge=lfs -text +.gif filter=lfs diff=lfs merge=lfs -text + +# Unitree Client Meshes +*.STL filter=lfs diff=lfs merge=lfs -text diff --git a/Spectacles-2-Unitree/.github/workflows/build-and-push.yml b/Spectacles-2-Unitree/.github/workflows/build-and-push.yml new file mode 100644 index 00000000..1714e4b0 --- /dev/null +++ b/Spectacles-2-Unitree/.github/workflows/build-and-push.yml @@ -0,0 +1,80 @@ +name: Build and Push Docker Images +on: + push: + pull_request: + workflow_dispatch: +permissions: + id-token: write + contents: read + packages: write +env: + URL: ghcr.io/${{ github.repository }} +jobs: + build-and-push: + permissions: + id-token: write + contents: read + packages: write + runs-on: ubuntu-latest + strategy: + matrix: + container: + - context: . + file: .devcontainer/Dockerfile + name: dev + platforms: linux/arm64 + - context: unitree-client + file: unitree-client/Dockerfile + name: client + target: runtime + platforms: linux/arm64 + - context: coordination-server + file: coordination-server/Dockerfile + name: server + platforms: linux/amd64 + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + lfs: true + - run: git lfs pull + - name: Log in to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Docker meta + id: meta + uses: docker/metadata-action@v5 + with: + images: ${{ env.URL }}.${{ matrix.container.name}} + flavor: | + latest=true + tags: | + type=ref,event=branch + type=ref,event=pr + type=ref,event=tag + type=sha + - name: QEMU + uses: docker/setup-qemu-action@v3 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + with: + version: latest + driver-opts: image=moby/buildkit:latest + - name: Build and Push + uses: docker/build-push-action@v6 + with: + context: ${{ matrix.container.context }} + file: ${{ matrix.container.file }} + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + platforms: ${{ matrix.container.platforms }} + target: ${{ matrix.container.target }} + push: true + pull: true + cache-from: | + type=gha,scope=${{ matrix.container.name }} + type=registry,ref=${{ env.URL }}.${{ matrix.container.name }}:cache + cache-to: type=gha,mode=max,scope=${{ matrix.container.name }} diff --git a/Spectacles-2-Unitree/.gitignore b/Spectacles-2-Unitree/.gitignore new file mode 100644 index 00000000..2761cf3f --- /dev/null +++ b/Spectacles-2-Unitree/.gitignore @@ -0,0 +1,16 @@ +# Shipped by Lens Studio +Cache/** +PluginsUserPreferences/** +Support/** +BackUp/** +Workspaces/** +.vscode/** +jsconfig.json +tsconfig.json +.DS_Store +*.lock +# Shipped by Lens Studio +# Python +.venv +*.egg-info +__pycache__ diff --git a/Spectacles-2-Unitree/ATTRIBUTION.md b/Spectacles-2-Unitree/ATTRIBUTION.md new file mode 100644 index 00000000..5132b697 --- /dev/null +++ b/Spectacles-2-Unitree/ATTRIBUTION.md @@ -0,0 +1,23 @@ +# Third Party License Information + +- This project uses Python source, STL, and URDF files from [Unitree](https://github.com/unitreerobotics/avp_teleoperate/blob/main/LICENSE), originally licensed under the Apache 2.0 License: + - [unitree-client/src/ik/urdf/](./unitree-client/src/ik/urdf/) + - [unitree-client/src/ik/utils/](./unitree-client/src/ik/utils/) + - [unitree-client/src/ik/g1_controller.py](./unitree-client/src/ik/g1_controller.py) + - [unitree-client/src/ik/g1_solver.py](./unitree-client/src/ik/g1_solver.py), modifications licensed under the [MIT License](./LICENSE). +- Python dependencies are not included in the source code, and are gathered as part of the build process for the Docker images via PyPi and conda-forge: + - [aiohttp](https://github.com/aio-libs/aiohttp/blob/master/LICENSE.txt) (Apache 2.0 License) + - [aiohttp-jinja2](https://github.com/aio-libs/aiohttp-jinja2/blob/master/LICENSE) (Apache 2.0 License) + - [asyncio](https://github.com/python/cpython/blob/main/LICENSE) (Python Software Foundation License) - Part of Python Standard Library + - [casadi](https://github.com/casadi/casadi/blob/develop/LICENSE.txt) (LGPL v3) + - [ipython](https://github.com/ipython/ipython/blob/main/LICENSE) (BSD 3-Clause License) + - [jinja2](https://github.com/pallets/jinja/blob/main/LICENSE.txt) (BSD 3-Clause License) + - [mujoco](https://github.com/google-deepmind/mujoco/blob/main/LICENSE) (Apache 2.0 License) + - [numpy](https://github.com/numpy/numpy/blob/main/LICENSE.txt) (BSD 3-Clause License) + - [opencv-contrib-python-headless](https://github.com/opencv/opencv-python/blob/master/LICENSE.txt) (MIT) + - [pillow](https://github.com/python-pillow/Pillow/blob/main/LICENSE) (MIT-CMU License) + - [pinocchio](https://github.com/stack-of-tasks/pinocchio/blob/master/LICENSE) (BSD 2-Clause License) + - [pip](https://github.com/pypa/pip/blob/main/LICENSE.txt) (MIT License) + - [pyzmq](https://github.com/zeromq/pyzmq/blob/main/LICENSE.md) (BSD 3-Clause License) + - [scipy](https://github.com/scipy/scipy/blob/main/LICENSE.txt) (BSD 3-Clause License) + - [websockets](https://github.com/aaugustin/websockets/blob/main/LICENSE) (BSD 3-Clause License) \ No newline at end of file diff --git a/Spectacles-2-Unitree/Assets/Base.png b/Spectacles-2-Unitree/Assets/Base.png new file mode 100644 index 00000000..1634b508 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Base.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cfd8423521180c6c746030558b626228586a382de0f6e6623ee8c5183804a3d +size 1370 diff --git a/Spectacles-2-Unitree/Assets/Base.png.meta b/Spectacles-2-Unitree/Assets/Base.png.meta new file mode 100644 index 00000000..16baa3d8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Base.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 093e6eaf-54cf-48bd-8d5a-346e6dea3dd7 + ImporterName: FileTextureImporter + PrimaryAsset: ! 093e6eaf-54cf-48bd-8d5a-346e6dea3dd7 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium diff --git a/Spectacles-2-Unitree/Assets/Device Camera Texture.deviceCameraTexture b/Spectacles-2-Unitree/Assets/Device Camera Texture.deviceCameraTexture new file mode 100644 index 00000000..0d50bea0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Device Camera Texture.deviceCameraTexture @@ -0,0 +1,2 @@ +- ! + PackagePath: "" diff --git a/Spectacles-2-Unitree/Assets/Device Camera Texture.deviceCameraTexture.meta b/Spectacles-2-Unitree/Assets/Device Camera Texture.deviceCameraTexture.meta new file mode 100644 index 00000000..67026e1c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Device Camera Texture.deviceCameraTexture.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Texture: ! 996c6f4e-b2ad-4117-9e3e-3db82e6e97f5 + ImporterName: DeviceCameraTextureImporter + PrimaryAsset: ! 996c6f4e-b2ad-4117-9e3e-3db82e6e97f5 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/Echopark.hdr b/Spectacles-2-Unitree/Assets/Echopark.hdr new file mode 100644 index 00000000..3f52fab0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Echopark.hdr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f718a37e096b94af7cd15a6c6142e7ec0386887b756b9cdced63f1fc71b38d4 +size 1495252 diff --git a/Spectacles-2-Unitree/Assets/Echopark.hdr.meta b/Spectacles-2-Unitree/Assets/Echopark.hdr.meta new file mode 100644 index 00000000..72e7722c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Echopark.hdr.meta @@ -0,0 +1,18 @@ +- ! + ImportedAssetIds: + Diffuse: ! afde1835-875a-4672-9a39-ba23cfd936bf + Specular: ! 2fda0d5e-3f7d-4d0d-a4b5-a911aa775787 + ImporterName: EnvmapTextureImporter + PrimaryAsset: ! 00000000-0000-0000-0000-000000000000 + PackageType: LegacyPackage + PackagePolicy: CanBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ImageQuality: Normal + SpecularImageResolution: Medium + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/Image.mat b/Spectacles-2-Unitree/Assets/Image.mat new file mode 100644 index 00000000..9753c5d8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Image.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 8e5e83aa-575b-4d41-b93b-dc62968eb2f6 +- ! + CachedProperties: + - Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + - ENABLE_BASE_TEX + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: f7c0ecfc-f7ba-44b8-bd24-62337451798a + sampler: + filteringMode: Trilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 11d16b8f-d694-4051-b9fb-fd4d097b0cb8 diff --git a/Spectacles-2-Unitree/Assets/Image.mat.meta b/Spectacles-2-Unitree/Assets/Image.mat.meta new file mode 100644 index 00000000..3ac370ea --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Image.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! c412b735-9316-498c-9999-21f28326f2a7 + ImporterName: MaterialImporter + PrimaryAsset: ! c412b735-9316-498c-9999-21f28326f2a7 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Joystick/Base.png b/Spectacles-2-Unitree/Assets/Joystick/Base.png new file mode 100644 index 00000000..1634b508 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Base.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cfd8423521180c6c746030558b626228586a382de0f6e6623ee8c5183804a3d +size 1370 diff --git a/Spectacles-2-Unitree/Assets/Joystick/Base.png.meta b/Spectacles-2-Unitree/Assets/Joystick/Base.png.meta new file mode 100644 index 00000000..3fc20ce2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Base.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 2b90fb2b-deb9-498e-8ff6-ce0dbf4ac26c + ImporterName: FileTextureImporter + PrimaryAsset: ! 2b90fb2b-deb9-498e-8ff6-ce0dbf4ac26c + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium diff --git a/Spectacles-2-Unitree/Assets/Joystick/Cylinder.fbx b/Spectacles-2-Unitree/Assets/Joystick/Cylinder.fbx new file mode 100644 index 00000000..3d954f2f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Cylinder.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:369e11b255c139f4129125b800b5133380e906707414f6184bdc6a7eddbebb24 +size 12396 diff --git a/Spectacles-2-Unitree/Assets/Joystick/Cylinder.fbx.meta b/Spectacles-2-Unitree/Assets/Joystick/Cylinder.fbx.meta new file mode 100644 index 00000000..d596dd72 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Cylinder.fbx.meta @@ -0,0 +1,105 @@ +- ! + ImportedAssetIds: + 0edc0b811f1d76e2: ! 651eea3e-e7e3-4658-8b56-3c94c1e58dff + 2fe651d50e3f5cdf: ! 3fbc4387-0b6b-4817-aba6-e17b55bc3221 + 66780cf3a4dcb2b8: ! 81ae0752-a4e8-4a4c-80c4-a382860e8702 + Meshes/Cylinder: ! c3a5c848-4468-48d2-9df0-0c9778bb7552 + Scene: ! e3215c38-5e1f-4f04-a28b-fe123299612d + ImporterName: FbxImporter + PrimaryAsset: ! e3215c38-5e1f-4f04-a28b-fe123299612d + PackageType: LegacyPackage + PackagePolicy: CanBeUnpacked + ExtraData: + {} + AssetDataMap: + Scene: ! 0ec58c07-d94b-4133-ad47-ed91a948da9f + DependentFiles: + [] + ImporterSettings: ! + UseLegacyImporter: false + WithMaterials: true + NamingConvention: ByCategorySanitize + PersistentIdGenerationAlgorithm: DescriptorBased + AnimationCurveOptimization: true + CustomAnimationSamplingRate: 30.000000 + ImportVertexColor: true + ImportTangentsAndBinormals: true + RegenerateTangentsAndBinormals: false + RegenerateNormalsForSkinnedMeshes: true + ImportBlendShapeAnimation: true + ImportVertexAnimation: true + GeneratePivots: true + TriangulateNURBS: true + UseLegacyFbxLoader: false + CompressionSettings: ! + Presets: + None Compression: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtensionMappings: + mesh: None Compression + Overrides: + {} +- ! + SourceRemaps: + - 0354ea87-c025-440c-9419-6dfc59b9ade2: 1699b635-28a8-420d-94d1-d7cadfa6adec + - 7aa1d913-8f98-4438-9126-310e5510a4f1: 775ed927-8a13-4568-a077-74787a09714c + - a40b3800-3ad6-4bd6-a686-13843fd6bef8: ef917935-7bb5-418a-95d7-16392ddbc33f + - e3215c38-5e1f-4f04-a28b-fe123299612d: 981f13d8-2cc6-4496-99b4-5e8f8d535c64 + SourceState: ! 981f13d8-2cc6-4496-99b4-5e8f8d535c64 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + [] + Mesh: ! c3a5c848-4468-48d2-9df0-0c9778bb7552 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Cylinder + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1699b635-28a8-420d-94d1-d7cadfa6adec +- ! + PackagePath: "" + objects: + - ! ef917935-7bb5-418a-95d7-16392ddbc33f + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Cylinder + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 775ed927-8a13-4568-a077-74787a09714c + Components: + [] diff --git a/Spectacles-2-Unitree/Assets/Joystick/ImageMaterial.mat b/Spectacles-2-Unitree/Assets/Joystick/ImageMaterial.mat new file mode 100644 index 00000000..4e3daa51 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/ImageMaterial.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 5542ac3f-c80d-43e5-a892-e6f199cfbe85 +- ! + CachedProperties: + - Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.830000} + baseTex: + typeIdx: 9 + value: + id: 4862c6b3-6c6b-4b6d-a323-1fbe4c6ce2a1 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! ed11a32f-2415-41b3-8eac-cfb2cd729437 diff --git a/Spectacles-2-Unitree/Assets/Joystick/ImageMaterial.mat.meta b/Spectacles-2-Unitree/Assets/Joystick/ImageMaterial.mat.meta new file mode 100644 index 00000000..f34286b3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/ImageMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! dcf513cc-3b47-48eb-a7c8-1825fba52216 + ImporterName: MaterialImporter + PrimaryAsset: ! dcf513cc-3b47-48eb-a7c8-1825fba52216 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Joystick/Joystick.prefab b/Spectacles-2-Unitree/Assets/Joystick/Joystick.prefab new file mode 100644 index 00000000..a9b40cde --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Joystick.prefab @@ -0,0 +1,298 @@ +- ! + PackagePath: "" + objects: + - ! a0d1c19f-3a8c-4c92-a02b-f115e89fb3ce + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Radius: 6.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 3.645104, y: 3.645104, z: 3.645104} + hasSegmentScaleCompensation: false + Children: + - ! c584c132-37b0-4945-831d-fe91dd59ef35 + Components: + - ! fe131a8f-0219-45ea-ade8-fc0f1d7c48d2 + - ! 22ce32c6-57f8-4526-9f66-6d7d2805d5ae + - ! 9f8f7a3f-199b-40b1-8c46-0869a8c8e457 + - ! 4504672c-47d6-4351-b0f7-bdbcddeefd77 + - ! e2719e11-8f89-4bdb-b462-7fc9315f7ec2 + - ! ea29a1e8-1895-4e61-abfe-6ee850841dd1 + - ! 4eba8cc3-7469-47be-9833-a8e502fe50e8 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + ScriptAsset: ! 9b59ee1c-abca-4e6b-9e2e-a9a5884bc389 + ScriptInputsDefault: + moveSpeed: true + deadzone: true + cardinalWindowDegrees: true + client: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + joystickObject: ! 25a7a1ab-5e91-4626-8d76-670866dfa5a7 + robotObject: ! 84bafc52-ea01-4f87-a412-867fae0effac + rightIndexFinger: ! d180e208-2df8-4507-8437-213a1fbd5da6 + leftIndexFinger: ! 1ab3fbdf-e28e-45a8-943d-76938ac530b4 + rightThumb: ! 1b6d2315-e870-4a05-9817-029318f16b5a + leftThumb: ! 60037818-559f-4345-ac44-f7c5dfc86f3c + moveSpeed: ! 0.000000 + deadzone: 0.100000 + cardinalWindowDegrees: ! 15.000000 + client: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! dcf513cc-3b47-48eb-a7c8-1825fba52216 + Mesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! c3a5c848-4468-48d2-9df0-0c9778bb7552 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 25a7a1ab-5e91-4626-8d76-670866dfa5a7 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 14.315620, y: -24.865599, z: -37.412357} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 25a7a1ab-5e91-4626-8d76-670866dfa5a7 + - ! e7a4755d-7eb1-47d7-b744-c8e4232212fa + Components: + [] +- ! + PrefabRemaps: + [] + Name: Cylinder + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -0.760220, z: 0.000000} + rotation: {x: 90.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.100000, y: 0.100000, z: 0.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 94fb5544-22f6-43b0-a482-ee45d1056712 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! 4504672c-47d6-4351-b0f7-bdbcddeefd77 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: JoystickPlane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -3.230324, z: 0.000000} + rotation: {x: -90.000008, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7bc670b3-df3f-44c6-ae49-73b4ea111638 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/Joystick/Joystick.prefab.meta b/Spectacles-2-Unitree/Assets/Joystick/Joystick.prefab.meta new file mode 100644 index 00000000..2b15636c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Joystick.prefab.meta @@ -0,0 +1,331 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 8f266568-bb9b-448b-a04a-bf2fdc7f4444 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 8f266568-bb9b-448b-a04a-bf2fdc7f4444 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + ObjectPrefab: ! 34dbacad-f069-49f3-b92f-49aa929aba7f + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: JoystickPlane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -3.230324, z: 0.000000} + rotation: {x: -90.000008, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9b6ea3e9-228c-4cd1-8ab6-9b61ad25092c +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 9134f32e-3f21-4bf9-a3e8-86c7137c9119 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + SourceRemaps: + - 22ce32c6-57f8-4526-9f66-6d7d2805d5ae: b1f81d55-7d96-43c4-bd47-cea32d40b358 + - 25a7a1ab-5e91-4626-8d76-670866dfa5a7: 9134f32e-3f21-4bf9-a3e8-86c7137c9119 + - 4504672c-47d6-4351-b0f7-bdbcddeefd77: ded34553-30b8-4c11-95a2-8195103f8858 + - 4eba8cc3-7469-47be-9833-a8e502fe50e8: 69b05356-b455-44c1-b3b5-9d84463d8230 + - 7bc670b3-df3f-44c6-ae49-73b4ea111638: 9b6ea3e9-228c-4cd1-8ab6-9b61ad25092c + - 8f266568-bb9b-448b-a04a-bf2fdc7f4444: 37f349f8-5806-4c41-ada5-5a69dd788a76 + - 94fb5544-22f6-43b0-a482-ee45d1056712: fb29ff3d-dcdd-48ca-b6bc-034179856966 + - 9f8f7a3f-199b-40b1-8c46-0869a8c8e457: 1a18b875-55b3-4d25-ae27-71a9585a2776 + - a0d1c19f-3a8c-4c92-a02b-f115e89fb3ce: 688b33b7-f62e-4041-a69b-597cc4a28ea1 + - c584c132-37b0-4945-831d-fe91dd59ef35: 81c5793c-c420-4e4b-bc63-b5fc522ed368 + - e2719e11-8f89-4bdb-b462-7fc9315f7ec2: 5bc7100c-5eca-4002-aac1-c3c6830ded4f + - e7a4755d-7eb1-47d7-b744-c8e4232212fa: 03fabfa6-e9bb-4b0f-ad43-2e93c6e76952 + - ea29a1e8-1895-4e61-abfe-6ee850841dd1: d41cd63a-1d4e-4688-8b47-7688a65e004d + - fe131a8f-0219-45ea-ade8-fc0f1d7c48d2: fcb84540-6e86-461e-be43-ff2a1447061b + SourceState: ! 37f349f8-5806-4c41-ada5-5a69dd788a76 +- ! + PackagePath: "" + objects: + - ! 688b33b7-f62e-4041-a69b-597cc4a28ea1 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! ded34553-30b8-4c11-95a2-8195103f8858 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 14.315620, y: -24.865599, z: -37.412357} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9134f32e-3f21-4bf9-a3e8-86c7137c9119 + - ! 03fabfa6-e9bb-4b0f-ad43-2e93c6e76952 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + ScriptAsset: ! 9b59ee1c-abca-4e6b-9e2e-a9a5884bc389 + ScriptInputsDefault: + moveSpeed: true + deadzone: true + cardinalWindowDegrees: true + client: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + joystickObject: ! 9134f32e-3f21-4bf9-a3e8-86c7137c9119 + robotObject: ! 84bafc52-ea01-4f87-a412-867fae0effac + rightIndexFinger: ! d180e208-2df8-4507-8437-213a1fbd5da6 + leftIndexFinger: ! 1ab3fbdf-e28e-45a8-943d-76938ac530b4 + rightThumb: ! 1b6d2315-e870-4a05-9817-029318f16b5a + leftThumb: ! 60037818-559f-4345-ac44-f7c5dfc86f3c + moveSpeed: ! 0.000000 + deadzone: 0.100000 + cardinalWindowDegrees: ! 15.000000 + client: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Cylinder + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -0.760220, z: 0.000000} + rotation: {x: 90.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.100000, y: 0.100000, z: 0.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! fb29ff3d-dcdd-48ca-b6bc-034179856966 +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 3.645104, y: 3.645104, z: 3.645104} + hasSegmentScaleCompensation: false + Children: + - ! 81c5793c-c420-4e4b-bc63-b5fc522ed368 + Components: + - ! fcb84540-6e86-461e-be43-ff2a1447061b + - ! b1f81d55-7d96-43c4-bd47-cea32d40b358 + - ! 1a18b875-55b3-4d25-ae27-71a9585a2776 + - ! ded34553-30b8-4c11-95a2-8195103f8858 + - ! 5bc7100c-5eca-4002-aac1-c3c6830ded4f + - ! d41cd63a-1d4e-4688-8b47-7688a65e004d + - ! 69b05356-b455-44c1-b3b5-9d84463d8230 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! dcf513cc-3b47-48eb-a7c8-1825fba52216 + Mesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Radius: 6.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! c3a5c848-4468-48d2-9df0-0c9778bb7552 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/Joystick/Joystick.ts b/Spectacles-2-Unitree/Assets/Joystick/Joystick.ts new file mode 100644 index 00000000..fb1e7db4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Joystick.ts @@ -0,0 +1,270 @@ +import { CoordinationClient, FORWARD_SPEED_MAX, LATERAL_SPEED_MAX, ROTATION_SPEED_MAX } from "../Unitree2Spectacles/Scripts/TS/CoordinationClient"; + +@component +export class Joystick extends BaseScriptComponent +{ + @input + joystickObject: SceneObject; + @input + robotObject: SceneObject; + + @input + rightIndexFinger: SceneObject; + @input + leftIndexFinger: SceneObject; + + @input + rightThumb: SceneObject; + @input + leftThumb: SceneObject; + + @input + moveSpeed: number; + + @input + deadzone: number = 0.1; // Small deadzone. + + @input + cardinalWindowDegrees: number = 15; // 15° window for cardinal directions where movement is locked to one axis. + + @input('Component.ScriptComponent') + client: CoordinationClient; + + joystickTransform: Transform; + robotTransform: Transform; + + rightIndexFingerTransform: Transform; //called "index-3" + leftIndexFingerTransform: Transform; //called "index-3" + rightThumbTransform: Transform; //called "thumb-3" + leftThumbTransform: Transform; //called "thumb-3" + + rightHandPinching: Boolean; + leftHandPinching: Boolean; + rightHandPinchingPrev: Boolean; + leftHandPinchingPrev: Boolean; + + startPosition: vec3; + rightPinchStartPosition: vec3; + leftPinchStartPosition: vec3; + rightPinchPosition: vec3; + leftPinchPosition: vec3; + + pinchStartedOnJoystick: Boolean; + + readonly maxSpeed: number = 5.0; // Maximum speed units per second + + kicking: Boolean = false; + + isEditor: Boolean; + + jxSmoothed: number = 0; + jySmoothed: number = 0; + + scale: number = 4; // Scale factor for clamping + + //JOYSTICK POSITION VARIABLES + jx: number = 0; + jy: number = 0; + + onAwake() + { + this.isEditor = typeof require === 'function'; + + print("is editor: " + this.isEditor); + + this.joystickTransform = this.joystickObject.getTransform(); + this.robotTransform = this.robotObject.getTransform(); + this.rightIndexFingerTransform = this.rightIndexFinger.getTransform(); + this.leftIndexFingerTransform = this.leftIndexFinger.getTransform(); + this.rightThumbTransform = this.rightThumb.getTransform(); + this.leftThumbTransform = this.leftThumb.getTransform(); + this.startPosition = this.joystickTransform.getLocalPosition(); + this.createEvent("UpdateEvent").bind(this.onUpdate.bind(this)); + this.createEvent("LateUpdateEvent").bind(this.onLateUpdate.bind(this)); + } + + onUpdate() + { + // Check distance between right index finger and thumb + const rightFingerPos = this.rightIndexFingerTransform.getWorldPosition(); + const rightThumbPos = this.rightThumbTransform.getWorldPosition(); + const rightHandDistance = rightFingerPos.distance(rightThumbPos); + + const leftFingerPos = this.leftIndexFingerTransform.getWorldPosition(); + const leftThumbPos = this.leftThumbTransform.getWorldPosition(); + const leftHandDistance = leftFingerPos.distance(leftThumbPos); + + this.rightHandPinchingPrev = this.rightHandPinching; + this.leftHandPinchingPrev = this.leftHandPinching; + this.rightHandPinching = (rightHandDistance < 2); + this.leftHandPinching = (leftHandDistance < 2); + + var justPinchedRightHand = false; + var justPinchedLeftHand = false; + + if (this.rightHandPinching) + { + if (!this.rightHandPinchingPrev) + { + justPinchedRightHand = true; + // Calculate average point between right thumb and index finger + this.rightPinchStartPosition = new vec3( + (rightFingerPos.x + rightThumbPos.x) / 2, + (rightFingerPos.y + rightThumbPos.y) / 2, + (rightFingerPos.z + rightThumbPos.z) / 2 + ); + // Only set pinchStartedOnJoystick if pinch occurred near joystick + const joystickPos = this.joystickTransform.getWorldPosition(); + const distanceToJoystick = this.rightPinchStartPosition.distance(joystickPos); + const grabRadius = 0.1; // Adjust this value as needed + this.pinchStartedOnJoystick = distanceToJoystick < grabRadius; + } + + this.rightPinchPosition = new vec3( + (rightFingerPos.x + rightThumbPos.x) / 2, + (rightFingerPos.y + rightThumbPos.y) / 2, + (rightFingerPos.z + rightThumbPos.z) / 2 + ); + } + + if (this.leftHandPinching) + { + if (!this.leftHandPinchingPrev) + { + justPinchedLeftHand = true; + // Calculate average point between left thumb and index finger + this.leftPinchStartPosition = new vec3( + (leftFingerPos.x + leftThumbPos.x) / 2, + (leftFingerPos.y + leftThumbPos.y) / 2, + (leftFingerPos.z + leftThumbPos.z) / 2 + ); + } + + this.leftPinchPosition = new vec3( + (leftFingerPos.x + leftThumbPos.x) / 2, + (leftFingerPos.y + leftThumbPos.y) / 2, + (leftFingerPos.z + leftThumbPos.z) / 2 + ); + } + + if (this.isEditor) + { + //editor joystick controls + this.jx = this.joystickTransform.getLocalPosition().x - this.startPosition.x; + this.jy = this.joystickTransform.getLocalPosition().z - this.startPosition.z; + this.jy -= this.joystickTransform.getLocalPosition().y - this.startPosition.y; + this.joystickTransform.setLocalPosition(this.startPosition); + } + + if (this.rightHandPinching && this.pinchStartedOnJoystick) + { + this.jx = this.rightPinchPosition.x - this.rightPinchStartPosition.x; + this.jy = this.rightPinchPosition.z - this.rightPinchStartPosition.z; + this.jy -= this.rightPinchPosition.y - this.rightPinchStartPosition.y; + + //this.joystickTransform.setWorldPosition(this.rightPinchStartPosition); + + this.joystickTransform.setWorldPosition(this.rightPinchPosition); + } + else + { + //this.joystickTransform.setWorldScale(new vec3(3.6, 3.6, 3.6)); + } + + this.jx /= this.scale; + this.jy /= this.scale; + + this.jx = Math.max(-1, Math.min(1, this.jx)); + this.jy = Math.max(-1, Math.min(1, this.jy)); + + print("joystick position = [" + this.jx.toFixed(2) + ", " + this.jy.toFixed(2) + "]"); + + this.calculateAndSendMovement(); + } + + onLateUpdate() + { + const currentPosition = this.joystickTransform.getLocalPosition(); + + // Calculate offset from start position + const offsetX = currentPosition.x - this.startPosition.x; + const offsetY = currentPosition.y - this.startPosition.y; + const offsetZ = currentPosition.z - this.startPosition.z; + + // Clamp the offsets + const clampedPosition = new vec3( + this.startPosition.x + Math.max(-this.scale, Math.min(this.scale, offsetX)), + this.startPosition.y, + this.startPosition.z + Math.max(-this.scale, Math.min(this.scale, offsetZ)) + ); + + this.joystickTransform.setLocalPosition(clampedPosition); + + // Zero out the rotation of the joystick + this.joystickTransform.setLocalRotation(quat.fromEulerAngles(0, 0, 0)); + } + + + private calculateAndSendMovement() { + // Deadzone + let jxNorm = Math.abs(this.jx) < this.deadzone ? 0 : this.jx; + let jyNorm = Math.abs(this.jy) < this.deadzone ? 0 : this.jy; + + const magnitude = Math.sqrt(jxNorm * jxNorm + jyNorm * jyNorm); + + if (magnitude < this.deadzone) { + // If within deadzone, don't move + this.client.sendMovement(0, 0, 0); + return; + } + + // Normalize to ensure max magnitude is 1.0 + if (magnitude > 1.0) { + jxNorm /= magnitude; + jyNorm /= magnitude; + } + + // Calculate angle in degrees (0° is up/forward, 90° is right) + let angleDegrees = Math.atan2(jxNorm, jyNorm) * (180 / Math.PI); + if (angleDegrees < 0) angleDegrees += 360; + + // Initialize movement variables + let forward = 0; + let lateral = 0; + let yaw = 0; + + // Check for cardinal directions (using 15° windows) + const isForward = this.isInCardinalWindow(angleDegrees, 0); + const isRight = this.isInCardinalWindow(angleDegrees, 90); + const isBackward = this.isInCardinalWindow(angleDegrees, 180); + const isLeft = this.isInCardinalWindow(angleDegrees, 270); + + // Apply movement based on cardinal direction + if (isForward) { + forward = magnitude * FORWARD_SPEED_MAX; + } else if (isBackward) { + forward = -magnitude * FORWARD_SPEED_MAX; + } else if (isRight) { + lateral = magnitude * LATERAL_SPEED_MAX; + } else if (isLeft) { + lateral = -magnitude * LATERAL_SPEED_MAX; + } else { + // For diagonal movements, calculate components and yaw + forward = jyNorm * FORWARD_SPEED_MAX; + lateral = jxNorm * LATERAL_SPEED_MAX; + + // Calculate yaw based on how far from forward/backward axis + // More yaw when moving sideways, less when moving forward/backward + const yawFactor = Math.abs(jxNorm) / (Math.abs(jxNorm) + Math.abs(jyNorm)); + yaw = jxNorm * ROTATION_SPEED_MAX * yawFactor; + } + + // Send movement command to the robot + this.client.sendMovement(forward, lateral, yaw); + } + + private isInCardinalWindow(angle: number, direction: number): boolean { + const diff = Math.abs((angle - direction + 360) % 360); + return diff < this.cardinalWindowDegrees || diff >= (360 - this.cardinalWindowDegrees); + } +} diff --git a/Spectacles-2-Unitree/Assets/Joystick/Joystick.ts.meta b/Spectacles-2-Unitree/Assets/Joystick/Joystick.ts.meta new file mode 100644 index 00000000..14bcf25c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Joystick.ts.meta @@ -0,0 +1,65 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 9b59ee1c-abca-4e6b-9e2e-a9a5884bc389 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 9b59ee1c-abca-4e6b-9e2e-a9a5884bc389 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + TypeScriptAsset: ! e7e7f978-527b-4ab9-9621-aed369716a15 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + cardinalWindowDegrees: false + client: false + deadzone: false + joystickObject: false + leftIndexFinger: false + leftThumb: false + moveSpeed: false + rightIndexFinger: false + rightThumb: false + robotObject: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - joystickObject: ! 00000000-0000-0000-0000-000000000000 + rightIndexFinger: ! 00000000-0000-0000-0000-000000000000 + leftIndexFinger: ! 00000000-0000-0000-0000-000000000000 + rightThumb: ! 00000000-0000-0000-0000-000000000000 + leftThumb: ! 00000000-0000-0000-0000-000000000000 + moveSpeed: ! 0.000000 + robotObject: ! 00000000-0000-0000-0000-000000000000 + deadzone: 0.100000 + cardinalWindowDegrees: ! 15.000000 + client: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - // @input SceneObject joystickObject + - // @input SceneObject robotObject + - // @input SceneObject rightIndexFinger + - // @input SceneObject leftIndexFinger + - // @input SceneObject rightThumb + - // @input SceneObject leftThumb + - // @input float moveSpeed + - // @input float deadzone = 0.1 + - // @input float cardinalWindowDegrees = 15 + - // @input Component.ScriptComponent client diff --git a/Spectacles-2-Unitree/Assets/Joystick/JoystickInner.prefab b/Spectacles-2-Unitree/Assets/Joystick/JoystickInner.prefab new file mode 100644 index 00000000..592abbae --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/JoystickInner.prefab @@ -0,0 +1,207 @@ +- ! + PackagePath: "" + objects: + - ! 55847278-3293-4af2-9f42-44ea3ffb53ea + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.309025, y: -34.000000, z: -31.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 3.645104, y: 3.645104, z: 3.645104} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 66df1500-d300-4aad-983d-97255191bf90 + - ! 7f0c59ca-5620-4202-9afb-d0eeb66b95fb + - ! 75cf1d14-7574-4e73-bdbe-6a782f03ce86 + - ! 9ad35435-d450-4cf0-81a4-96a283b4814b + - ! 8120ce6a-1029-4b67-b649-b99d199dc703 + - ! 9c50ae2a-f7d3-40b4-8710-cb0f5b1be02c + - ! c362c261-eae1-441e-b583-166a38382ca2 +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + ScriptAsset: ! 2de985bb-051f-4e22-b6eb-4177ba1b20aa + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + joystickObject: ! 55847278-3293-4af2-9f42-44ea3ffb53ea + playerObject: ! 6f721893-d700-4dfd-94b0-99df12fcf240 + rightIndexFinger: ! d180e208-2df8-4507-8437-213a1fbd5da6 + leftIndexFinger: ! 1ab3fbdf-e28e-45a8-943d-76938ac530b4 + rightThumb: ! 1b6d2315-e870-4a05-9817-029318f16b5a + leftThumb: ! 60037818-559f-4345-ac44-f7c5dfc86f3c + ball: ! e24cb0c9-bf40-4808-ba9a-570c077dbd14 + playerControls: ! 499f70a7-a91d-4d95-bbd4-209c9506d3f7 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Radius: 6.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 55847278-3293-4af2-9f42-44ea3ffb53ea + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! 8120ce6a-1029-4b67-b649-b99d199dc703 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/Joystick/JoystickInner.prefab.meta b/Spectacles-2-Unitree/Assets/Joystick/JoystickInner.prefab.meta new file mode 100644 index 00000000..031781f3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/JoystickInner.prefab.meta @@ -0,0 +1,235 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! f42cb916-c0ac-4c5a-9bed-324ba16e3750 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! f42cb916-c0ac-4c5a-9bed-324ba16e3750 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + ObjectPrefab: ! 4591f732-033c-4526-bd25-0b24331cb8b9 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! e034657a-4af0-4a1d-a7b6-05f0dae6f323 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 6c997507-e9d1-44cd-9bb5-0a1bd3b4b22b + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + SourceRemaps: + - 55847278-3293-4af2-9f42-44ea3ffb53ea: 6c997507-e9d1-44cd-9bb5-0a1bd3b4b22b + - 66df1500-d300-4aad-983d-97255191bf90: 71e3faba-442d-46d6-b03a-a0ee5ded52d3 + - 75cf1d14-7574-4e73-bdbe-6a782f03ce86: f9ff0622-cab2-4b97-80eb-193aa6695edd + - 7f0c59ca-5620-4202-9afb-d0eeb66b95fb: 511b95fb-df0d-4c9a-8b93-62970c345f86 + - 8120ce6a-1029-4b67-b649-b99d199dc703: e034657a-4af0-4a1d-a7b6-05f0dae6f323 + - 9ad35435-d450-4cf0-81a4-96a283b4814b: 28a93f2f-522b-460d-a3e3-3aef65d3cc62 + - 9c50ae2a-f7d3-40b4-8710-cb0f5b1be02c: 231b0da0-850d-424d-b28c-7b27c6bf5ad1 + - c362c261-eae1-441e-b583-166a38382ca2: cdeafd1d-7884-4d48-b099-eba219acc828 + - f42cb916-c0ac-4c5a-9bed-324ba16e3750: a15d28a1-dd2a-42ee-afe0-60905586ce65 + SourceState: ! a15d28a1-dd2a-42ee-afe0-60905586ce65 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.309025, y: -34.000000, z: -31.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 3.645104, y: 3.645104, z: 3.645104} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 71e3faba-442d-46d6-b03a-a0ee5ded52d3 + - ! 511b95fb-df0d-4c9a-8b93-62970c345f86 + - ! f9ff0622-cab2-4b97-80eb-193aa6695edd + - ! 28a93f2f-522b-460d-a3e3-3aef65d3cc62 + - ! e034657a-4af0-4a1d-a7b6-05f0dae6f323 + - ! 231b0da0-850d-424d-b28c-7b27c6bf5ad1 + - ! cdeafd1d-7884-4d48-b099-eba219acc828 +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + ScriptAsset: ! 2de985bb-051f-4e22-b6eb-4177ba1b20aa + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + joystickObject: ! 6c997507-e9d1-44cd-9bb5-0a1bd3b4b22b + playerObject: ! 6f721893-d700-4dfd-94b0-99df12fcf240 + rightIndexFinger: ! d180e208-2df8-4507-8437-213a1fbd5da6 + leftIndexFinger: ! 1ab3fbdf-e28e-45a8-943d-76938ac530b4 + rightThumb: ! 1b6d2315-e870-4a05-9817-029318f16b5a + leftThumb: ! 60037818-559f-4345-ac44-f7c5dfc86f3c + ball: ! e24cb0c9-bf40-4808-ba9a-570c077dbd14 + playerControls: ! 499f70a7-a91d-4d95-bbd4-209c9506d3f7 + ScriptTypes: + "": + {} +- ! + PackagePath: "" + objects: + - ! 6c997507-e9d1-44cd-9bb5-0a1bd3b4b22b + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Radius: 6.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 diff --git a/Spectacles-2-Unitree/Assets/Joystick/JoystickPlane.mat b/Spectacles-2-Unitree/Assets/Joystick/JoystickPlane.mat new file mode 100644 index 00000000..9b1607d3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/JoystickPlane.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 1d2761c0-a1f3-46b0-90a2-6952fa4db335 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_LIGHTING + - ENABLE_NORMALMAP + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N016: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Emissive_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + Port_SpecularAO_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseTex: + typeIdx: 9 + value: + id: 5e57c669-2619-4caf-b769-1f5e422bb9df + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTex: + typeIdx: 9 + value: + id: a3034842-01f6-48b3-bc04-8c8431f83655 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + materialParamsTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + materialParamsTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTex: + typeIdx: 9 + value: + id: 632949d2-aeaa-4d1c-99ca-13eb8485c1e0 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + uvScale: + typeIdx: 1 + value: 1.000000 + Pass: ! a897088d-8563-486d-ba79-098666bbca21 diff --git a/Spectacles-2-Unitree/Assets/Joystick/JoystickPlane.mat.meta b/Spectacles-2-Unitree/Assets/Joystick/JoystickPlane.mat.meta new file mode 100644 index 00000000..f97a001b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/JoystickPlane.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! a62af18c-fb3f-4a13-a592-d489294e0864 + ImporterName: MaterialImporter + PrimaryAsset: ! a62af18c-fb3f-4a13-a592-d489294e0864 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Joystick/JoystickScene.scene b/Spectacles-2-Unitree/Assets/Joystick/JoystickScene.scene new file mode 100644 index 00000000..fe55d99a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/JoystickScene.scene @@ -0,0 +1,13946 @@ +- ! + PackagePath: "" + objects: + - ! 00000000-0000-0065-0000-000000000064 + - ! 0005641c-028d-459a-0000-000000014b4d + - ! ff6c151e-214e-4216-8d76-8d4244e2a6e8 + - ! f68f0438-2abc-4fe4-afd7-77fb2758a16d + - ! 70821b0b-a006-4b39-b35a-5a679bec2460 + - ! dc147681-bc27-42cb-83f4-f2fc231e1cfd + - ! e1075a24-89cb-4368-90aa-e14b04dd49ee + layers: ! + userLayers: + [] + HasOrtho: true + RenderOutput: ! 923415f5-4245-4675-ade1-6d69d6d23e71 + RenderPreviewOutput: ! 923415f5-4245-4675-ade1-6d69d6d23e71 + RenderOverlayOutput: ! 00000000-0000-0000-0000-000000000000 + PhysicsRootWorldSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Camera Object + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 00000000-0000-0065-0000-000000000065 + - ! e5553c8a-0b7e-4ef4-92d9-3e1318fb82c1 +- ! + PrefabRemaps: + [] + Name: Camera + Enabled: true + renderLayer: 1 + MipmapLevel: 0 + RenderOrder: 0 + Size: 20.000000 + Near: 1.000000 + Far: 10000.000000 + Fov: 63.541019 + ClearColor: ! + Mode: None + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + InputTexture: ! 00000000-0000-0000-0000-000000000000 + ClearDepth: ! + Mode: Value + Value: 1.000000 + InputTexture: ! 00000000-0000-0000-0000-000000000000 + Aspect: 1.000000 + CameraType: Perspective + DepthMode: Regular + DeviceProperty: All + AspectPreset: Custom + OitLayers: NoOit + RenderTarget: ! 923415f5-4245-4675-ade1-6d69d6d23e71 + DepthStencilRenderTarget: ! 00000000-0000-0000-0000-000000000000 + MaskTexture: ! 00000000-0000-0000-0000-000000000000 + RayTracing: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Lighting + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 00056e79-b066-62ca-0000-000000001406 + - ! 0005641c-028d-4630-0000-000000014b56 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Light + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 40.000000, y: 85.000000, z: 20.000000} + rotation: {x: 70.000000, y: 10.000000, z: 150.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0005641c-028d-463e-0000-000000014b59 +- ! + PrefabRemaps: + [] + Name: Light Source + Enabled: true + renderLayer: 1835007 + LightType: Directional + Intensity: 1.000000 + CastShadows: false + ShadowDensity: 0.440000 + ShadowBlurRadius: 4.000000 + ShadowTextureSize: 512 + AutoLightSourcePosition: true + AutoShadowFrustumSize: true + AutoShadowFrustumSizeExtend: 2.000000 + ShadowFrustumSize: 30.000000 + ShadowFrustumNearClipPlane: 1.000000 + ShadowFrustumFarClipPlane: 1000.000000 + UseEnvMapFromCamera: false + EnvMapFromCameraMode: Auto + UseEstimation: false + EstimationIntensity: 1.000000 + EstimationSharpness: 1.000000 + EnvMapExposure: 1.000000 + EnvMapRotation: 0.000000 + DiffuseEnvTexture: ! 00000000-0000-0000-0000-000000000000 + SpecularEnvTexture: ! 00000000-0000-0000-0000-000000000000 + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + DynamicEnvInputTexture: ! 00000000-0000-0000-0000-000000000000 + InnerConeAngle: 0.000000 + OuterConeAngle: 45.000000 + DecayType: None + DecayLimit: false + DecayRange: 40.000000 +- ! + PrefabRemaps: + [] + Name: Ambient Light + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 65.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 00056e79-b066-62f1-0000-000000001409 +- ! + PrefabRemaps: + [] + Name: Light Source + Enabled: true + renderLayer: 1835007 + LightType: Ambient + Intensity: 1.000000 + CastShadows: false + ShadowDensity: 1.000000 + ShadowBlurRadius: 0.000000 + ShadowTextureSize: 512 + AutoLightSourcePosition: false + AutoShadowFrustumSize: false + AutoShadowFrustumSizeExtend: 2.000000 + ShadowFrustumSize: 30.000000 + ShadowFrustumNearClipPlane: 1.000000 + ShadowFrustumFarClipPlane: 1000.000000 + UseEnvMapFromCamera: false + EnvMapFromCameraMode: Auto + UseEstimation: false + EstimationIntensity: 1.000000 + EstimationSharpness: 1.000000 + EnvMapExposure: 1.000000 + EnvMapRotation: 0.000000 + DiffuseEnvTexture: ! 2013a19b-93c1-4f21-b7ea-876a33550c7b + SpecularEnvTexture: ! d795fd46-e16b-4cb9-8dfb-4ef227298f7a + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + DynamicEnvInputTexture: ! 00000000-0000-0000-0000-000000000000 + InnerConeAngle: 0.000000 + OuterConeAngle: 45.000000 + DecayType: None + DecayLimit: false + DecayRange: 40.000000 +- ! + PrefabRemaps: + [] + Name: "[EXAMPLES] Simple Interaction" + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 44fcbe2d-f52e-47f4-ab2e-28381068a9bc + - ! 45bc7a90-82d2-490a-aba0-8a319ad59722 + - ! 470c886d-541e-47a6-b5e2-de1e20589316 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -8.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 16.000000, y: 16.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7afaeb92-e743-4ebb-a2c6-df9c16df5075 +- ! + PrefabRemaps: + [] + Name: Path Option C + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.000000, y: 4.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 42940185-c3a5-4a9b-b73a-8eb575385679 + - ! 7cbd058a-7032-4245-9f74-7b32af034bb2 + - ! 42ec8912-b42f-4f91-8395-335d0ac423a0 + - ! 8caf4268-d374-49a7-9689-d9405863c584 + - ! e4a334c0-89f1-4fce-bbae-e4fd01256466 + - ! 6e614c30-2b6d-4b3c-a625-ebfa1e1bf580 +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837150, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! b6e0f29f-f6a2-4cab-97c7-b0b7475b0cdc + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + skinBones: + ring-2: ! 2b9a5b20-6a89-4fd1-906b-e97f4259712f + pinky-1: ! cf2d9e76-9520-473b-8b9b-68ce183d22ca + pinky-3_end_end_end: ! 1353e5b8-fa96-4236-9812-7fd080b04697 + ring-1: ! 7f36a885-824c-4329-8b11-919324b5c881 + RightHandModel: ! 780f2ffa-fc27-462d-85fd-d216d21e774a + index-3: ! d180e208-2df8-4507-8437-213a1fbd5da6 + wrist_to_ring: ! ebf022e3-0fd7-4f48-b695-a86d4509dbfb + index-1: ! 5bd739b3-039d-4f2e-bc80-61fd158ce1aa + pinky-2: ! 7cb41a88-1dcc-444c-8349-a62b24a8e765 + index-0: ! 77f1a5d3-8594-40b5-8085-79f1d46ddd71 + ring-3_end_end_end: ! 07d5618b-22f9-4656-87fd-b0198fa0aeb6 + RightHandMesh: ! 78778cbc-4979-40f8-b213-f0cab136c8aa + wrist_to_thumb: ! 309860a1-e8fd-49a7-8b08-343086fa08dd + index-3_end_end_end: ! a650b8d7-507a-404b-bfe5-9602e915dae8 + mid-3: ! 6229e282-4449-48f3-8ef5-b90c67ba62fd + index-3_end: ! 20841b1c-e2a6-42cf-9bd0-4fd466eae39c + index-3_end_end: ! ce9ff426-cb39-478d-8067-8dea5e623fc6 + pinky-0: ! 050bbf47-8842-4bc2-abe8-7a28fc5c70ab + pinky-3: ! 29d989ad-aee7-43c3-95e0-02735ba7dd2f + mid-1: ! 9827271d-d758-4004-bc20-03cf1e136d1c + mid-3_end: ! 771da37d-9459-45e0-8f98-9538710f0dc5 + thumb-3_end_end_end: ! 75b74ef8-ecbe-4864-bb69-4c09f5be1606 + ring-0: ! bdf62eca-a7ef-42cb-9f0a-c0db5dd7b3e7 + mid-3_end_end: ! 4696df6f-6058-47bd-8129-72a773a76e75 + mid-3_end_end_end: ! a813a7a6-1822-4279-8348-2c314e6ab150 + RightHandRig: ! a3f4225f-153f-429a-8cd2-aa84d9db52ad + mid-3_end_end_end_end: ! a114455b-6a9f-4990-a3cc-fa88e4a4829a + pinky-3_end: ! 7bb17581-fb13-4afd-9cfb-15d0180ba723 + wrist_to_index: ! dddd8a38-ce19-4f71-8776-9826e6597567 + thumb-3_end_end: ! 9f9bcf5b-6b30-496e-b734-5aa240e969c5 + pinky-3_end_end_end_end: ! 258ea60f-f57b-4a6f-9bd2-98a9b9b438a2 + ring-3_end: ! b297e024-8530-43a8-9271-1d093788af2f + mid-0: ! 0b1bf884-4efd-4b6d-83ac-82540696baec + ring-3_end_end_end_end: ! cb14c3ea-7067-409a-83f3-618dbe55e547 + ring-3_end_end: ! 933ca421-582e-407b-bfc6-206a10cef5f3 + thumb-0: ! 5173a6a1-dbb7-4e12-a52f-a3799a1fea13 + thumb-3_end: ! 9b586360-5bcd-4bd9-9646-5b5ef75f1788 + thumb-1: ! 9f93fce7-edb2-4d42-b09c-939416f49cc0 + ring-3: ! 71450838-42ba-49f9-b33d-58b64a9b54c9 + thumb-2: ! d2c2e4e9-c17c-4ecc-902f-2283f319023b + wrist: ! 826246a6-44ea-4331-85b3-702fa57389fb + thumb-3: ! 1b6d2315-e870-4a05-9817-029318f16b5a + mid-2: ! cfc52ae9-3c49-4c47-8299-82d37cdb1095 + wrist_to_mid: ! a9edf4cd-40ec-4fe4-83b1-2f9439932ef0 + pinky-3_end_end: ! 5da27569-8d52-4e61-a3ab-bb97294d4ce0 + index-3_end_end_end_end: ! 02a86b70-f0f0-41ad-87bd-21c32b796670 + index-2: ! be49fb74-bd52-43d9-8ea6-b79a6965e36d + thumb-3_end_end_end_end: ! 1dc67040-bae9-41b8-960f-b57a94672dfa + wrist_to_pinky: ! cd4ffac9-4a32-4dba-b0a2-db117c38b975 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Recents + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 75 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.700008} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.700008} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.050000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Skin + Enabled: true + skinBones: + {} +- ! + PrefabRemaps: + [] + Name: pinky-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000007, y: 11.453500, z: 0.000008} + rotation: {x: 1.584790, y: -17.344000, z: -21.859100} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cf2d9e76-9520-473b-8b9b-68ce183d22ca + Components: + [] +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: pinky-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002793, y: 3.304380, z: 0.000052} + rotation: {x: 1.238250, y: -0.000460, z: 0.010196} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 80b63097-b1ef-4467-bdaa-a0a482172316 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c5f05e5f-4892-44c6-ba72-b885668a23ad + - ! 0c0bfed4-ada4-4bf7-9612-d44c6c5e1090 +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703730, z: -0.000001} + rotation: {x: -0.000081, y: -0.000080, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cb14c3ea-7067-409a-83f3-618dbe55e547 + Components: + [] +- ! + PrefabRemaps: + [] + Name: MouseInteractor + Enabled: true + ScriptAsset: ! 52a65860-24de-431c-b6b7-7a6585a77d3c + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + mouseTargetingMode: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 3.000000 + mouseTargetingMode: ! 2.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 68117807-3e5d-4f4a-98bf-aa0d3584d9d6 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Radius: 6.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: mid-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 11.483100, z: -0.000001} + rotation: {x: 1.935390, y: 5.930260, z: 3.282900} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9827271d-d758-4004-bc20-03cf1e136d1c + Components: + [] +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _onIcon: true + _offIcon: true + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 00000000-0000-0000-0000-000000000000 + _offIcon: ! 00000000-0000-0000-0000-000000000000 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 4e51c7da-93cd-49bc-92ba-ac1b17778914 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 463accac-e5f2-4ff5-aad3-dd1fe504613a + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "[LEGACY] InteractorLineVisual" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3f2dd09b-edbc-4994-85a8-a366bf77ca69 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! dcc3ad96-997c-4e0a-94bc-1ae501eb02af + - ! 6c866f4d-00db-4a17-bf53-3dc1708bcce9 +- ! + PrefabRemaps: + [] + Name: mid-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 3.166710, z: 0.000002} + rotation: {x: 0.000000, y: 0.000019, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 63462f25-ed20-4163-b0fe-197f3a97f011 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text3D + Enabled: true + RenderOrder: 14 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e6189357-b3eb-4ed5-8a07-593c3328fc24 + Text: HeadlockExample + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 75 + ExtrusionDepth: 0.500000 + ExtrudeDirection: Both + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + ShadowMode: None +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 58cc0b26-acd9-4018-bd05-fcc1bcc6b837 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 3.549810, z: -0.000001} + rotation: {x: -0.000000, y: 0.176026, z: -0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 511aa840-3b12-48da-8eb3-6d4a20316ec0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7d5f6ace-4259-4c08-9283-5ae3414577f0 + Components: + - ! 84db67af-fd9d-4a13-bcdc-78b87676416e + - ! dc1c6207-6fc1-4d5f-b59a-3f69a79b9bed +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: max + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000000} + rotation: {x: -0.000148, y: 0.000148, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 258ea60f-f57b-4a6f-9bd2-98a9b9b438a2 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: "[REQUIRED] Core" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ec33c966-ab83-4e2c-9dd1-9abe30a16e47 + - ! 674c121a-0fd0-437d-879c-9ce6b8f935fb + - ! 92490a16-2530-449b-8ee9-f65ff2095dd2 + - ! b27cfdfa-9f62-4102-83e8-b9bedf8c2910 + - ! dd368761-3c9f-4261-afbf-469cb4681d3d + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! dc570cd7-2f58-4639-b5aa-49876dd50978 + - ! 10de4b7a-720d-4d96-a283-1e122dff859b +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218160, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Satellite + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: 0.000000, z: -100.000000} + rotation: {x: -65.090828, y: -16.609848, z: 40.221401} + scale: {x: 4.500000, y: 4.500000, z: 4.500000} + hasSegmentScaleCompensation: false + Children: + - ! ee21d19f-e0a5-49cf-aaaa-4e8b8018bc7b + Components: + - ! a0ff9305-b2fc-4a9a-9ec7-2c9d75c8cc52 + - ! 681c55d2-59fd-4c3c-99d0-d7aaa2f779b7 + - ! a3ef195a-5bdc-4d96-a4ad-9d149a2f4d5e + - ! 62f3a8e2-ac5a-4ba7-83b3-cac1610a7330 + - ! 7a2899c3-b02c-4f81-9a90-ed8511366a54 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.672431 + right: 1.000000 + top: 0.931538 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 359497a3-5746-4d6d-ad9b-2da791af7c71 + useGlowMesh: true + glowRenderMeshVisual: ! 20ce429e-ff7b-42d7-8363-322863bfded1 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: index-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.009104, y: 2.837160, z: -0.000745} + rotation: {x: -88.447800, y: 0.630570, z: -5.443090} + scale: {x: 1.000000, y: 1.000000, z: 0.999998} + hasSegmentScaleCompensation: false + Children: + - ! 7d7953db-e981-48fc-b8af-77040f8455cd + Components: + [] +- ! + PrefabRemaps: + [] + Name: ScrollBarSlider + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 17.000000, y: -6.500000, z: -0.250000} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.750000, y: 0.750000, z: 0.750000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2a571854-9c1a-4e6f-9965-d60156d26d84 + - ! 92737940-b030-4998-9544-b7191c1c1cd2 +- ! + PrefabRemaps: + [] + Name: thumb-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.122509, y: 3.547690, z: -0.000037} + rotation: {x: -119.537003, y: -11.132400, z: -6.501390} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9b586360-5bcd-4bd9-9646-5b5ef75f1788 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! cf4d228b-cd28-48c1-962d-e1b9c5869f60 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 271b74cf-8459-4dd1-83a4-91af22fc6f5f + meshHoverMaterial: ! 74679e29-9817-463b-9427-ffff4cccb602 + meshPinchedMaterial: ! 43cbc95f-b089-4e59-a639-ca3950ebd1b5 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: GridContentCreator + Enabled: true + ScriptAsset: ! ad83ff54-844d-49a8-9102-f568a9d291c3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + itemPrefab: ! 642b5216-980f-4be9-9593-16aa50bc54ca + itemsCount: ! 30.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 11.824800, z: 0.000000} + rotation: {x: -4.158420, y: -5.389360, z: 8.544330} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7e117ed6-6fbe-4edb-941c-63a96b698e39 + Components: + [] +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! 20a44568-f561-4cda-bbbe-617352fde4cb + knobObject: ! e4ed526a-097a-49f6-b9ee-6e975ca6aad0 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! eb3812be-7e6b-41c8-b613-68c8fb3b6f13 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! 574d9ee8-f2a9-4ada-8275-b39f6b651b06 + knobObject: ! b7fba43c-452e-419c-b421-7f9ed959fc9d + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549800, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Rocket Parts + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 120 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: mid-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002904, y: 3.650310, z: -0.000110} + rotation: {x: -2.676430, y: -0.000566, z: -0.015133} + scale: {x: 0.999999, y: 0.999999, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 72ba5fa0-3395-495c-8d87-22bc85f50855 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: index-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837150, z: -0.000002} + rotation: {x: -0.000039, y: -0.000040, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ce9ff426-cb39-478d-8067-8dea5e623fc6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c3e60476-e9ab-43b7-bc77-52de2f551ea0 + Components: + - ! 36586694-5947-43fe-9596-906825de509d + - ! cc59c548-1073-432f-a3f3-f7c64e11ed14 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! 86cd1c89-4acd-46a5-9300-bf400950a160 + knobObject: ! a0358279-a981-46bc-b610-1f660aa06e5c + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: false + RenderOrder: 11 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 0607447c-e8df-4721-9c51-777e973d74eb + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: HandInteractor + Enabled: true + ScriptAsset: ! b5f70408-5d57-4afd-996b-8f26ae0ddcb2 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + raycastAlgorithm: true + forcePokeOnNonDominantPalmProximity: true + directColliderEnterRadius: true + directColliderExitRadius: true + directDragThreshold: true + filterBasedOnIntent: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 40.000000 + handType: left + raycastAlgorithm: Proxy + forcePokeOnNonDominantPalmProximity: false + directColliderEnterRadius: ! 1.000000 + directColliderExitRadius: 1.500000 + directDragThreshold: ! 3.000000 + filterBasedOnIntent: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + _minValue: true + _maxValue: true + stepBehavior: true + _stepSize: true + toggleDuration: true + editEventCallbacks: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnValueUpdate: true + onValueUpdateFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: ! 0.000000 + _maxValue: ! 1.000000 + startValue: 0.200000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! 246fae23-9f27-438d-954f-024cd1be0413 + sliderMax: ! 20cdf887-c102-42c6-a77e-e6bccd3b3ffa + _sliderKnob: ! a0358279-a981-46bc-b610-1f660aa06e5c + editEventCallbacks: false + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 00000000-0000-0000-0000-000000000000 + onValueUpdateFunctionNames: ! + [] + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Platform + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -30.000000, z: -100.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.000000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2f8e0f36-5c12-4ac3-b10c-750f77d595d0 +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a89f456c-11a1-43fc-bfa8-912646e3efd9 + Components: + - ! 2aff7c6c-53f4-430b-8c02-cf513f22ac46 + - ! 70021aba-1bd8-4e46-80a7-8fc3bf227371 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 0572c44a-f705-46f8-8434-a4a8a356aaa5 + useGlowMesh: true + glowRenderMeshVisual: ! 68117807-3e5d-4f4a-98bf-aa0d3584d9d6 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ee5a38f8-6b3c-425a-90e8-babde063e515 + Mesh: ! 3e3dc67e-f8de-4502-b790-51fa5c73c19b + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! ab8ba6a3-368b-439b-bc27-0f396e4ce6eb + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Launch Controls + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 70 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 574d9ee8-f2a9-4ada-8275-b39f6b651b06 + - ! ae1918ba-2448-469a-b337-76e5a4816f4c +- ! + PrefabRemaps: + [] + Name: pinky-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.008174, y: 2.218150, z: 0.000077} + rotation: {x: 84.965103, y: 6.336930, z: -173.675003} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7bb17581-fb13-4afd-9cfb-15d0180ba723 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 12 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 400016ba-897b-4f06-8668-db883d28f9a9 + Mesh: ! e773364b-808e-4165-96b2-285eb99a10bb + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Size: 0.660000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ring-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.001204, y: 3.309390, z: 0.000044} + rotation: {x: 0.145073, y: -0.000050, z: -0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 71450838-42ba-49f9-b33d-58b64a9b54c9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + border: true + constantPadding: true + isContentInteractable: true + allowTranslation: true + minimumSize: true + maximumSize: true + xAlways: true + yAlways: true + useSnapping: true + itemSnapping: true + worldSnapping: true + showFollowButton: true + isFollowing: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 31.000000, y: 40.000000} + border: ! 4.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: false + autoScaleContent: false + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 10.000000, y: 10.000000} + maximumSize: ! {x: 300.000000, y: 300.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: false + itemSnapping: false + worldSnapping: false + showFollowButton: false + useFOVFollow: true + isFollowing: false + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: wrist_to_ring + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 0.192331, y: 6.274080, z: -6.174470} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1b99283b-6388-4d39-a423-7be97ff2f32d + Components: + [] +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: min + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: max + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 13 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ab483a45-8677-4f11-8cd0-5c5d4a239a94 + Mesh: ! e7bb3308-12a7-4fa8-93b1-14b414b79f5a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7630d75e-c089-474f-917b-7571a900f1e2 + Mesh: ! dfb8556d-a943-41b2-a69f-1a525c358172 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6d4e14b0-90fb-47b0-8368-e3cb543772be + - ! 8a56e0cc-2f49-467e-a7ba-d03a823fdfd7 +- ! + PrefabRemaps: + [] + Name: wrist_to_thumb + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 27.434401, y: -41.097198, z: -59.864601} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5173a6a1-dbb7-4e12-a52f-a3799a1fea13 + Components: + [] +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: LeftHandMesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000001, z: -0.000001} + rotation: {x: -90.000000, y: -0.000000, z: -0.000000} + scale: {x: 0.999999, y: 0.999999, z: 0.999999} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9f2b3f06-77a1-4255-830d-ad50801287bd +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + skinBones: + mid-3_end_end_end_end: ! f9d02a8c-71a4-411f-a21e-a7b3329c62d6 + LeftHandRig: ! 531e560d-ffa5-433d-8224-6c252eb6a9bb + ring-2: ! 74914d99-aae6-4a1c-b4ec-d949b2a9253c + LeftHandModel: ! 6f50df52-5045-47a8-839c-bbd20bc99bb5 + pinky-1: ! 05ab905d-7685-4e29-9db5-9042078af2d6 + pinky-3_end_end_end: ! dcf6aa57-0caa-4b44-a73b-2e33da4f1428 + ring-1: ! 7e117ed6-6fbe-4edb-941c-63a96b698e39 + index-3: ! 1ab3fbdf-e28e-45a8-943d-76938ac530b4 + wrist_to_ring: ! 2d1055e9-e5d5-49f7-8955-de8f46da0f6a + index-1: ! a72bed4c-f7e3-4691-93f3-d06d66d75dd0 + pinky-2: ! 80b63097-b1ef-4467-bdaa-a0a482172316 + index-0: ! e9344e0a-57f1-4226-9a18-a84052078b1b + LeftHandMesh: ! 31df5cf9-9877-4359-9161-92964449a557 + wrist_to_pinky: ! eb361989-1d4a-41f7-a205-235ce6f4e3b9 + wrist_to_thumb: ! 8d12c0a3-c20a-4dd4-b82e-4aa3489ca78f + index-3_end_end_end: ! f3c8087e-8414-4601-833d-96cf682f94d3 + mid-3: ! 72ba5fa0-3395-495c-8d87-22bc85f50855 + index-3_end: ! 7d7953db-e981-48fc-b8af-77040f8455cd + index-3_end_end: ! a53cac7a-4a63-4351-a6da-b868ffac9c0a + pinky-0: ! 50f48cde-a492-4587-8b76-26cff1adec60 + pinky-3: ! cea83226-8c66-44d7-895a-2480d9cc1c35 + mid-1: ! 850751ef-604a-41bc-a846-0701b76493b1 + thumb-3_end_end_end: ! 11e7d38c-6fbb-4f05-b89d-a44a9ae8336a + mid-3_end: ! 0ff1487a-e8d6-4aaf-9067-a61f2fa4c77e + mid-3_end_end: ! 63462f25-ed20-4163-b0fe-197f3a97f011 + ring-0: ! 1b99283b-6388-4d39-a423-7be97ff2f32d + pinky-3_end: ! b2d002f5-2b50-4f66-8c0d-93d5dba56556 + wrist_to_index: ! f154d1c1-2595-4578-acc2-6872637af31a + thumb-3_end_end: ! d9e2d13e-9f8c-4798-83f1-83fed0cdb757 + mid-0: ! 711f9787-d880-4475-8f0a-0cf6b2492a6b + ring-3_end_end_end_end: ! 27db1592-a7a2-4e26-b369-afc71511fb9e + ring-3_end: ! e8194f5f-aab4-4dff-8e59-92d2aaf9c042 + pinky-3_end_end_end_end: ! 162925ed-6a4c-401a-a521-86902851061f + mid-3_end_end_end: ! 8dbfcb2b-c189-46eb-960f-45c157d8484a + thumb-2: ! a3ea66da-0ca8-4958-8d69-6f5045fa706c + ring-3: ! 4971d6a8-a5fe-431e-b815-07883d1bd9b4 + ring-3_end_end: ! 6b078b1c-99b5-4d40-81a0-46d9ea3bb1e3 + thumb-0: ! 6480de4a-e83a-4ebf-919e-d73bc4fd2eee + thumb-3_end: ! 411b54bc-1db6-4fe9-908b-1f4f0a372ce0 + thumb-1: ! 8e8470af-1ad4-4317-96d6-2bd90d653cbb + wrist: ! 821f1d70-8d79-44db-bc8b-fabf613822c0 + thumb-3: ! 60037818-559f-4345-ac44-f7c5dfc86f3c + mid-2: ! 1f2cf37f-fd91-492c-a63b-884a08cd9215 + wrist_to_mid: ! 86412b42-c0cf-4fc3-a8a2-fe90221abc59 + index-3_end_end_end_end: ! 691be975-a6fd-42b9-a51a-bcdeebedb743 + index-2: ! 40a2ea5b-f164-48c5-8ffc-c3dfcacc6d91 + ring-3_end_end_end: ! 66d9ff94-deb4-4e42-bc41-0182a168c169 + thumb-3_end_end_end_end: ! 511aa840-3b12-48da-8eb3-6d4a20316ec0 + pinky-3_end_end: ! 3f428eaa-6547-40ec-865e-50071201a35e +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c2708339-9d3b-4cb9-9020-f226fbffaa73 + Components: + - ! a6a28de7-2cc3-4d68-a985-66f0fa9c4164 + - ! e769c593-4515-4020-a2bf-11dd93208bc4 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! 03cb0a5e-3e67-4f89-bc12-910bc3c64ccd + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 44fcbe2d-f52e-47f4-ab2e-28381068a9bc + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 246fae23-9f27-438d-954f-024cd1be0413 + - ! 20cdf887-c102-42c6-a77e-e6bccd3b3ffa + Components: + - ! a6460eae-c017-41cd-8937-2c7b9df6c62b +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a420efdf-55b7-41cd-8bb5-89bc9e34d8f4 + - ! 66258ab8-1a60-4dc2-aee5-820ac8efc2e0 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! 19b05bf9-336a-4446-8bae-3900ec681e19 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractorLineVisual + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 52a3f271-30a0-4e9c-9f47-c80145bab1b2 +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218160, z: -0.000003} + rotation: {x: 0.000050, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! dcf6aa57-0caa-4b44-a73b-2e33da4f1428 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.008350, y: 3.222920, z: -0.000875} + rotation: {x: -0.656684, y: 0.000193, z: -0.059364} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1ab3fbdf-e28e-45a8-943d-76938ac530b4 + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! b4b364af-ee41-4c86-a1ba-a055da762816 + Mesh: ! eb9c4a4a-8795-4ce9-9f28-3fa5870debeb + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: thumb-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: -0.000001} + rotation: {x: -0.000121, y: 23.491301, z: -0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d9e2d13e-9f8c-4798-83f1-83fed0cdb757 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 08fc906c-78bf-45df-99f5-35e77aea225d + Components: + - ! 0572c44a-f705-46f8-8434-a4a8a356aaa5 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 09db06bf-3b9e-41dd-b6a0-a7da122ffade + Mesh: ! 41ed7fd3-6772-4318-9758-7be2e92a7d59 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: "[Manipulate Example] Mesh" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: 10.000000, z: -70.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! cdb2e0d6-79db-45a6-8973-928bf679f9f8 + - ! 5a4a6c9d-5f14-442c-a49a-8be3c0c22f83 + - ! 39a12ac7-a32e-41e8-bc50-2e10f187f2b0 + - ! 3ce0edb2-6916-4124-a47a-c94e3b9cab61 + - ! f2925123-9c0e-4025-8db9-c72926964a10 + - ! 1208900c-b1bf-459d-b7ae-c9ce081d8a33 +- ! + PrefabRemaps: + [] + Name: HandVisuals + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b55b19ef-83c9-4922-aaea-ded86b65a663 + - ! abb42942-9861-46af-946b-236bb527035f + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! dcc3ad96-997c-4e0a-94bc-1ae501eb02af + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "[Manipulate Example] Box" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: -6.000000, z: -70.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 47539171-a347-48fe-ae7a-cc4b06f94f5f + - ! 65d1468b-ad6c-4b28-a742-9881b25ef2dd + - ! 721fb100-9532-48c3-b61d-c6e47f142e20 + - ! 03cb0a5e-3e67-4f89-bc12-910bc3c64ccd + - ! 38b50117-4aa1-4881-b52c-89d62c10a6ec + - ! cf16465a-48d6-40af-9531-15312d8ec38b +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: mid-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000001} + rotation: {x: 0.000103, y: 0.000102, z: 0.000010} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a813a7a6-1822-4279-8348-2c314e6ab150 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f6490bde-080e-4365-b78c-72954ee76228 + - ! cd9e68dd-f5be-4988-b4a7-d75258adec0b +- ! + PrefabRemaps: + [] + Name: "[Manipulate Example] Sphere" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: -22.000000, z: -70.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 631a3ca0-0ec9-42ba-a841-c09bea810ac9 + - ! 092a9f85-af06-4b7f-968a-dfc3f683238d + - ! ecb3ef5b-0458-4995-994d-aeb197dac3c6 + - ! ab8ba6a3-368b-439b-bc27-0f396e4ce6eb + - ! 297edb80-1ef8-4527-91d2-2f1a19657582 + - ! 117e13c7-61de-47a8-893f-951f91b0534a +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.001444, y: 2.703710, z: 0.000020} + rotation: {x: 88.973000, y: 4.975880, z: 4.973150} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e8194f5f-aab4-4dff-8e59-92d2aaf9c042 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 82077845-5d34-41ca-8a29-b1b1e48a5f8a + - ! fc150902-4b28-4b98-a419-1f0b2085126f +- ! + PrefabRemaps: + [] + Name: Planet + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: 17.000000, z: -100.000000} + rotation: {x: -41.182346, y: -19.682274, z: 2.537930} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9e4623b7-d7f6-430b-bef2-1cc4a68ffdf2 + Components: + - ! ee29bf94-3e0e-428f-aabc-b6b910fb7db3 + - ! 31372144-baea-47d1-afd2-ed88fb7e2683 + - ! 0d51e23e-412e-427e-ae9e-b6ec501399bc + - ! 8c37b96f-c1b2-4f46-a25b-ed6861f2cb91 + - ! 3769366f-4444-45f8-81e8-f14b3c8a0645 +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7e855f2a-4343-491e-bcd1-fce3bac65aeb + Components: + - ! a4ff8efb-cb3c-4ef4-b0cb-5154d4ef58c0 + - ! 5aae6971-5857-4c8f-a5ef-c45d733acbb4 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 5d1d6397-ae85-4e5f-ab2c-6cce45791d26 + Mesh: ! d5389096-6ff6-4687-a39d-88838ca6ce61 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 7d2c6118-bccb-4bc2-88cf-97a6b5513a3b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 58619b05-f4de-4b2e-87a7-5d2e3975e656 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 16323e0b-43a3-431f-b1f0-60029ae56ca5 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000004, y: 11.453500, z: 0.000011} + rotation: {x: -10.793700, y: -13.884800, z: 21.429600} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 05ab905d-7685-4e29-9db5-9042078af2d6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 10.500000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 299e30e7-fb5d-4990-96fc-6d7fd24e5f99 +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: RocketConfigurator + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5d2ffe4e-a3da-4dec-9bfe-d8d4271b8df0 +- ! + PrefabRemaps: + [] + Name: thumb-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000009, y: 4.399180, z: 0.000004} + rotation: {x: 1.097870, y: 44.900902, z: 1.556590} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9f93fce7-edb2-4d42-b09c-939416f49cc0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractorLineVisual + Enabled: true + ScriptAsset: ! a6105daf-0f11-45a0-8684-102e44534dbb + ScriptInputsDefault: + _beginColor: true + _endColor: true + lineWidth: true + lineLength: true + lineStyle: true + shouldStick: true + _interactor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + lineMaterial: ! 9fc7f9a1-6d20-4e6a-9c4a-268d15228b42 + _beginColor: ! {x: 1.000000, y: 1.000000, z: 0.000000} + _endColor: ! {x: 1.000000, y: 1.000000, z: 0.000000} + lineWidth: 0.500000 + lineLength: ! 160.000000 + lineStyle: ! 2.000000 + shouldStick: true + _interactor: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: LeftHandRig + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: 0.000000, z: 0.000000} + scale: {x: 0.999999, y: 0.999999, z: 0.999999} + hasSegmentScaleCompensation: false + Children: + - ! 821f1d70-8d79-44db-bc8b-fabf613822c0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7f82b210-b438-4633-853e-6f804c2638bb + Mesh: ! 7ba378bf-39c6-4345-acbf-9e09fff8deaa + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 7 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: | + Toggle Off + + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 0.984314, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 05939801-596e-411f-bd24-9fbc171bc0e2 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! eb3812be-7e6b-41c8-b613-68c8fb3b6f13 + - ! ee02bda4-457d-4b91-9243-32cf461a5f92 +- ! + PrefabRemaps: + [] + Name: Content + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5ecb3e1b-71f7-4147-a9b7-e393c0012648 + - ! 7ede0b47-3e67-481b-adec-2841a1651a87 + - ! 12e31068-8e57-41e3-8ac5-c9a99f26633f + - ! fcedcd16-8d68-488c-92cf-8fc3fb8e929e + - ! 632cca84-19fe-4886-8627-21a46a150dd2 + Components: + - ! 8de4606b-d030-4494-93d0-78dcf4e89ee7 +- ! + PrefabRemaps: + [] + Name: rocket_sparks + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 5.731080, z: -2.724091} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.500000, y: 0.500000, z: 0.500000} + hasSegmentScaleCompensation: false + Children: + - ! a6e780b3-03cb-49aa-8d53-83150b2bd5d6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 4c4e9a6b-53dd-4a6b-8312-ea20dd40ff2c + _offIcon: ! 3b061257-5dfb-4e90-b31c-803ec12f595d + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ShowPlatformToggleButton + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 5.850000, y: -7.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.150000, y: 1.150000, z: 1.150000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b3f6fd6f-4d32-4d30-ab3a-893f7e77546f + - ! 525d0fdd-36a2-4565-9996-219b72385dc5 + - ! 0bcbfbe9-9e47-4eb6-add1-546001a963ac + - ! 18dc05a5-21f9-4650-a9c0-c75058cc3ec2 + - ! 3bb57980-131b-4baf-851e-391c60970a75 + - ! 67283259-079b-46d7-a56c-c16f2df4367a +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewCanvasExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -40.000000, y: 0.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 54575843-0da1-49ad-9522-0a9f80441c5b + Components: + - ! 6408b356-a940-4216-803e-02ae7f88a425 +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample Mid Bottom Center + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 9.500000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! c4c75723-2bdc-433d-add0-da9d609b0f2f + - ! fae74c4b-9de8-469f-9c4d-9b8447f28821 + - ! 46ffb5eb-4516-42f9-a865-7f8555cfd9da + Components: + - ! 14013079-8453-4103-8404-1c2f9aee8e4a + - ! 2a0898f0-243a-4d3e-b9fa-8cf392c8db15 + - ! 4b1f1d0c-a1a7-4895-af8e-7b964d486578 + - ! d735f2c4-df3a-46aa-9406-a962db6277e6 + - ! 53c3b2b7-1cf2-479d-bcba-9527b9af5179 + - ! 67d99ead-55e0-40c1-9319-f829b0b5274f + - ! fc5d27fb-e846-4e23-b1e7-8b68f2054d5a + - ! d5a99a27-d079-430b-86ef-2ad6c533f962 + - ! f763750e-d14c-4749-88e9-74125df2d29d +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -11.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 0ed2cadb-20f7-42de-b689-d3a7be59d6d8 + Components: + - ! e9a27e62-d022-4adc-807d-d55d896a4742 + - ! 74d37439-a2c5-4936-bd7e-146ad61f3b29 + - ! 767704e3-511e-4e8e-9d9e-9f375398bbbc + - ! e126f97f-02aa-4ff3-b7e0-c00afa850a2b + - ! 11e4061b-77da-4925-9cfe-6347b3bcce40 + - ! c4b1a1e6-7665-4e82-989c-66a8fab1e47d + - ! 60322f26-9917-4e2a-bd56-581947d84852 + - ! 9ee13996-ea94-40aa-91c1-44c14a55384d + - ! 4559b691-d3dd-4d97-b9ee-e75217f18d3c +- ! + PrefabRemaps: + [] + Name: HandInteractor + Enabled: true + ScriptAsset: ! b5f70408-5d57-4afd-996b-8f26ae0ddcb2 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + handType: true + raycastAlgorithm: true + forcePokeOnNonDominantPalmProximity: true + directColliderEnterRadius: true + directColliderExitRadius: true + directDragThreshold: true + filterBasedOnIntent: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 40.000000 + handType: right + raycastAlgorithm: Proxy + forcePokeOnNonDominantPalmProximity: false + directColliderEnterRadius: ! 1.000000 + directColliderExitRadius: 1.500000 + directDragThreshold: ! 3.000000 + filterBasedOnIntent: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c73c04ca-7c3c-4e28-b9c0-d2c66644aef0 + - ! c79fd486-6a0a-47f5-9546-2725f694a92f +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + Mesh: ! 19b05bf9-336a-4446-8bae-3900ec681e19 + Convex: false + Skin: ! 00000000-0000-0000-0000-000000000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: false + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 21dd5d7f-9153-45b1-a73d-f18313b86363 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e3ae6904-21e2-4337-99d4-8425ed9aea30 + - ! a5085698-9e91-491f-be4e-030b54c684ea +- ! + PrefabRemaps: + [] + Name: index-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.017495, y: 3.481400, z: 0.000180} + rotation: {x: -8.118590, y: -0.000575, z: 0.000047} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! be49fb74-bd52-43d9-8ea6-b79a6965e36d + Components: + [] +- ! + PrefabRemaps: + [] + Name: "[EXAMPLE] Rocket Workshop" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7d7a7faf-c376-49fc-a67b-0b905d3f561e + - ! 5127a290-6a9d-44a0-83bd-06e30f3fc653 + - ! f9e7eaf6-421b-495b-9be1-066e9c0dfcee + - ! dd09b40b-0105-4ecd-be01-30b393f470dc + Components: + [] +- ! + PrefabRemaps: + [] + Name: RocketConfigurator + Enabled: true + ScriptAsset: ! 85cb5de9-5fbb-4fbd-9775-2ac32bd619fe + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + rocket: ! 8cbf86dc-678e-4587-9018-24c77fcb87ba + allRocketParts: ! + - ! 390ee0cb-1e60-4d19-8b40-1268800c64bc + - ! a9931968-3294-457d-b5f4-67213a87aec0 + - ! f1f20f41-b943-4d16-9ec2-8b3047cfe6fc + - ! f8c6c126-d1c9-46e6-965f-f185cb98ee55 + - ! 79343b52-0148-40f3-b5ee-59276ae43e7c + - ! 90f56253-e16e-40b6-9a7b-207dc3b162e7 + - ! 11174f6e-5467-4bf7-a4ec-be4b4e11d888 + - ! 255bac26-326b-4045-8f1e-04c78eabb8b4 + - ! 9bb44e42-24ca-4d39-87d2-41596d8f05a4 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Show Platform + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.257892, y: -7.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 87096967-a3bc-4d41-b656-a7c1fcc611d1 +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218170, z: 0.000000} + rotation: {x: 0.000050, y: -0.000056, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1353e5b8-fa96-4236-9812-7fd080b04697 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2c726df3-cfa3-4978-b146-a95fd5824626 + - ! 6ac585e2-813f-4594-b268-6e15f5bf48b6 +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 187c0993-895b-43ef-bc71-574cb1ee68ee + - ! c6493c14-cfc3-477b-9afa-7bbf6fda80b0 +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4ef466ba-05b2-4721-926d-f1c7cb84f6ce + - ! de34385c-1796-499f-a145-30de42478770 + Components: + - ! 036512ed-bf6e-400e-a46d-10f636b6e5c3 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: thumb-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.122141, y: 3.547710, z: 0.009542} + rotation: {x: -59.788200, y: 5.800900, z: 165.218002} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 411b54bc-1db6-4fe9-908b-1f4f0a372ce0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: mid-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.010478, y: 3.166710, z: 0.000270} + rotation: {x: -86.458298, y: -5.335180, z: -5.675670} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 771da37d-9459-45e0-8f98-9538710f0dc5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Launch! + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.050000 + meshVisuals: ! + - ! c28c16aa-b964-4fb3-b0f2-7f9ca2ba897a + - ! 300b14cd-cae3-4ee6-ae39-700f003d85da + - ! 4f6d1d86-5d52-4d48-a192-3841b4dfeca7 + - ! 432ab8d2-ba1b-4223-a404-74110d12bba8 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollBarSlider + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 18.000000, y: -7.000000, z: -0.250000} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 40.000000, y: 40.000000, z: 40.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a4c95fe5-9113-4626-9604-b71973fb5abe +- ! + PrefabRemaps: + [] + Name: mid-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166710, z: -0.000003} + rotation: {x: 0.000035, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8dbfcb2b-c189-46eb-960f-45c157d8484a + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -15.000000 + bottom: -20.000000 + right: 15.000000 + top: 20.000000 +- ! + PrefabRemaps: + [] + Name: thumb-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000005, y: 4.399180, z: -0.000010} + rotation: {x: -1.007350, y: 44.900501, z: -1.551620} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8e8470af-1ad4-4317-96d6-2bd90d653cbb + Components: + [] +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 463accac-e5f2-4ff5-aad3-dd1fe504613a + - ! 1bfa66da-982b-4117-a961-00f1c7d941a4 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Rocket Holder + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -100.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9e4589cb-dc87-435e-a8b6-c3ec7013e095 + Components: + - ! 04e121c2-eda3-4027-99d5-98b89d60a800 + - ! ab2efbdd-f11e-4691-bafc-7325dd21c9ce +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703710, z: 0.000001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 27db1592-a7a2-4e26-b369-afc71511fb9e + Components: + [] +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 1 + renderMeshVisual: ! b3f6fd6f-4d32-4d30-ab3a-893f7e77546f + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 6b4d1ad8-50d3-4889-9613-534d1419b60b + meshToggledHoverMaterial: ! bfb514bb-32ed-4bf6-8838-1d4b52a8878e + meshToggledIdleMaterial: ! 51d47a79-fa9a-457f-a979-7b3c7756d6be + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 93ccce6d-acaf-463c-a766-245dfa12e12c + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: LeftHandInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 22e40d6c-4405-4a2f-9eda-9f5e0d425a75 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Flight Speed + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 60 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ExtendableCapsuleExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -17.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! fad9a75c-3477-49fe-8f5f-bc74206d039b + - ! 74981c66-edd9-4260-a7b2-61bbf6064923 + - ! 4ffab695-3859-4b88-9c5d-0b95cb5dcd91 + - ! 2cb8596e-593d-4256-8a62-eef3e0da7ea9 + - ! 7d2c6118-bccb-4bc2-88cf-97a6b5513a3b + - ! a7b6d8d2-7c2a-48d2-aaaa-ae84d5f350b0 + - ! e3ae63cf-561e-4b6f-b2ac-fd0ae204da18 + - ! 7deecf52-223d-4f77-ac95-fa2b779f5f09 +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837170, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ddef3800-9018-4fe0-bbd1-a0e1b8df58ac + - ! 42157a2f-0b27-4a7f-bfbe-a7102b5d1773 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ring-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000025} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 66d9ff94-deb4-4e42-bc41-0182a168c169 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 6 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Toggle On + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 0.274510, y: 0.274510, z: 0.274510, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 42940185-c3a5-4a9b-b73a-8eb575385679 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 8d858ff6-aa23-4863-b2df-a5af56b736da + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: min + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: LeftHandModel + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 531e560d-ffa5-433d-8224-6c252eb6a9bb + - ! 31df5cf9-9877-4359-9161-92964449a557 + Components: + - ! 32346fd9-8168-4666-87d9-78060a1ebed2 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ScrollButton + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: -90.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c9cd2679-ba09-4f0f-98d7-ec3140e249c7 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Robot + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 11.483000, z: -0.000001} + rotation: {x: 1.265800, y: 6.113890, z: -3.274570} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 850751ef-604a-41bc-a846-0701b76493b1 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.001444, y: 2.703720, z: 0.000001} + rotation: {x: 88.027298, y: -5.497920, z: 5.333360} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b297e024-8530-43a8-9271-1d093788af2f + Components: + [] +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample Mid Bottom Right + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 5.000000, y: 9.500000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! 65833bb8-54ce-423b-a863-d059e467bb42 + - ! 4c4e9a6b-53dd-4a6b-8312-ea20dd40ff2c + - ! 3b061257-5dfb-4e90-b31c-803ec12f595d + Components: + - ! eb1e4612-0df6-4ade-a76e-06418f7ea742 + - ! fb8803fd-f4f0-41f1-ae2b-935e1724b9f2 + - ! 585355bc-41fa-43f3-9700-f8c951fac340 + - ! 5613bfc0-c769-4833-99ea-58239d74e1f4 + - ! f5f034a0-d503-4083-8bda-b0dc37c1e8bd + - ! 0e5e12ff-635f-49e3-be00-ebf5900ea4ec + - ! a24709e6-9797-4a70-aa6a-d81e0fd831a0 + - ! 0d8fb57f-24dd-4dfa-b259-8368eb612905 + - ! 1e4b5d84-db2e-42c4-9cdb-1fa4a98ae5c9 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Radius: 1.300000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 45bc7a90-82d2-490a-aba0-8a319ad59722 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: mid-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.010479, y: 3.166700, z: 0.000210} + rotation: {x: -87.477303, y: 5.565590, z: -5.001890} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0ff1487a-e8d6-4aaf-9067-a61f2fa4c77e + Components: + [] +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ea4f3347-9719-415f-a3de-b0d5707909ed + - ! 1e2ce68d-b24a-45bb-8072-485a4fd9c454 +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + border: true + constantPadding: true + isContentInteractable: true + allowTranslation: true + minimumSize: true + maximumSize: true + xAlways: true + yAlways: true + useSnapping: true + itemSnapping: true + worldSnapping: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 15.000000, y: 23.000000} + border: ! 4.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: false + autoScaleContent: false + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 10.000000, y: 10.000000} + maximumSize: ! {x: 300.000000, y: 300.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: false + itemSnapping: false + worldSnapping: false + showFollowButton: true + useFOVFollow: true + isFollowing: true + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractorCursors + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! fc6a94ee-23d6-4637-a73b-30ac1b571eca +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a9993c60-2bf2-4062-bc65-902e1a421c4d + - ! bfbc951a-f9ae-4621-976e-7894a79478ac + Components: + - ! 87733319-b91f-4989-a00c-9e48c2b2f8bb +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.001204, y: 3.309410, z: 0.000061} + rotation: {x: 0.145060, y: 0.000496, z: 0.002001} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4971d6a8-a5fe-431e-b815-07883d1bd9b4 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 68ad7faa-9aea-44b5-b204-85da6adb9bc9 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b9399f57-3264-4290-a881-1002961c0426 + - ! 131fc99a-a532-4e38-8e6b-dea54aabe422 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549800, z: -0.000002} + rotation: {x: 0.000000, y: 0.000028, z: 0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1dc67040-bae9-41b8-960f-b57a94672dfa + Components: + [] +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f4029e40-76bf-4921-b70b-e4ce76a7bac1 + - ! 6b376b45-f8ef-456d-b8cd-673410d85157 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: mid-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000002} + rotation: {x: -0.000207, y: -0.000205, z: -0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4696df6f-6058-47bd-8129-72a773a76e75 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000003, y: 11.787900, z: -0.000003} + rotation: {x: 9.215320, y: 17.707500, z: 16.168699} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5bd739b3-039d-4f2e-bc80-61fd158ce1aa + Components: + [] +- ! + PrefabRemaps: + [] + Name: RightHandModel + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a3f4225f-153f-429a-8cd2-aa84d9db52ad + - ! 78778cbc-4979-40f8-b213-f0cab136c8aa + Components: + - ! 03f7bc43-5636-41fb-a9fc-1dbf378a0dd5 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: RightHandMesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! de62f5f3-2f86-4c98-b357-a44d603496f1 +- ! + PrefabRemaps: + [] + Name: ToggleButtonCapsuleExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -5.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 542c8e99-dd30-44cc-9092-ced77bc4d54c + - ! 75f06a71-2897-421b-ad76-29a8983210d0 + - ! c4785331-76b4-453b-92f9-c742c70bb179 + Components: + - ! 87da1ae3-6df0-4afa-8f7f-36d2537312e5 + - ! 288d782c-f80e-4745-bc72-6324728d9ad9 + - ! 969f2fda-6380-4c12-a720-cc66f27af219 + - ! 81841dbe-6094-46d2-8036-d4fe8d5e3d63 + - ! 1c90c220-a570-4dfd-8290-781a6959eea1 + - ! 93236546-1c9d-4e45-80ef-f91fc4d8b825 + - ! ebf29903-e778-4ba0-b2bd-8925aa9f4872 + - ! cd908cfd-824a-41cc-9781-34ee591c98cf + - ! f3ab0ac5-9a4f-4928-a3f2-e2c9ac4d084f +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 1766b243-ecbd-49ab-99a0-0a126bf505c7 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: pinky-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000001} + rotation: {x: 0.000101, y: -0.000115, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5da27569-8d52-4e61-a3ab-bb97294d4ce0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.005382, y: 2.681950, z: -0.000140} + rotation: {x: -5.666390, y: -0.000025, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 29d989ad-aee7-43c3-95e0-02735ba7dd2f + Components: + [] +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! c3a5c848-4468-48d2-9df0-0c9778bb7552 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 15 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 00000000-0000-0000-0000-000000000000 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewContent + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 12fccd0a-94c9-4e79-a54a-0f2e4018bde5 + - ! 1b96a171-2f8c-409e-9d0a-91812193d330 +- ! + PrefabRemaps: + [] + Name: index-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837170, z: 0.000001} + rotation: {x: -0.000113, y: -0.000000, z: -0.000031} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a53cac7a-4a63-4351-a6da-b868ffac9c0a + Components: + [] +- ! + PrefabRemaps: + [] + Name: Objects + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c88da200-d694-4e27-b433-47aa0ae56ce9 + - ! 6694ff7c-c4b6-48dc-ac2c-765fda9db34f + - ! 245cb741-c1b9-4805-b7c1-793674f0d7ed + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002705, y: 3.534420, z: -0.000008} + rotation: {x: 1.238040, y: -0.000494, z: 0.017060} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 74914d99-aae6-4a1c-b4ec-d949b2a9253c + Components: + [] +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3308bd23-8a56-4adb-908b-8c96a9d634dd + - ! 6ea6a996-fee4-4dd4-829b-330ff03fd265 +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a03315b2-80a7-4126-94e4-542b4a230120 + - ! fb381439-feb0-4d4e-9704-a129807cd14f +- ! + PrefabRemaps: + [] + Name: Categories + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 8946e655-453e-4b63-bcea-3578089bd248 + - ! 04c9c748-23fb-49f4-b278-870084087759 +- ! + PrefabRemaps: + [] + Name: ring-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002705, y: 3.534420, z: 0.000029} + rotation: {x: 1.238160, y: -0.000262, z: -0.000026} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2b9a5b20-6a89-4fd1-906b-e97f4259712f + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.005385, y: 2.681950, z: -0.000095} + rotation: {x: -5.666190, y: -0.004601, z: -0.046291} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cea83226-8c66-44d7-895a-2480d9cc1c35 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! ce8466fa-1f06-4ffe-9845-a396fcd77c99 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 75f06a71-2897-421b-ad76-29a8983210d0 + _offIcon: ! c4785331-76b4-453b-92f9-c742c70bb179 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: wrist + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000006, y: -0.000002, z: -0.000000} + rotation: {x: 157.399994, y: -83.865097, z: 115.817001} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8d12c0a3-c20a-4dd4-b82e-4aa3489ca78f + - ! f154d1c1-2595-4578-acc2-6872637af31a + - ! 86412b42-c0cf-4fc3-a8a2-fe90221abc59 + - ! 2d1055e9-e5d5-49f7-8955-de8f46da0f6a + - ! eb361989-1d4a-41f7-a205-235ce6f4e3b9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000006, y: -0.000000, z: -0.000002} + rotation: {x: -176.654007, y: -5.519800, z: -92.680099} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 309860a1-e8fd-49a7-8b08-343086fa08dd + - ! dddd8a38-ce19-4f71-8776-9826e6597567 + - ! a9edf4cd-40ec-4fe4-83b1-2f9439932ef0 + - ! ebf022e3-0fd7-4f48-b695-a86d4509dbfb + - ! cd4ffac9-4a32-4dba-b0a2-db117c38b975 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Flight Path + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.257892, y: 7.500000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! bf4229f1-c6a5-48d1-a38f-f04b89258a5f +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 2c726df3-cfa3-4978-b146-a95fd5824626 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -0.320000 + right: 1.000000 + top: -0.320000 + Offset: + left: 0.000000 + bottom: -16.000000 + right: 0.000000 + top: 16.000000 +- ! + PrefabRemaps: + [] + Name: mid-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.013405, y: 3.861870, z: 0.000233} + rotation: {x: -4.535240, y: -0.003456, z: -0.026343} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1f2cf37f-fd91-492c-a63b-884a08cd9215 + Components: + [] +- ! + PrefabRemaps: + [] + Name: RocketLaunchControl + Enabled: true + ScriptAsset: ! c0c12ffb-ecd8-43f8-8d68-f490810b1be0 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + slider: ! bb1bcce0-ba3e-493a-a321-bfd9d4b75942 + animationAButton: ! a6a33942-2295-4ffb-b9b7-ccc78ac22bdb + animationBButton: ! afc699c7-a1ac-4bb9-9288-3b00af3d4f6e + animationCButton: ! 0218fe8f-b6a4-4bbb-b452-daaa2e9df793 + launchButton: ! e41e4172-e7f2-4603-851c-dc05a0e21a3c + rocketConf: ! 5d2ffe4e-a3da-4dec-9bfe-d8d4271b8df0 + launchSparks: ! a6e780b3-03cb-49aa-8d53-83150b2bd5d6 + rocketAnimationPlayer: ! ab2efbdd-f11e-4691-bafc-7325dd21c9ce + flightPathText: ! bf4229f1-c6a5-48d1-a38f-f04b89258a5f + launchPlatformToggleButton: ! 0bcbfbe9-9e47-4eb6-add1-546001a963ac + launchPlatform: ! 245cb741-c1b9-4805-b7c1-793674f0d7ed + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: wrist_to_mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: -0.519104, y: -5.758140, z: 5.627940} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 711f9787-d880-4475-8f0a-0cf6b2492a6b + Components: + [] +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! c9cd2679-ba09-4f0f-98d7-ec3140e249c7 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! bf23557f-e639-48f1-aff2-aafc4d92fe11 + meshHoverMaterial: ! 386f728b-6a31-4633-b176-f92cd5bc60ce + meshPinchedMaterial: ! 92c09c9d-bf66-4313-9fbd-9c191887a5d4 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Launch Platform + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 60 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.930451 + bottom: 0.520907 + right: 1.000000 + top: 0.672431 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 191e721f-d750-40f4-9dad-886423a6748b + useGlowMesh: true + glowRenderMeshVisual: ! a926d3f6-4c43-4f85-9ff3-fdf0b8a43975 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 10bb912d-512d-45fd-9781-9ddd98ae234e + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.075000 + meshVisuals: ! + - ! 40b553a5-b39e-4dc6-8c90-d82fc630df17 + - ! 533975ad-ccc7-4ccf-a527-4950ab63f014 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Radius: 6.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Rocket + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -0.064316, z: -5.097826} + rotation: {x: 90.000008, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 55313075-8410-4c83-b5fc-0b24ef2aa1dc + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_thumb + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 26.024099, y: -37.686901, z: 24.403400} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6480de4a-e83a-4ebf-919e-d73bc4fd2eee + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166710, z: -0.000003} + rotation: {x: -180.000000, y: -0.000000, z: -180.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f9d02a8c-71a4-411f-a21e-a7b3329c62d6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: thumb-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.067402, y: 3.518870, z: -0.005366} + rotation: {x: 14.034800, y: -0.274095, z: 1.092330} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a3ea66da-0ca8-4958-8d69-6f5045fa706c + Components: + [] +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a926d3f6-4c43-4f85-9ff3-fdf0b8a43975 +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.000000, y: -5.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! 30731ae6-289b-40fa-b3fc-5c9bd58bac6f + - ! 596fcf5b-2e39-4bfd-aeb3-3cbf0b735336 + - ! 0792cf4a-d692-4ca7-89ef-ba58c0a857a1 + Components: + - ! b520b5ac-c0da-46bb-a00c-baecbc88e66b + - ! 415e075d-7e74-4a7b-b4bb-35e587f05ae9 + - ! 8bff9b45-f459-40c7-9888-907eb306c19e + - ! f2a17cfa-5b56-4950-8997-729b270c0943 + - ! bf681195-f9d5-4c14-b881-deb9c183055f + - ! 5a8852ff-ecda-4881-abe7-1ceb2c524c26 + - ! e136b9a2-8a37-4184-ab37-94e8afa47a33 + - ! b3638d6c-5f3e-48f4-b0ed-dfb7bedc6e16 + - ! 2d1d4e99-2eba-40f3-a19b-2206cfc6cde6 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! c81a5037-9552-4a7a-b402-6e5afdd00132 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 2c726df3-cfa3-4978-b146-a95fd5824626 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! c8f4eea7-64ca-47b6-9616-63c3905ba6b0 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RightHandInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 58d2a4c0-8eba-4ef1-b77e-c7f7d1192d79 +- ! + PrefabRemaps: + [] + Name: ScrollBarFeedback + Enabled: true + ScriptAsset: ! 37bf0d33-fcd6-4d18-8150-19002357972e + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + scrollbarObject: ! b5eec3f8-31fe-4836-97ef-9f94c6079d27 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Flight Speed + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.257892, y: 0.500000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6815ee1c-768c-4dd2-92be-21f63f7e9555 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703720, z: -0.000000} + rotation: {x: 0.000283, y: 0.000276, z: 0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 07d5618b-22f9-4656-87fd-b0198fa0aeb6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! a62af18c-fb3f-4a13-a592-d489294e0864 + Mesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 13 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 4d35bac2-e858-4d9c-afa4-6f02ae7d5065 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + border: true + constantPadding: true + allowScaling: true + autoScaleContent: true + isContentInteractable: true + allowTranslation: true + xAlways: true + yAlways: true + worldSnapping: true + isFollowing: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 16.000000, y: 32.000000} + border: ! 4.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: true + autoScaleContent: true + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 8.000000, y: 8.000000} + maximumSize: ! {x: 200.000000, y: 200.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: true + itemSnapping: true + worldSnapping: false + showFollowButton: true + useFOVFollow: true + isFollowing: false + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! e1075a24-89cb-4368-90aa-e14b04dd49ee + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketGridContentCreator + Enabled: true + ScriptAsset: ! 01cb4976-7110-49ff-ae27-dbb77153e547 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + rocketConfigurator: ! 5d2ffe4e-a3da-4dec-9bfe-d8d4271b8df0 + objectPrefabs: ! + - ! 8104e815-4316-48be-ad1a-2021666f989f + - ! b9b3aff4-658d-4c76-ab3d-b479d4a722c8 + - ! e56db565-cd60-4e54-9dc1-b211e729b73b + - ! e7254ab7-df28-44a9-9252-05d53fbdc7da + - ! 242abbc5-63eb-448b-9a60-c5f5eae6725c + - ! 76789411-9f7c-4352-84bb-6a762a706580 + - ! 68a19954-e237-4b18-827d-db13073a38d6 + - ! 32671acc-9b4d-4487-ac10-3af976d942d7 + - ! 5c321a82-1be9-40b7-a482-f37464b708db + - ! dbb1f943-cd3e-4b20-89e5-0ce41c98a705 + - ! bbe206c8-38e1-4245-9550-2a019fe7e078 + - ! f2f3ca41-1bd5-4136-a5db-f3edb882b464 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: mid-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.013406, y: 3.861870, z: 0.000154} + rotation: {x: -4.535300, y: 0.000290, z: 0.000017} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cfc52ae9-3c49-4c47-8299-82d37cdb1095 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample Mid Bottom Left + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -5.000000, y: 9.500000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! 5e5af924-472c-42fc-b74e-6eb873878cd7 + - ! 15a2c426-477a-4caf-8642-c3457e1d2ba0 + - ! fdd99efb-e57a-4acc-8115-665e08974fff + Components: + - ! 707d6193-db62-4bbf-8ef5-ce8b6b2084f3 + - ! 05143b60-129f-49e1-85ec-a816706a6414 + - ! a55d6f68-e6f9-4376-99a1-a927c3ced661 + - ! 9ad84203-8f0d-4264-899f-55d41d0e1a6c + - ! 8488c269-5631-4f05-832a-bb86fea89cfd + - ! a06f7e1b-f9f5-4b92-bb81-adb228cbfb7f + - ! af18f812-3c7c-4c4d-b162-5fb8957ea933 + - ! 918c5760-db78-41a6-85e3-422aad5871b6 + - ! f0e75a3b-9b96-4ae7-8275-a01d822b9812 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 57e56f6b-0632-4d36-829e-5265b4e158ec + Mesh: ! 9ab42643-fa56-4906-8dc6-c9cb4b53034f + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 15a2c426-477a-4caf-8642-c3457e1d2ba0 + _offIcon: ! fdd99efb-e57a-4acc-8115-665e08974fff + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: 0.000001} + rotation: {x: -0.000096, y: -0.000037, z: 0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9f9bcf5b-6b30-496e-b734-5aa240e969c5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7b2af8df-1c63-4356-b8a3-c24a66c38bc3 + - ! e2772a95-961f-4ea5-af46-ec9edb3d7b73 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + ScriptAsset: ! 6edc785e-877c-4a9a-b0a0-3f29d68e2274 + ScriptInputsDefault: + _boundingHeightOffset: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _scrollBarMeshVisual: ! ce8466fa-1f06-4ffe-9845-a396fcd77c99 + _boundingHeightOffset: ! 0.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: root + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b606a2f9-401b-42b3-9eef-918b489cf6e1 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Planet + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 65.821396, y: 27.248711, z: 25.771273} + scale: {x: 0.222222, y: 0.222222, z: 0.222222} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 40b553a5-b39e-4dc6-8c90-d82fc630df17 + - ! 533975ad-ccc7-4ccf-a527-4950ab63f014 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 10bb912d-512d-45fd-9781-9ddd98ae234e + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Launch Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 62547522-b4cd-4cc8-ac0e-1d7b19810e4b +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 9999 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 4254844d-aef9-45e9-87f1-d6ab7d608c4f + Mesh: ! b2d2360c-44b0-4f99-a5ad-3651706e0e4b + Skin: ! 32346fd9-8168-4666-87d9-78060a1ebed2 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: thumb-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.067615, y: 3.518870, z: 0.000095} + rotation: {x: 14.081600, y: -0.000034, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d2c2e4e9-c17c-4ecc-902f-2283f319023b + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.549800, z: -0.000001} + rotation: {x: 0.000059, y: -0.000014, z: -0.000073} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 75b74ef8-ecbe-4864-bb69-4c09f5be1606 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b40e0144-e33d-42b1-ba14-df79a03a9dec + Components: + - ! 7aba5d5f-52d6-4e86-bca4-7610c2d8727f + - ! c4fb2a89-29e2-4cd0-83a0-caab4b180dd8 + - ! 518a868f-cc66-4792-b60f-ae208a68b340 + - ! 6e90f370-608f-48a3-9007-f3686d1cbf61 + - ! 18e61105-5612-488b-be18-f954b19b54c8 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 4.600000, y: 2.000000, z: 2.200000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166730, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 10bb912d-512d-45fd-9781-9ddd98ae234e + - ! 78314fe3-2dee-47f9-a5fc-217c8c9f8ad7 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! b1daa443-4454-49b0-b62e-888fd23b0dff + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 7187afe7-3b99-4e61-8740-26999683d2d8 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.054705, y: 3.957050, z: -0.004463} + rotation: {x: -2.614390, y: -0.009460, z: -0.205101} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 60037818-559f-4345-ac44-f7c5dfc86f3c + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 176ee445-955a-4c0f-8bd8-d0f488067e77 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RightHandRig + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 826246a6-44ea-4331-85b3-702fa57389fb + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Container Frame + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 74 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 12 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 182db9f2-4d62-49ff-8cfe-55c29488a2e8 + Mesh: ! 45bdf724-f7f0-4a8b-b6c9-191da2777f09 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: max + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: index-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837170, z: 0.000001} + rotation: {x: 0.000189, y: -0.000000, z: 0.000044} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f3c8087e-8414-4601-833d-96cf682f94d3 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837150, z: -0.000001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 02a86b70-f0f0-41ad-87bd-21c32b796670 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Meteor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 121.091568, y: -23.471666, z: -5.285858} + scale: {x: 0.222222, y: 0.222222, z: 0.222222} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9a0d0de2-a18b-4052-afdd-3dd3f5b36527 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -0.320000 + right: 1.000000 + top: -0.320000 + Offset: + left: 0.000000 + bottom: -16.000000 + right: 0.000000 + top: 16.000000 +- ! + PrefabRemaps: + [] + Name: Path Option A + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -6.000000, y: 4.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 8496b5c1-00ea-43de-aad5-2e7c49cc31e8 + - ! 2f6be6c6-d719-4790-aaaa-7447b8082641 + - ! 944818d2-970a-4095-809e-ead99a336bee + - ! eccbd45a-a745-416c-a011-f1e0ca293492 + - ! 747d7d5c-fc2d-4ddc-a9ab-c1abc047f7b3 + - ! ee360366-a3ca-4676-8995-0d10669f47ca +- ! + PrefabRemaps: + [] + Name: Rocket_sparks + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 28fed4d6-fc69-44fe-a2d8-7887004b586e +- ! + PrefabRemaps: + [] + Name: index-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.017407, y: 3.481390, z: 0.001771} + rotation: {x: -8.084740, y: -0.103266, z: -0.728726} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 40a2ea5b-f164-48c5-8ffc-c3dfcacc6d91 + Components: + [] +- ! + PrefabRemaps: + [] + Name: CapsuleMeshCustomizer + Enabled: true + ScriptAsset: ! 34ec9e1d-4d86-425e-9b7a-b6f2c130e4be + ScriptInputsDefault: + radianStepCount: true + cylinderStepCount: true + endXStepCount: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + meshVisual: ! 7d2c6118-bccb-4bc2-88cf-97a6b5513a3b + capsuleLength: ! 8.000000 + radius: 1.200000 + radianStepCount: 16 + cylinderStepCount: 16 + endXStepCount: 32 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000000} + rotation: {x: 0.000104, y: 0.000103, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a114455b-6a9f-4990-a3cc-fa88e4a4829a + Components: + [] +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! db52baa5-d1ea-401a-ab87-52542d8f88a9 + - ! 2e838a25-f9b5-4b47-85ad-a2cda44aef4b +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7e31cf4c-750a-4c67-90c5-c3531bd74976 + Components: + - ! 66474512-1120-4925-a98a-4e953df411be + - ! 746d0107-53fb-4141-9ac3-f8d4a4de25f6 +- ! + PrefabRemaps: + [] + Name: wrist_to_mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: -0.519322, y: -5.969350, z: -5.521840} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0b1bf884-4efd-4b6d-83ac-82540696baec + Components: + [] +- ! + PrefabRemaps: + [] + Name: Animation Player + Enabled: true + Autoplay: false + ClipRangeType: Frames + AnimationClips: + - ! + AnimationAsset: ! 8811a6ee-076e-4144-a4e2-0cdc9e2fe3c2 + Name: Base Layer Rocket 1 + Weight: 1.000000 + PlaybackSpeed: 1.000000 + Begin: 0.000000 + End: 400.000000 + Reversed: false + Disabled: false + BlendMode: Default + ScaleMode: Multiply + PlaybackMode: Single + - ! + AnimationAsset: ! 7eba6aa9-4ba6-4792-9195-8471fd86103b + Name: Base Layer Rocket 2 + Weight: 1.000000 + PlaybackSpeed: 1.000000 + Begin: 0.000000 + End: 420.000000 + Reversed: false + Disabled: false + BlendMode: Default + ScaleMode: Multiply + PlaybackMode: Single + - ! + AnimationAsset: ! af080ccb-4a5a-400a-aa23-a9f0d85ad3e1 + Name: Base Layer Rocket 3 + Weight: 1.000000 + PlaybackSpeed: 1.000000 + Begin: 0.000000 + End: 360.000000 + Reversed: false + Disabled: false + BlendMode: Default + ScaleMode: Multiply + PlaybackMode: Single +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: RightHandVisual + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 780f2ffa-fc27-462d-85fd-d216d21e774a + Components: + - ! efcda464-fbc4-45be-93af-a83450f936fa +- ! + PrefabRemaps: + [] + Name: "[OPTIONAL] Visuals" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4527c113-2c46-40b1-bb7d-3acd00e22bd2 + - ! 7384c798-527a-41b9-862e-c12bc86376d3 + - ! 0deb320d-887e-4b1a-b988-f11b2c4d951b + Components: + [] +- ! + PrefabRemaps: + [] + Name: SliderExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -2.750000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! f1545112-6a03-4871-8dd1-8e6ab04d0263 + - ! 29cd2053-da79-409f-a02c-7813f87e07cb + - ! b7fba43c-452e-419c-b421-7f9ed959fc9d + - ! 5f16b23c-e28f-4c50-8c1c-2c3f7dc7f172 + Components: + - ! d7a659b8-d162-4114-b1dd-7f7cc7713ce4 + - ! bb1bcce0-ba3e-493a-a321-bfd9d4b75942 + - ! 26ede8b2-17bf-4212-8f45-69f5d081b2d1 + - ! 1d8a290d-963a-46a8-9940-5168049a2f1b +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 99f579a8-56f0-43e0-a8d6-487767601be0 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -15.000000 + bottom: -20.000000 + right: 15.000000 + top: 20.000000 +- ! + PrefabRemaps: + [] + Name: Path Option B + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 4.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 58619b05-f4de-4b2e-87a7-5d2e3975e656 + - ! 1178b66b-8768-412a-b9d9-22cd62eb75b6 + - ! 30a344f8-7554-4aa0-b822-ab93feef4a04 + - ! 6a604f37-8018-4822-ad71-2c9450314663 + - ! 14d07aee-b879-475b-b38a-1f57679a5150 + - ! 50186944-f701-485e-a1d0-805b7a11fb31 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Meteor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: -18.000000, z: -100.000000} + rotation: {x: -118.520844, y: -7.233747, z: -22.973654} + scale: {x: 4.500000, y: 4.500000, z: 4.500000} + hasSegmentScaleCompensation: false + Children: + - ! a674c3db-9f91-4c31-8fa5-f8b9f9f7c26b + Components: + - ! 719b6eb1-f36b-47e9-9556-6afbe0c43381 + - ! 9691d251-33d9-48ef-afb4-918aa0e504a4 + - ! a1b06eaa-4ccd-49e2-91f2-a8cfece5254b + - ! d3859700-4e38-4998-b2f5-741d92ebcb0d + - ! 1ff4c4c4-7489-43df-a8db-2e344d803a73 +- ! + PrefabRemaps: + [] + Name: MouseInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 08614d83-f067-4740-a346-a0b10d1ffd62 +- ! + PrefabRemaps: + [] + Name: ring-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703730, z: -0.000002} + rotation: {x: -0.000202, y: -0.000189, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 933ca421-582e-407b-bfc6-206a10cef5f3 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218160, z: 0.000000} + rotation: {x: 0.000000, y: -0.000011, z: -0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3f428eaa-6547-40ec-865e-50071201a35e + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 6d4e14b0-90fb-47b0-8368-e3cb543772be + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f80a738a-5010-43a5-858a-bbf56571ffe9 + Components: + - ! 359497a3-5746-4d6d-ad9b-2da791af7c71 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: LeftHandVisual + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6f50df52-5045-47a8-839c-bbd20bc99bb5 + Components: + - ! dd01563a-be2b-4815-85ad-bf139803cc1f +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 17.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 90.000000} + scale: {x: 0.750000, y: 0.750000, z: 0.750000} + hasSegmentScaleCompensation: false + Children: + - ! 70267976-2504-4ab6-a026-24d69ff17481 + Components: + - ! 21dd5d7f-9153-45b1-a73d-f18313b86363 + - ! 476a663f-fad2-44e3-ad61-286e19b37dfa + - ! f38fa9c7-4103-4272-b5e2-3b7124ed7ce1 + - ! 5b99b34a-8a78-46ec-bca7-febdc2cb38ba + - ! 1f1525d1-8d72-49a2-90ee-c426f9cb604b + - ! 86b17c3d-838e-4a5c-a0ce-f14ca0365958 +- ! + PrefabRemaps: + [] + Name: piece_0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 5.097826, z: -0.064316} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8cbf86dc-678e-4587-9018-24c77fcb87ba + Components: + [] +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 43078030-e461-4768-adc9-c9cc59a99925 + Components: + - ! 331d31fb-3314-4854-b9a3-79258433491c + - ! 1a731ac7-66ca-47ad-92a9-6df9f54559ff + - ! 3e990679-08c6-45bd-99e3-c496efe54958 + - ! b04e02ae-2d83-4ddd-ad4b-d9d44e288ea4 + - ! 2511b2b1-575d-4f30-a2fe-766e9fd37247 +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8ff150de-0826-44a7-b007-b7d63b771dec + Components: + - ! 191e721f-d750-40f4-9dad-886423a6748b +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + _minValue: true + _maxValue: true + stepBehavior: true + _stepSize: true + toggleDuration: true + editEventCallbacks: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnValueUpdate: true + onValueUpdateFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: ! 0.000000 + _maxValue: ! 1.000000 + startValue: 0.200000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! 4ef466ba-05b2-4721-926d-f1c7cb84f6ce + sliderMax: ! de34385c-1796-499f-a145-30de42478770 + _sliderKnob: ! b7fba43c-452e-419c-b421-7f9ed959fc9d + editEventCallbacks: false + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 00000000-0000-0000-0000-000000000000 + onValueUpdateFunctionNames: ! + [] + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewCanvasExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -1.000000, y: 2.000000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f73472e1-698a-422a-9c68-84d1efe83979 + Components: + - ! af555212-8f01-4ef5-ae4b-f6165bfa9524 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 11.824800, z: -0.000000} + rotation: {x: -2.274930, y: -6.337840, z: -8.604530} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7f36a885-824c-4329-8b11-919324b5c881 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.008392, y: 3.222930, z: -0.000121} + rotation: {x: -0.204897, y: -0.651952, z: -2.287250} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d180e208-2df8-4507-8437-213a1fbd5da6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: "Flight Path : A" + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 60 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 6d4e14b0-90fb-47b0-8368-e3cb543772be + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 74abefc1-8f07-4b85-ab38-56f79d4121cf + Components: + - ! 9d532054-b0c0-4010-8794-fa57c9799d54 + - ! 7248fd29-ec71-4bc5-8598-09fdc27b8ef2 +- ! + PrefabRemaps: + [] + Name: ScrollViewContent + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! bb11bac7-b260-481e-b248-3310cae98857 + - ! 98246104-48dd-4773-a262-901eb025dd7f +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f30b1cbf-55cb-4854-918a-d6f5b68ff302 + Mesh: ! 18828ccb-4865-4bf5-b7c5-fdec9ae7650e + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 984db3b0-1a01-4963-8136-336c958e1a49 + - ! 2f34d356-e061-4554-86f9-45f88456b823 +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 638efe86-613f-4735-a142-375f9fb83afe + - ! 5367e022-22f0-4dfc-9033-fee474422327 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! dcc3ad96-997c-4e0a-94bc-1ae501eb02af + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 05939801-596e-411f-bd24-9fbc171bc0e2 + - ! ea3916e5-1ca2-40ba-9dcf-b879223def2e +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 86cd1c89-4acd-46a5-9300-bf400950a160 + - ! 92d62d0b-7784-4366-a98b-d8c7b871a20f +- ! + PrefabRemaps: + [] + Name: Cylinder + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -0.760220, z: 0.000000} + rotation: {x: 90.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.100000, y: 0.100000, z: 0.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7cfbbba0-108e-4a50-b7e2-d1c3b1bd41ec +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Scroll View + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 100 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.050000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: HeadlockExample + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 10.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1161e9b5-dfd3-48af-bda0-382056faca0e + - ! f42901f6-dbe4-4b0b-8101-9e5808ddccd5 +- ! + PrefabRemaps: + [] + Name: PinchButtonSphereExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.000000, y: -11.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! a12dde47-121d-4cc8-9c0b-b81035a9e978 + Components: + - ! 0c25a461-e954-4aee-8025-fd09f0820b75 + - ! d61d8ea0-5799-4c2d-a758-e1b998b0776d + - ! 67659e53-1286-4a35-8b13-6315e55ec4ad + - ! a30edd5e-d264-44de-8689-bfff92353aee + - ! 9188ad33-5b31-42f6-803b-bdc32eaa3b84 + - ! 9e96b8e0-7368-462e-9b7a-a04eb624490a + - ! 632c566d-6d56-49df-815a-0c42af3a0582 + - ! bd8445e3-a912-42b5-8817-15b3833aad22 + - ! 8ba0a378-a2b5-4cae-bdda-10b0c25634c6 +- ! + PrefabRemaps: + [] + Name: Manipulation Examples + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4e51c7da-93cd-49bc-92ba-ac1b17778914 + - ! 176ee445-955a-4c0f-8bd8-d0f488067e77 + - ! b1daa443-4454-49b0-b62e-888fd23b0dff + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! bf23557f-e639-48f1-aff2-aafc4d92fe11 + Mesh: ! 2a58608b-008d-40f8-9627-d339311f2e1d + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch Horizontal: 0.000000 + Pinch Vertical: 0.000000 +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703720, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Billboard + Enabled: true + ScriptAsset: ! b5593251-a0da-4491-8561-2e0dccd715bc + ScriptInputsDefault: + _xAxisEnabled: true + _yAxisEnabled: true + _zAxisEnabled: true + _axisBufferDegrees: true + _axisEasing: true + duration: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _xAxisEnabled: false + _yAxisEnabled: true + _zAxisEnabled: false + _axisBufferDegrees: ! {x: 0.000000, y: 0.000000, z: 0.000000} + _axisEasing: ! {x: 1.000000, y: 1.000000, z: 1.000000} + duration: 0.033000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: wrist_to_pinky + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 0.918454, y: 18.264400, z: 17.580700} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 050bbf47-8842-4bc2-abe8-7a28fc5c70ab + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! eb3812be-7e6b-41c8-b613-68c8fb3b6f13 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 11 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 0607447c-e8df-4721-9c51-777e973d74eb + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: index-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837150, z: -0.000000} + rotation: {x: 0.000038, y: 0.000042, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a650b8d7-507a-404b-bfe5-9602e915dae8 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.008175, y: 2.218150, z: 0.000011} + rotation: {x: 83.677002, y: -4.512030, z: -172.722000} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b2d002f5-2b50-4f66-8c0d-93d5dba56556 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002791, y: 3.304380, z: 0.000029} + rotation: {x: 1.238300, y: 0.000079, z: -0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7cb41a88-1dcc-444c-8349-a62b24a8e765 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 27665dcf-a50f-4925-b8cd-994e028b53ee + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 20a44568-f561-4cda-bbbe-617352fde4cb + - ! 4aaa67cb-706f-41f4-aeb6-f7ec30c1a568 +- ! + PrefabRemaps: + [] + Name: mid-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002905, y: 3.650320, z: -0.000094} + rotation: {x: -2.676470, y: 0.000075, z: -0.000412} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6229e282-4449-48f3-8ef5-b90c67ba62fd + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: SliderExample Mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 4.000000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 9c5d0a62-61e2-4cee-a999-b414d94681f4 + - ! c5537a7d-0960-46f6-8f0a-33da2df70200 + - ! a0358279-a981-46bc-b610-1f660aa06e5c + - ! 3a26884c-bd77-42bc-810b-bdb3f541ed66 + Components: + - ! 56d4cda9-6530-4e6b-a29d-aba472cf39c2 + - ! 23bd31e8-9bc7-42d8-984e-51ec9382901d + - ! 21089adf-ca6a-4e65-943f-6b0535f687c4 + - ! b341840b-5fd1-4f31-8d01-e00181428d23 +- ! + PrefabRemaps: + [] + Name: index-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.009134, y: 2.837150, z: 0.000078} + rotation: {x: -87.845497, y: -5.462180, z: -5.671890} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 20841b1c-e2a6-42cf-9bd0-4fd466eae39c + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.054883, y: 3.957040, z: -0.000166} + rotation: {x: -2.622440, y: -0.000180, z: -0.000073} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1b6d2315-e870-4a05-9817-029318f16b5a + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.075000 + meshVisuals: ! + - ! 9a0d0de2-a18b-4052-afdd-3dd3f5b36527 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ContainerFrameUI + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 55.000000, y: -5.000000, z: -65.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! daaa4347-1049-4c69-908c-884fdc3fcdf5 + Components: + - ! 95ed011f-c8a5-469d-8a2b-cd95475e2dc9 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 05939801-596e-411f-bd24-9fbc171bc0e2 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! fae74c4b-9de8-469f-9c4d-9b8447f28821 + _offIcon: ! 46ffb5eb-4516-42f9-a865-7f8555cfd9da + _isToggledOn: true + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ConfigurationValidator + Enabled: true + ScriptAsset: ! 287c2824-8220-4e9e-8ac8-18a7e8a5aad0 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.549810, z: -0.000001} + rotation: {x: 0.000118, y: -23.667299, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 11e7d38c-6fbb-4f05-b89d-a44a9ae8336a + Components: + [] +- ! + PrefabRemaps: + [] + Name: BillboardExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 10.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 94b1ea6d-0acf-48e0-94fd-976cf245ae26 + - ! cd4e3b1e-183f-4798-a3fa-c7b0750c0f3c +- ! + PrefabRemaps: + [] + Name: Controls + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e01f28f1-602b-4d5f-8baa-63b0f3957776 + - ! 7187afe7-3b99-4e61-8740-26999683d2d8 + - ! 581eb383-c10f-47e0-8310-210d1491e7df + - ! 99f579a8-56f0-43e0-a8d6-487767601be0 + - ! d0b648c0-f031-49e7-ac1c-c9072a903317 + - ! 020ee714-1399-495b-99f0-f04b977c4f6f + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: JoystickPlane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 14.315620, y: -28.095922, z: -37.412357} + rotation: {x: -90.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9483e63b-dab9-44ec-8db8-78b1713baf69 +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + ScriptAsset: ! 6ad8e076-1f73-4dde-9236-fd993752a829 + ScriptInputsDefault: + _debugDrawEnabled: true + enableHorizontalScroll: true + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: true + scrollAreaBounds: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _debugDrawEnabled: false + enableHorizontalScroll: false + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: 0.300000 + scrollAreaBounds: ! {x: 1.000000, y: 1.000000} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218160, z: 0.000000} + rotation: {x: -0.000051, y: -0.000000, z: 0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 162925ed-6a4c-401a-a521-86902851061f + Components: + [] +- ! + PrefabRemaps: + [] + Name: HandVisual + Enabled: true + ScriptAsset: ! 27fb63e0-f430-409f-b812-20bc1f008d3c + ScriptInputsDefault: + selectVisual: true + autoJointMapping: true + wrist: true + thumbToWrist: true + thumbBaseJoint: true + thumbKnuckle: true + thumbMidJoint: true + thumbTip: true + indexToWrist: true + indexKnuckle: true + indexMidJoint: true + indexUpperJoint: true + indexTip: true + middleToWrist: true + middleKnuckle: true + middleMidJoint: true + middleUpperJoint: true + middleTip: true + ringToWrist: true + ringKnuckle: true + ringMidJoint: true + ringUpperJoint: true + ringTip: true + pinkyToWrist: true + pinkyKnuckle: true + pinkyMidJoint: true + pinkyUpperJoint: true + pinkyTip: true + occluderEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + handType: left + selectVisual: Default + handInteractor: ! 22e40d6c-4405-4a2f-9eda-9f5e0d425a75 + handMesh: ! 9f2b3f06-77a1-4255-830d-ad50801287bd + root: ! 6f50df52-5045-47a8-839c-bbd20bc99bb5 + autoJointMapping: true + wrist: ! 00000000-0000-0000-0000-000000000000 + thumbToWrist: ! 00000000-0000-0000-0000-000000000000 + thumbBaseJoint: ! 00000000-0000-0000-0000-000000000000 + thumbKnuckle: ! 00000000-0000-0000-0000-000000000000 + thumbMidJoint: ! 00000000-0000-0000-0000-000000000000 + thumbTip: ! 00000000-0000-0000-0000-000000000000 + indexToWrist: ! 00000000-0000-0000-0000-000000000000 + indexKnuckle: ! 00000000-0000-0000-0000-000000000000 + indexMidJoint: ! 00000000-0000-0000-0000-000000000000 + indexUpperJoint: ! 00000000-0000-0000-0000-000000000000 + indexTip: ! 00000000-0000-0000-0000-000000000000 + middleToWrist: ! 00000000-0000-0000-0000-000000000000 + middleKnuckle: ! 00000000-0000-0000-0000-000000000000 + middleMidJoint: ! 00000000-0000-0000-0000-000000000000 + middleUpperJoint: ! 00000000-0000-0000-0000-000000000000 + middleTip: ! 00000000-0000-0000-0000-000000000000 + ringToWrist: ! 00000000-0000-0000-0000-000000000000 + ringKnuckle: ! 00000000-0000-0000-0000-000000000000 + ringMidJoint: ! 00000000-0000-0000-0000-000000000000 + ringUpperJoint: ! 00000000-0000-0000-0000-000000000000 + ringTip: ! 00000000-0000-0000-0000-000000000000 + pinkyToWrist: ! 00000000-0000-0000-0000-000000000000 + pinkyKnuckle: ! 00000000-0000-0000-0000-000000000000 + pinkyMidJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyUpperJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyTip: ! 00000000-0000-0000-0000-000000000000 + shouldThumbPokeGlow: true + unitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + tipGlowMaterial: ! ea08fbd2-4db1-40d5-855b-ca5307409d64 + idleColor: ! {x: 1.000000, y: 0.686275, z: 0.000000, w: 1.000000} + pinchDownColor: ! {x: 0.968627, y: 0.827451, z: 0.000000, w: 1.000000} + tapProximityThreshold: ! 8.000000 + pinchTexture: ! e0a110ae-6b49-431f-9924-e602351e9a0c + tapTexture: ! f5355afd-bcbc-4434-bcf9-9ff4c341eb87 + occluderEnabled: false + occluderUnitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + radialGradientOcclusionMaterial: ! ab926f89-771c-45e0-a44c-ba4f9f57cafb + handOutlineMaterial: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + handOccluderMaterial: ! f5326505-501a-4c5e-8979-15bb3dadfa0b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketLaunchControls + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -35.000000, z: -30.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5119d836-55fa-4ba4-8c3d-d0b80d1d734b + - ! 83d5803d-8670-46ff-bb65-883b011f0b74 + - ! a6a33942-2295-4ffb-b9b7-ccc78ac22bdb + - ! afc699c7-a1ac-4bb9-9288-3b00af3d4f6e + - ! 0218fe8f-b6a4-4bbb-b452-daaa2e9df793 + - ! 927ac346-e697-4d0a-9b9d-0e3f2e94a1ea + - ! acede8c7-aa51-4bd1-b85f-732bd8508449 + - ! 5d6fca19-9f65-47c8-98a7-4cde8903c9e7 + - ! 5617417b-b9c2-4482-aa98-1867e5ac4115 + - ! e41e4172-e7f2-4603-851c-dc05a0e21a3c + Components: + - ! 736562f6-84cf-42fb-82b8-335291e60254 + - ! 85195081-b4a3-4737-befb-f54a354a30b3 +- ! + PrefabRemaps: + [] + Name: MobileInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f2db0563-6c95-499d-8ddb-aa5cfaaf22f2 +- ! + PrefabRemaps: + [] + Name: wrist_to_index + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: -0.143142, y: -18.425200, z: -17.556000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 77f1a5d3-8594-40b5-8085-79f1d46ddd71 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5bd155b6-c347-45a4-8a2b-becdfd08223e + Components: + - ! 75a95bf1-07a7-4dac-b2e5-ef8509904b6f + - ! b2e357ba-668a-4213-a09f-fb4fc2ad02bb +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 9999 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 03d33697-6495-4e15-9a2d-646411a514a9 + Mesh: ! 735f7248-824f-40d5-8573-c0cfbbd03abf + Skin: ! 03f7bc43-5636-41fb-a9fc-1dbf378a0dd5 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: SliderExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 1.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 69b641ce-9bb9-451e-b831-06202ab01bce + - ! cf959d62-da77-4ea1-bff7-009b4c99fc9a + - ! e4ed526a-097a-49f6-b9ee-6e975ca6aad0 + - ! 73e0b27a-6485-47b6-8403-ad1a30991aec + Components: + - ! 30da0937-109a-47dd-a930-9e35bbd809e2 + - ! f00fea39-9eb8-4a3a-9afe-47d1a20fcade + - ! 1becfa95-9512-47d7-b458-5c095cf8aab4 + - ! 7a693d58-f56e-4a23-a5b4-3c7927f0818d +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 14.000000, z: 1.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a45d9874-f37c-41c9-b74b-fc5b8b804b30 +- ! + PrefabRemaps: + - 8ca7ffea-778b-45ee-baf9-6aa558a61677: 75cf1d14-7574-4e73-bdbe-6a782f03ce86 + - 9246cf15-0775-4fbf-bc87-cb7824cbd97e: 9c50ae2a-f7d3-40b4-8710-cb0f5b1be02c + - 968890b8-6509-4384-b371-c18eb46d40c1: 9ad35435-d450-4cf0-81a4-96a283b4814b + - a13740a1-b737-471a-9014-e207a803dde6: 7f0c59ca-5620-4202-9afb-d0eeb66b95fb + - a31c15b2-2467-411d-beb1-80392e60315a: c362c261-eae1-441e-b583-166a38382ca2 + - c8f4eea7-64ca-47b6-9616-63c3905ba6b0: 8120ce6a-1029-4b67-b649-b99d199dc703 + - d529df22-6d21-459a-b481-923e39841ae6: 66df1500-d300-4aad-983d-97255191bf90 + - e1075a24-89cb-4368-90aa-e14b04dd49ee: 55847278-3293-4af2-9f42-44ea3ffb53ea + Name: Joystick + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 14.315620, y: -24.865599, z: -37.412357} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 3.645104, y: 3.645104, z: 3.645104} + hasSegmentScaleCompensation: false + Children: + - ! c5725f7f-8982-4f2c-a27e-51a6be0bc963 + Components: + - ! a13740a1-b737-471a-9014-e207a803dde6 + - ! 8ca7ffea-778b-45ee-baf9-6aa558a61677 + - ! 968890b8-6509-4384-b371-c18eb46d40c1 + - ! c8f4eea7-64ca-47b6-9616-63c3905ba6b0 + - ! 9246cf15-0775-4fbf-bc87-cb7824cbd97e + - ! a31c15b2-2467-411d-beb1-80392e60315a + - ! ff9650be-e386-4824-af7d-a807c450028b +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 90241a03-c90a-4adf-a5f5-a73ec8f537fd + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Launch PinchButtonCapsule + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -10.850000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9ee0722b-8f29-4246-9a71-2a4b02882ddb + Components: + - ! cf4d228b-cd28-48c1-962d-e1b9c5869f60 + - ! c2edfd34-c09a-4e38-b5da-299dd2e2923c + - ! d7a920f6-7672-4c1a-a6fa-9df39a2df7f9 + - ! 2e37ae04-cd21-4a02-a804-b52785d4a939 + - ! df57c6a3-ff27-430b-892f-54bd0cbb8aea + - ! 1b71dec1-d351-4439-a74e-bfe6e8dc695a +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b8e0963f-7ab4-4b2e-a055-bdc1be1c3170 + Components: + - ! 362e94e3-4ac6-413f-9898-03b2d50f4074 + - ! d02de6b8-12a1-4901-b4fa-9d19c4742118 + - ! 36878003-0ee5-4463-a104-3de4afe8f3e0 + - ! 3313f067-0167-4972-8cc8-503b05b19c9a + - ! 89f336af-a54a-4771-9123-43c3e0d36098 +- ! + PrefabRemaps: + [] + Name: Device Tracking + Enabled: true + DeviceTrackingMode: World + RotationOptions: ! + InvertRotation: false + SurfaceOptions: ! + EnhanceWithNativeAR: false +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + ScriptAsset: ! 6ad8e076-1f73-4dde-9236-fd993752a829 + ScriptInputsDefault: + _debugDrawEnabled: true + enableHorizontalScroll: true + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: true + scrollAreaBounds: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _debugDrawEnabled: false + enableHorizontalScroll: false + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: 0.300000 + scrollAreaBounds: ! {x: 1.000000, y: 1.000000} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703710, z: 0.000002} + rotation: {x: 0.000000, y: 0.000000, z: -0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6b078b1c-99b5-4d40-81a0-46d9ea3bb1e3 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 11.787900, z: -0.000005} + rotation: {x: 0.059034, y: 19.848200, z: -15.906400} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a72bed4c-f7e3-4691-93f3-d06d66d75dd0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.500000 + right: 1.000000 + top: 0.931538 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: wrist_to_pinky + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 0.905911, y: 15.703600, z: -17.047701} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 50f48cde-a492-4587-8b76-26cff1adec60 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 5 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: wrist_to_ring + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 0.192403, y: 6.380900, z: 6.216870} + scale: {x: 1.000000, y: 0.999999, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! bdf62eca-a7ef-42cb-9f0a-c0db5dd7b3e7 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 78df9761-cce5-4f60-b157-14385776c01d + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Configuration + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d8ffb52f-2569-42b3-a616-c75eb7fe7e36 + - ! f66a2c0c-ecc0-41a4-be4a-21ad0c1b6cb7 +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 470c886d-541e-47a6-b5e2-de1e20589316 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Satellite + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 47.675831, y: 19.865082, z: 33.071331} + scale: {x: 0.222222, y: 0.222222, z: 0.222222} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c28c16aa-b964-4fb3-b0f2-7f9ca2ba897a + - ! 300b14cd-cae3-4ee6-ae39-700f003d85da + - ! 4f6d1d86-5d52-4d48-a192-3841b4dfeca7 + - ! 432ab8d2-ba1b-4223-a404-74110d12bba8 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + Axis: Z + Length: 1.900000 + Radius: 2.100000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 8496b5c1-00ea-43de-aad5-2e7c49cc31e8 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 962fe96e-aa8d-4ea3-8a35-09c60ce3f4dc + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: HandVisual + Enabled: true + ScriptAsset: ! 27fb63e0-f430-409f-b812-20bc1f008d3c + ScriptInputsDefault: + selectVisual: true + autoJointMapping: true + wrist: true + thumbToWrist: true + thumbBaseJoint: true + thumbKnuckle: true + thumbMidJoint: true + thumbTip: true + indexToWrist: true + indexKnuckle: true + indexMidJoint: true + indexUpperJoint: true + indexTip: true + middleToWrist: true + middleKnuckle: true + middleMidJoint: true + middleUpperJoint: true + middleTip: true + ringToWrist: true + ringKnuckle: true + ringMidJoint: true + ringUpperJoint: true + ringTip: true + pinkyToWrist: true + pinkyKnuckle: true + pinkyMidJoint: true + pinkyUpperJoint: true + pinkyTip: true + occluderEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + handType: right + selectVisual: Default + handInteractor: ! 58d2a4c0-8eba-4ef1-b77e-c7f7d1192d79 + handMesh: ! de62f5f3-2f86-4c98-b357-a44d603496f1 + root: ! 780f2ffa-fc27-462d-85fd-d216d21e774a + autoJointMapping: true + wrist: ! 00000000-0000-0000-0000-000000000000 + thumbToWrist: ! 00000000-0000-0000-0000-000000000000 + thumbBaseJoint: ! 00000000-0000-0000-0000-000000000000 + thumbKnuckle: ! 00000000-0000-0000-0000-000000000000 + thumbMidJoint: ! 00000000-0000-0000-0000-000000000000 + thumbTip: ! 00000000-0000-0000-0000-000000000000 + indexToWrist: ! 00000000-0000-0000-0000-000000000000 + indexKnuckle: ! 00000000-0000-0000-0000-000000000000 + indexMidJoint: ! 00000000-0000-0000-0000-000000000000 + indexUpperJoint: ! 00000000-0000-0000-0000-000000000000 + indexTip: ! 00000000-0000-0000-0000-000000000000 + middleToWrist: ! 00000000-0000-0000-0000-000000000000 + middleKnuckle: ! 00000000-0000-0000-0000-000000000000 + middleMidJoint: ! 00000000-0000-0000-0000-000000000000 + middleUpperJoint: ! 00000000-0000-0000-0000-000000000000 + middleTip: ! 00000000-0000-0000-0000-000000000000 + ringToWrist: ! 00000000-0000-0000-0000-000000000000 + ringKnuckle: ! 00000000-0000-0000-0000-000000000000 + ringMidJoint: ! 00000000-0000-0000-0000-000000000000 + ringUpperJoint: ! 00000000-0000-0000-0000-000000000000 + ringTip: ! 00000000-0000-0000-0000-000000000000 + pinkyToWrist: ! 00000000-0000-0000-0000-000000000000 + pinkyKnuckle: ! 00000000-0000-0000-0000-000000000000 + pinkyMidJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyUpperJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyTip: ! 00000000-0000-0000-0000-000000000000 + shouldThumbPokeGlow: true + unitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + tipGlowMaterial: ! ea08fbd2-4db1-40d5-855b-ca5307409d64 + idleColor: ! {x: 1.000000, y: 0.686275, z: 0.000000, w: 1.000000} + pinchDownColor: ! {x: 0.968627, y: 0.827451, z: 0.000000, w: 1.000000} + tapProximityThreshold: ! 8.000000 + pinchTexture: ! e0a110ae-6b49-431f-9924-e602351e9a0c + tapTexture: ! f5355afd-bcbc-4434-bcf9-9ff4c341eb87 + occluderEnabled: false + occluderUnitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + radialGradientOcclusionMaterial: ! ab926f89-771c-45e0-a44c-ba4f9f57cafb + handOutlineMaterial: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + handOccluderMaterial: ! 7c9de503-f8ed-4070-be89-238d9e1c76df + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + _minValue: true + _maxValue: true + stepBehavior: true + _stepSize: true + toggleDuration: true + editEventCallbacks: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnValueUpdate: true + onValueUpdateFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: ! 0.000000 + _maxValue: ! 1.000000 + startValue: 0.200000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! a9993c60-2bf2-4062-bc65-902e1a421c4d + sliderMax: ! bfbc951a-f9ae-4621-976e-7894a79478ac + _sliderKnob: ! e4ed526a-097a-49f6-b9ee-6e975ca6aad0 + editEventCallbacks: false + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 00000000-0000-0000-0000-000000000000 + onValueUpdateFunctionNames: ! + [] + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5faaa512-0907-4a7c-abc6-801f9506c109 + - ! 8d4da315-31b6-4260-a5b9-33ab66f361b6 +- ! + PrefabRemaps: + [] + Name: wrist_to_index + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: -0.140613, y: -15.148800, z: 17.637899} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e9344e0a-57f1-4226-9a18-a84052078b1b + Components: + [] +- ! + PrefabRemaps: + [] + Name: "[EXAMPLES] Simple UI" + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! dff35311-8c13-4a47-aa27-7c81428bea0f + - ! 78df9761-cce5-4f60-b157-14385776c01d + - ! 90241a03-c90a-4adf-a5f5-a73ec8f537fd + - ! 58cc0b26-acd9-4018-bd05-fcc1bcc6b837 + - ! c81a5037-9552-4a7a-b402-6e5afdd00132 + - ! 580ffb10-31e3-4ae9-ba29-d14cc5676538 + - ! da621398-4472-42c0-9dd2-b55cbd96c86c + - ! c7ce6262-5a95-4210-8fa0-05580c6a88db + - ! 68ad7faa-9aea-44b5-b204-85da6adb9bc9 + - ! d387093b-00a9-4e77-827f-d97a6674158b + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.075000 + meshVisuals: ! + - ! 3ce0edb2-6916-4124-a47a-c94e3b9cab61 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 596fcf5b-2e39-4bfd-aeb3-3cbf0b735336 + _offIcon: ! 0792cf4a-d692-4ca7-89ef-ba58c0a857a1 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: MobileInteractor + Enabled: true + ScriptAsset: ! d81defaa-c407-472a-8de6-a4a6cc16eeb1 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + initializePositionAndRotationFilter: true + _touchpadScrollSpeed: true + touchpadDragThreshold: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + spherecastDistanceThresholds: ! + - 0.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 3.000000 + initializePositionAndRotationFilter: true + _touchpadScrollSpeed: ! 250.000000 + touchpadDragThreshold: 0.050000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + ScriptAsset: ! 6edc785e-877c-4a9a-b0a0-3f29d68e2274 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + _scrollBarMeshVisual: ! 21dd5d7f-9153-45b1-a73d-f18313b86363 + _boundingHeightOffset: ! -1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837170, z: 0.000002} + rotation: {x: -0.000076, y: -0.000000, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 691be975-a6fd-42b9-a51a-bcdeebedb743 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Headlock + Enabled: true + ScriptAsset: ! 37c21f9a-dd95-4665-ac5c-60c72e00954d + ScriptInputsDefault: + _distance: true + _xzEnabled: true + _xzEasing: true + _yEnabled: true + _yEasing: true + _translationBuffer: true + _lockedPitch: true + _pitchEasing: true + _pitchOffsetDegrees: true + _pitchBufferDegrees: true + _lockedYaw: true + _yawEasing: true + _yawOffsetDegrees: true + _yawBufferDegrees: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _distance: ! 50.000000 + _xzEnabled: true + _xzEasing: ! 1.000000 + _yEnabled: true + _yEasing: ! 1.000000 + _translationBuffer: ! 0.000000 + _lockedPitch: true + _pitchEasing: ! 1.000000 + _pitchOffsetDegrees: ! 0.000000 + _pitchBufferDegrees: ! 0.000000 + _lockedYaw: true + _yawEasing: ! 1.000000 + _yawOffsetDegrees: ! 0.000000 + _yawBufferDegrees: ! 0.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 463accac-e5f2-4ff5-aad3-dd1fe504613a + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: SIKLogLevelConfiguration + Enabled: true + ScriptAsset: ! d957e0e4-3046-4a85-bc12-52fe1927d9c9 + ScriptInputsDefault: + _debugModeEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + logLevelFilter: 3 + _debugModeEnabled: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + - 006192b0-6a28-42d8-9c20-7db3cf994249: 734fd77c-cf92-4677-a635-faefb258d109 + - 020ee714-1399-495b-99f0-f04b977c4f6f: 687dfae2-c079-4fd4-9143-8a8a419910b9 + - 0218fe8f-b6a4-4bbb-b452-daaa2e9df793: 4448e178-da1e-466c-832d-cb35015a7100 + - 036512ed-bf6e-400e-a46d-10f636b6e5c3: 36e41376-51bd-4477-ba07-b652c0aa82a4 + - 03cb0a5e-3e67-4f89-bc12-910bc3c64ccd: 2a0176da-4f12-41be-ae32-8ca018680f8b + - 04c9c748-23fb-49f4-b278-870084087759: f4669faa-525a-4926-bfdf-e7b1b07813b7 + - 04e121c2-eda3-4027-99d5-98b89d60a800: 3f4b2619-d506-476a-99d6-4261cb8173bc + - 05143b60-129f-49e1-85ec-a816706a6414: c3b90554-5964-4b67-accf-60fbb2d7b79f + - 0572c44a-f705-46f8-8434-a4a8a356aaa5: 2d43b9d7-cdc4-4727-8b79-f643982ea695 + - 05939801-596e-411f-bd24-9fbc171bc0e2: ae5f399d-f412-42b2-915e-5c7de7787711 + - 0792cf4a-d692-4ca7-89ef-ba58c0a857a1: 26c35729-b4dd-45aa-a373-b7d47dc657e0 + - 08fc906c-78bf-45df-99f5-35e77aea225d: fe38f062-25cd-4668-9e51-42235170a549 + - 092a9f85-af06-4b7f-968a-dfc3f683238d: bcc84955-f911-4c35-ba6b-2c77998f9f4d + - 0bcbfbe9-9e47-4eb6-add1-546001a963ac: 7b503393-b7d7-4fee-bebc-2e0a0a158c3e + - 0c0bfed4-ada4-4bf7-9612-d44c6c5e1090: af39b2ca-39f9-4be3-883f-3e60844b18d7 + - 0c25a461-e954-4aee-8025-fd09f0820b75: ec0281d7-e1b5-4e83-8b50-235ecc55df4e + - 0d51e23e-412e-427e-ae9e-b6ec501399bc: c99b7b55-01f0-46b1-9335-3978e896fca0 + - 0d8fb57f-24dd-4dfa-b259-8368eb612905: 4f1beab4-2c8a-4f63-a05f-357008991456 + - 0e01ccea-3288-438d-9ec5-f16254ebd0bf: 7c8ea070-1726-4ee0-9f1e-aae5c2570841 + - 0e5e12ff-635f-49e3-be00-ebf5900ea4ec: 51a93b09-9f90-4d9d-924c-ca920dd25aae + - 0ed2cadb-20f7-42de-b689-d3a7be59d6d8: 96bd6fd3-2b4f-4872-9cea-6570d04b737e + - 10bb912d-512d-45fd-9781-9ddd98ae234e: ffb9811f-92b4-4514-ac28-2aa421dc9dfe + - 10de4b7a-720d-4d96-a283-1e122dff859b: f40445f0-9b9c-4ceb-a25e-3a52e31a2a60 + - 1161e9b5-dfd3-48af-bda0-382056faca0e: 6b154d00-05e6-4008-8c8d-ff3c38dc97c1 + - 1178b66b-8768-412a-b9d9-22cd62eb75b6: e33700d5-863c-4eb6-b422-2b6c26477e2c + - 117e13c7-61de-47a8-893f-951f91b0534a: 1146c9ab-b553-4255-9954-52ffe8f621f5 + - 11e4061b-77da-4925-9cfe-6347b3bcce40: 9568cfe8-b1ac-46f0-b30e-9b99a150b655 + - 1208900c-b1bf-459d-b7ae-c9ce081d8a33: 98945bf4-a4c1-4e54-8dc0-3f743d184bbf + - 12e31068-8e57-41e3-8ac5-c9a99f26633f: 61451a97-d498-4319-850a-db26407772aa + - 12fccd0a-94c9-4e79-a54a-0f2e4018bde5: aafb526f-a2ed-4dc7-acd9-7245b143dbb4 + - 131fc99a-a532-4e38-8e6b-dea54aabe422: 3bd20dac-a943-4d7e-a08d-6b529725b690 + - 14013079-8453-4103-8404-1c2f9aee8e4a: 6bf51efb-c165-480c-834e-cd9e1573372e + - 14d07aee-b879-475b-b38a-1f57679a5150: c3469410-615c-48b7-b277-fdbb7fe01425 + - 15a2c426-477a-4caf-8642-c3457e1d2ba0: e3c97abf-6ee9-42b3-bc7e-1876cca70142 + - 176ee445-955a-4c0f-8bd8-d0f488067e77: fd38210a-8026-44e9-9cee-4d1b1e58ce02 + - 187c0993-895b-43ef-bc71-574cb1ee68ee: 719c49c1-7076-4ea4-8d23-f7c1ad81e9e1 + - 18c0f8c9-eff4-4d1f-ba23-b359dcc52051: eaa2615e-3c3c-4ff7-b453-dd5ef940fc6a + - 18dc05a5-21f9-4650-a9c0-c75058cc3ec2: a3a2626d-dc87-4c90-bb2f-4ef4cb8271c6 + - 18e61105-5612-488b-be18-f954b19b54c8: 200c5a89-e479-42ed-8295-8c590be8fe67 + - 191e721f-d750-40f4-9dad-886423a6748b: 073b79f8-7222-4585-86f6-8acd58335931 + - 1a731ac7-66ca-47ad-92a9-6df9f54559ff: 5a0defe9-efc0-420d-b36b-b9f29375fb51 + - 1ac296eb-35bc-4019-84fb-d66c59e1b19d: 69b71a12-2618-41f9-b62f-91ddaabb2c47 + - 1b71dec1-d351-4439-a74e-bfe6e8dc695a: 7b3b0ace-4c9f-4d8d-a869-af9439d938e7 + - 1b96a171-2f8c-409e-9d0a-91812193d330: 09db777e-2a46-487f-8d0e-89061d39cbce + - 1becfa95-9512-47d7-b458-5c095cf8aab4: a9072322-9cbe-460e-a04b-91bd9fdd7e21 + - 1bfa66da-982b-4117-a961-00f1c7d941a4: 3e035bce-415d-45d0-bb92-d77e1bfe0950 + - 1c90c220-a570-4dfd-8290-781a6959eea1: 68265c8d-084e-4f2d-9358-355e46cab9b5 + - 1d8a290d-963a-46a8-9940-5168049a2f1b: 3e6c30f9-5b68-4524-a6e7-a566e22f5fa1 + - 1e2ce68d-b24a-45bb-8072-485a4fd9c454: 81d98ccb-8c72-4fa2-81f7-20f82941c51d + - 1e4b5d84-db2e-42c4-9cdb-1fa4a98ae5c9: 9852472b-586e-40df-be99-0ea695ce4dac + - 1f1525d1-8d72-49a2-90ee-c426f9cb604b: e2bc3d8a-f84e-4176-8b08-bbb6c90dd5d7 + - 1ff4c4c4-7489-43df-a8db-2e344d803a73: 5f54672e-81d5-4d1f-bfcd-349615a988b2 + - 20a44568-f561-4cda-bbbe-617352fde4cb: fd61450e-fa46-40aa-a6c1-21c78d870ba2 + - 20cdf887-c102-42c6-a77e-e6bccd3b3ffa: 8862e579-091b-498f-b65a-9ade1608fdb7 + - 20ce429e-ff7b-42d7-8363-322863bfded1: f57a3e91-93ed-467a-a0c0-deecbed6cd45 + - 21089adf-ca6a-4e65-943f-6b0535f687c4: f0c19a19-fb2a-4151-a1a8-9fee620e28b2 + - 21dd5d7f-9153-45b1-a73d-f18313b86363: 008299c5-f728-4311-b3c6-21cbf5660edf + - 23bd31e8-9bc7-42d8-984e-51ec9382901d: 1e6e0c1a-8056-45a4-9f38-bfe26b3e43ba + - 245cb741-c1b9-4805-b7c1-793674f0d7ed: 10ef1717-a0b6-4e65-a7d9-44f91b6017cd + - 246fae23-9f27-438d-954f-024cd1be0413: 88acf2e5-9240-47f4-8a6f-82805925f710 + - 2511b2b1-575d-4f30-a2fe-766e9fd37247: 2935496b-ff1c-4806-9ab9-ea54eb8f259d + - 26ede8b2-17bf-4212-8f45-69f5d081b2d1: a466be5b-8036-4d74-a1b3-a50a6492ed86 + - 288d782c-f80e-4745-bc72-6324728d9ad9: f28b8cf7-a028-4cba-8eb2-7e6fc16ca5fc + - 28fed4d6-fc69-44fe-a2d8-7887004b586e: a5eaad25-8b90-4fca-9706-422e02f5c643 + - 297edb80-1ef8-4527-91d2-2f1a19657582: e1f8bc07-848c-411f-8468-e593250bd389 + - 299e30e7-fb5d-4990-96fc-6d7fd24e5f99: e41c5417-fdd3-419a-9ef4-41a88bf0660d + - 29cd2053-da79-409f-a02c-7813f87e07cb: 4aa8ed58-dcab-4256-a793-20c208772ea7 + - 2a0898f0-243a-4d3e-b9fa-8cf392c8db15: ae4ba4ca-d378-448a-a6bc-a0633b4a3211 + - 2a571854-9c1a-4e6f-9965-d60156d26d84: ace5dc90-9121-482e-bc77-338e3f17c25f + - 2aff7c6c-53f4-430b-8c02-cf513f22ac46: ffc41b55-0d52-4a88-b1f5-63556851cb51 + - 2c726df3-cfa3-4978-b146-a95fd5824626: cb2f009e-3cf2-4187-bf1e-aafac6787521 + - 2cb8596e-593d-4256-8a62-eef3e0da7ea9: c0e12f13-2832-412e-a65a-e58f29950dc6 + - 2cbb881e-c22c-42b0-bfe9-c847ab1640d2: 1b490eb7-9528-4f6f-a0c1-50a388b944b3 + - 2d1d4e99-2eba-40f3-a19b-2206cfc6cde6: 68719226-e7e0-4113-bdab-6aec4a1b4375 + - 2e37ae04-cd21-4a02-a804-b52785d4a939: 7eb68798-e720-4b5b-bab0-13835772bcee + - 2e838a25-f9b5-4b47-85ad-a2cda44aef4b: f1eaf93c-70f9-43fe-8fe2-a41582142f06 + - 2f34d356-e061-4554-86f9-45f88456b823: 42fa7251-c134-40b6-ae21-9e0cba42bcb4 + - 2f6be6c6-d719-4790-aaaa-7447b8082641: 6cabe18a-f69d-4a3e-95c1-073d6070fbc9 + - 2f8e0f36-5c12-4ac3-b10c-750f77d595d0: 81ac99fe-bb9c-4203-88a5-149ff24f4d8f + - 300b14cd-cae3-4ee6-ae39-700f003d85da: ee4c641a-c79a-436e-a89e-1e8ffe9cd3bc + - 30731ae6-289b-40fa-b3fc-5c9bd58bac6f: 71ca0806-008a-45ac-9173-d186754e53bc + - 30a344f8-7554-4aa0-b822-ab93feef4a04: 9bc07bdc-0bed-42c5-997f-7eaa4a937221 + - 30da0937-109a-47dd-a930-9e35bbd809e2: 3f78fad9-18dc-4951-9bc5-2e61aad419ef + - 31372144-baea-47d1-afd2-ed88fb7e2683: e060c4b9-46ff-4a98-9a66-4e01c9d363d3 + - 3308bd23-8a56-4adb-908b-8c96a9d634dd: 147eda9e-e69e-4729-9347-923da3806a94 + - 3313f067-0167-4972-8cc8-503b05b19c9a: 8be8a529-4d9e-4e24-b655-37d8b5bb7527 + - 331d31fb-3314-4854-b9a3-79258433491c: 308b6179-4063-45e1-9381-521859148bd0 + - 359497a3-5746-4d6d-ad9b-2da791af7c71: f580b6f0-2a1a-48d8-9796-674a7b0ecd46 + - 362e94e3-4ac6-413f-9898-03b2d50f4074: 3e7c8539-ac4b-4c16-90f7-0ba5cfaf9039 + - 36586694-5947-43fe-9596-906825de509d: 6e2ea6db-9160-4b38-8e13-085bdfb056d1 + - 36878003-0ee5-4463-a104-3de4afe8f3e0: 96965a44-9849-496b-b1be-38299b203558 + - 3769366f-4444-45f8-81e8-f14b3c8a0645: 33323e07-f29c-4fa9-9bc2-a55327ead908 + - 37ed3092-73e5-420b-aedb-656b1c84ac79: abccdf94-337b-49f8-abf3-6b04e29d0ff4 + - 38006373-7972-471e-be8d-3a6c4a67bdf7: 19e101b8-5c98-4d5f-bfd6-0e2fb86581e0 + - 38b50117-4aa1-4881-b52c-89d62c10a6ec: 15c8ff47-7aaf-4ed8-8983-1539f0f073c4 + - 39a12ac7-a32e-41e8-bc50-2e10f187f2b0: a4c763e7-2e1b-400b-bd95-8f3bb728f824 + - 3a26884c-bd77-42bc-810b-bdb3f541ed66: 4c032802-37e9-4902-aaf9-665af40ac96d + - 3b061257-5dfb-4e90-b31c-803ec12f595d: 1b5518c4-e625-4eb2-ab98-ef3675396855 + - 3bb57980-131b-4baf-851e-391c60970a75: 37b759b8-1f4e-4f26-b5ee-57c90bc21a73 + - 3ce0edb2-6916-4124-a47a-c94e3b9cab61: 62b8a451-7989-45b5-a6c7-ab02c30f30de + - 3e990679-08c6-45bd-99e3-c496efe54958: ed8e7a3b-6207-4015-9c5c-6a264dfd191a + - 40b553a5-b39e-4dc6-8c90-d82fc630df17: c8ebd78d-8835-4c00-8308-6da560d95db7 + - 415e075d-7e74-4a7b-b4bb-35e587f05ae9: 7d0ec120-acb2-4b27-99cb-bda87b3f26a0 + - 42157a2f-0b27-4a7f-bfbe-a7102b5d1773: ec8cd9e3-7dc8-4ecb-96d7-b06b67802261 + - 42940185-c3a5-4a9b-b73a-8eb575385679: ad481c2d-f6bf-4d74-9d13-17ca74924223 + - 42ec8912-b42f-4f91-8395-335d0ac423a0: 8e63e8fd-3b3a-4713-8173-b4ef651ec203 + - 43078030-e461-4768-adc9-c9cc59a99925: af14efee-8102-4865-83d2-d4fbc64ef07c + - 432ab8d2-ba1b-4223-a404-74110d12bba8: a2dc5a63-c1df-41a5-90b2-e740f12bbf63 + - 44fcbe2d-f52e-47f4-ab2e-28381068a9bc: e03dda15-5806-44af-97cb-f144db36e8f9 + - 4559b691-d3dd-4d97-b9ee-e75217f18d3c: 1a3fd670-c1c7-4069-9b59-df845362a260 + - 45bc7a90-82d2-490a-aba0-8a319ad59722: 6e910f1c-f33c-4497-8c7d-ce77b8f7b885 + - 463accac-e5f2-4ff5-aad3-dd1fe504613a: 077b8c55-6fe3-42b4-a99e-46f92cb22835 + - 46ffb5eb-4516-42f9-a865-7f8555cfd9da: 1b94b845-f11f-4781-8362-c5cb1bef17fa + - 470c886d-541e-47a6-b5e2-de1e20589316: 4d8e42f2-86df-4cf7-a61d-d8e6870abac5 + - 47539171-a347-48fe-ae7a-cc4b06f94f5f: ebbecedd-4b69-462f-8155-8784cc752bb0 + - 476a663f-fad2-44e3-ad61-286e19b37dfa: 40d69b9f-db3c-4e61-90e6-1bea61a6f409 + - 4aaa67cb-706f-41f4-aeb6-f7ec30c1a568: abfbbe54-80b3-4a90-a9a0-808dc3ff5e8d + - 4b1f1d0c-a1a7-4895-af8e-7b964d486578: 1da1ae14-3e7a-4cfa-b353-e425319a3572 + - 4c4e9a6b-53dd-4a6b-8312-ea20dd40ff2c: 7af80f84-dca4-4828-a01e-1e2c83301467 + - 4e51c7da-93cd-49bc-92ba-ac1b17778914: abf278a6-03d8-4b2b-910d-181a46b9fb60 + - 4ef466ba-05b2-4721-926d-f1c7cb84f6ce: 899dedd2-598a-4baa-aa9f-81952216526d + - 4f6d1d86-5d52-4d48-a192-3841b4dfeca7: b47a1db7-5e4a-4f06-9a2e-7251e54d0a66 + - 4ffab695-3859-4b88-9c5d-0b95cb5dcd91: 5a790996-2d06-4b8d-9852-7165ac56527e + - 50186944-f701-485e-a1d0-805b7a11fb31: e0de0477-b7d3-4d25-a608-c298b58b3860 + - 5119d836-55fa-4ba4-8c3d-d0b80d1d734b: c903e1ce-abf1-4253-84ca-85d5e3999a67 + - 5127a290-6a9d-44a0-83bd-06e30f3fc653: 527ee95c-27ab-41a1-9b9f-3c15e512454c + - 518a868f-cc66-4792-b60f-ae208a68b340: 95bad5d6-34df-4c97-aaf5-d087a1ff442c + - 525d0fdd-36a2-4565-9996-219b72385dc5: 49d3c420-96cd-485d-9a64-bb7d2c52204f + - 533975ad-ccc7-4ccf-a527-4950ab63f014: 774e1493-bd36-454c-b478-ec0cebda666a + - 5367e022-22f0-4dfc-9033-fee474422327: 130c2cde-83a4-4a70-8b03-eeaf75ef4d9e + - 53c3b2b7-1cf2-479d-bcba-9527b9af5179: 0a9143d8-a5e8-4bc5-90dd-98075fe95d19 + - 542c8e99-dd30-44cc-9092-ced77bc4d54c: 7f6239f2-26e6-48db-8e49-57e348234bfa + - 54575843-0da1-49ad-9522-0a9f80441c5b: 15046028-d913-4fb0-8a5a-463b11599a95 + - 55313075-8410-4c83-b5fc-0b24ef2aa1dc: bd9c7a12-8208-473d-b8d7-540d137af7a6 + - 5613bfc0-c769-4833-99ea-58239d74e1f4: 4982a4bd-8004-4ced-a93f-8c22fa227369 + - 5617417b-b9c2-4482-aa98-1867e5ac4115: 50ecda44-3290-4cec-9805-7b911c17c3a3 + - 56d4cda9-6530-4e6b-a29d-aba472cf39c2: 3e465dbc-1232-4f56-b1ca-07c71159540f + - 574d9ee8-f2a9-4ada-8275-b39f6b651b06: d1d15b9a-f9f8-45f7-b124-de8885fbcb5d + - 580ffb10-31e3-4ae9-ba29-d14cc5676538: b48985e2-11a7-40a4-b8df-1e8b4854aa1a + - 581eb383-c10f-47e0-8310-210d1491e7df: 36d23b92-f05c-4013-8bf2-28e6662dedae + - 585355bc-41fa-43f3-9700-f8c951fac340: 1efadfe5-29ad-4190-a473-1ce818b39230 + - 58619b05-f4de-4b2e-87a7-5d2e3975e656: 2e9e3044-964b-4715-bfd8-238f810af6ee + - 58cc0b26-acd9-4018-bd05-fcc1bcc6b837: c32fdec6-4ed8-4c87-8521-950db919ede2 + - 596fcf5b-2e39-4bfd-aeb3-3cbf0b735336: df969d23-af5a-4743-bd64-da3f32af946c + - 5a4a6c9d-5f14-442c-a49a-8be3c0c22f83: 15457eea-afed-4200-b815-e2aef7d0ae2d + - 5a8852ff-ecda-4881-abe7-1ceb2c524c26: 014e6143-34a3-4ea5-9f68-9048c596274a + - 5aae6971-5857-4c8f-a5ef-c45d733acbb4: e46651b3-78b0-4aee-a12c-995553ce0c50 + - 5b99b34a-8a78-46ec-bca7-febdc2cb38ba: bf4529eb-f205-484f-8da8-77cf3ca78879 + - 5bd155b6-c347-45a4-8a2b-becdfd08223e: 7d07885e-d3be-41f0-b24d-2f61c10779fa + - 5d1ebe34-4748-49b7-b6d3-7bad94ca7426: c0f104b8-b66f-4cc2-9a40-911d8b08fc7c + - 5d2ffe4e-a3da-4dec-9bfe-d8d4271b8df0: a97c37a8-109a-4866-9e37-56d6c8a9c1f8 + - 5d6fca19-9f65-47c8-98a7-4cde8903c9e7: a2df5570-1a26-46c8-9692-745f51555629 + - 5e5af924-472c-42fc-b74e-6eb873878cd7: fb715abc-a6ec-48ee-96b3-1d300b6f2562 + - 5ecb3e1b-71f7-4147-a9b7-e393c0012648: dae05fcb-ff13-4f9c-9e8c-92679490f805 + - 5f16b23c-e28f-4c50-8c1c-2c3f7dc7f172: 9b74a8b5-6dd0-4448-a505-5148f6ecaf5c + - 5faaa512-0907-4a7c-abc6-801f9506c109: 4bb77992-0e3e-4b1c-8d3b-c245e47391ca + - 60322f26-9917-4e2a-bd56-581947d84852: 34a80196-25d7-4d71-a961-d47be0cefef3 + - 62547522-b4cd-4cc8-ac0e-1d7b19810e4b: 3375b270-5d27-4f31-b4e9-9b12bc85c58f + - 62f3a8e2-ac5a-4ba7-83b3-cac1610a7330: 87327542-7e05-4d3a-89e5-294fe706fce6 + - 631a3ca0-0ec9-42ba-a841-c09bea810ac9: 7ce79967-b6f4-41de-a181-7d05dadb9224 + - 632c566d-6d56-49df-815a-0c42af3a0582: d904c42b-301a-4dae-81f5-1c8d5d888d3f + - 632cca84-19fe-4886-8627-21a46a150dd2: 35b271f1-4ef6-431e-bd13-f995681ed278 + - 638efe86-613f-4735-a142-375f9fb83afe: cc34a58c-8336-4b3f-a590-769d4309fa6a + - 6408b356-a940-4216-803e-02ae7f88a425: 0c399b22-7b3e-40e0-8b5e-2905497a3229 + - 65833bb8-54ce-423b-a863-d059e467bb42: a4ee76b0-f83d-4264-8f35-6f65e6deef32 + - 65d1468b-ad6c-4b28-a742-9881b25ef2dd: c7b5e2c4-ed9e-4fc9-a0ac-ae5ab3522ca9 + - 66258ab8-1a60-4dc2-aee5-820ac8efc2e0: a61b2db4-6c4d-4e28-960b-3876a0d4054c + - 66474512-1120-4925-a98a-4e953df411be: 77141b36-1afa-4580-a4e7-77b46a7e7144 + - 6694ff7c-c4b6-48dc-ac2c-765fda9db34f: e7b1b809-065c-4da1-8d3a-4c59dc598329 + - 67283259-079b-46d7-a56c-c16f2df4367a: e6e4c36b-32c2-4083-b6b2-0defb0f50b4d + - 67659e53-1286-4a35-8b13-6315e55ec4ad: 2a648635-29d4-4da9-a0f3-487a1ed5149b + - 67d99ead-55e0-40c1-9319-f829b0b5274f: cf20aefe-5abc-4ebb-8336-b7e1e0c9a094 + - 68117807-3e5d-4f4a-98bf-aa0d3584d9d6: 702c7723-1685-4104-adfb-d00ae5caf8b0 + - 6815ee1c-768c-4dd2-92be-21f63f7e9555: 1ddd3d02-2a53-4389-87ed-3851ec1a22f1 + - 681c55d2-59fd-4c3c-99d0-d7aaa2f779b7: 70220405-5a89-42d6-97bf-e1cc16af5e4a + - 68ad7faa-9aea-44b5-b204-85da6adb9bc9: f62fbb0d-eab9-4ce3-ac4f-197c49d50ad0 + - 69b641ce-9bb9-451e-b831-06202ab01bce: d04392b1-1178-4d5d-8f86-2e55b24e2cd1 + - 6a604f37-8018-4822-ad71-2c9450314663: 866bd418-abd8-4061-a6ff-2f4e36e2cbf5 + - 6ac585e2-813f-4594-b268-6e15f5bf48b6: 8679a711-e9c7-462f-bc36-bd5b8153194a + - 6b376b45-f8ef-456d-b8cd-673410d85157: 4089dc9c-5adb-4bf9-b957-8abc839b0d58 + - 6c866f4d-00db-4a17-bf53-3dc1708bcce9: 4742a657-5125-4825-994f-e0bcfa100021 + - 6d4e14b0-90fb-47b0-8368-e3cb543772be: 995378a9-0c60-444f-95ea-9a77adf164d6 + - 6e614c30-2b6d-4b3c-a625-ebfa1e1bf580: 2af4ec65-1023-4f81-873e-950d998a65f2 + - 6e90f370-608f-48a3-9007-f3686d1cbf61: d8bdabcb-8617-4d4e-a10f-8cdd5d4e441e + - 6ea6a996-fee4-4dd4-829b-330ff03fd265: b5d8cd4e-83c2-40d0-9e87-5f19ef7c71d3 + - 70021aba-1bd8-4e46-80a7-8fc3bf227371: ab7d3ee8-38ad-45b1-aceb-d465c18049f5 + - 70267976-2504-4ab6-a026-24d69ff17481: 46e04b21-2fef-46ad-8f8d-a2385e2bb2b6 + - 707d6193-db62-4bbf-8ef5-ce8b6b2084f3: b143eab2-4afd-4fd9-ae30-48e2f75b53e0 + - 7187afe7-3b99-4e61-8740-26999683d2d8: 34db47f7-8795-4800-940f-3381c9bc70fe + - 719b6eb1-f36b-47e9-9556-6afbe0c43381: 80e2e116-8840-484d-be53-471cdb4a8275 + - 721fb100-9532-48c3-b61d-c6e47f142e20: 2a40ff1f-4494-4db1-8e8b-1560f5ae0b45 + - 7248fd29-ec71-4bc5-8598-09fdc27b8ef2: 7c53858f-523a-451c-9ada-9112151d87df + - 72c595e5-66ca-4ab3-aa41-909151244dbf: cd286a5c-5e95-4cb0-8680-5a238eebc33a + - 736562f6-84cf-42fb-82b8-335291e60254: 2b3b3079-d010-4f80-b3de-b51fcb3d4f57 + - 73e0b27a-6485-47b6-8403-ad1a30991aec: 7af8f4d0-cd1d-4d0e-b395-028e41c9b290 + - 746d0107-53fb-4141-9ac3-f8d4a4de25f6: 0724cc1a-aac8-4dc7-b552-c63aadfb2934 + - 747d7d5c-fc2d-4ddc-a9ab-c1abc047f7b3: 4d50842c-3e9c-47c1-94e9-9117bc3bb7df + - 74981c66-edd9-4260-a7b2-61bbf6064923: a151c0ee-4b33-43aa-b9f4-25bf06a0adeb + - 74abefc1-8f07-4b85-ab38-56f79d4121cf: 113ef412-c8f7-4b7e-a3ab-e59df2135943 + - 74d37439-a2c5-4936-bd7e-146ad61f3b29: be79e43e-3607-42f5-93e6-051525a200e0 + - 75a95bf1-07a7-4dac-b2e5-ef8509904b6f: 8105b0c7-f201-4c2a-aedd-7e2b4d4b0af1 + - 75f06a71-2897-421b-ad76-29a8983210d0: 88f531cc-523c-47b1-9231-7c166961c7a1 + - 767704e3-511e-4e8e-9d9e-9f375398bbbc: 8b609d83-09a7-40a8-8b77-0ae7dcf1077a + - 78314fe3-2dee-47f9-a5fc-217c8c9f8ad7: 5af59c8c-af51-4d43-86dc-b441125fe967 + - 78df9761-cce5-4f60-b157-14385776c01d: bc68a313-97f1-497f-8510-ad525c2932be + - 7a2899c3-b02c-4f81-9a90-ed8511366a54: c96dd1f8-ec5d-493d-a625-9b2970317b56 + - 7a693d58-f56e-4a23-a5b4-3c7927f0818d: 8f396bfa-9149-4d15-ba96-dd5c7a1633e9 + - 7aba5d5f-52d6-4e86-bca4-7610c2d8727f: 181b1c2b-67d6-43d2-8fbc-91f5fa73afd4 + - 7afaeb92-e743-4ebb-a2c6-df9c16df5075: 8197be4b-6667-4511-90ec-3764aaf7097e + - 7b2af8df-1c63-4356-b8a3-c24a66c38bc3: 76a4091e-15c1-4831-87d8-b69dbee3f873 + - 7cbd058a-7032-4245-9f74-7b32af034bb2: eaf4b260-3a9d-465a-8b21-86d130203721 + - 7d2c6118-bccb-4bc2-88cf-97a6b5513a3b: 3abc2130-bd88-4fb0-9f9b-2637a20f2c13 + - 7d5f6ace-4259-4c08-9283-5ae3414577f0: 22a58330-8626-4c4a-8423-4ef292fd378e + - 7d7a7faf-c376-49fc-a67b-0b905d3f561e: 452961b7-9236-48e9-b535-1e628e00b8bf + - 7deecf52-223d-4f77-ac95-fa2b779f5f09: 7eb53a6f-c678-4769-86c8-ffa9d6a29bc8 + - 7e31cf4c-750a-4c67-90c5-c3531bd74976: c8325863-b981-4ca5-a5b4-bc6192e4bf5c + - 7e855f2a-4343-491e-bcd1-fce3bac65aeb: 0c16c050-86ed-4ecc-b1c0-08f7ba5fa8d2 + - 7ede0b47-3e67-481b-adec-2841a1651a87: 1fcdc7cc-c2fa-4a12-95f4-caeffa79295e + - 8131f7cd-4328-419d-8b64-44ca9070139d: 56774434-9c3b-455d-931a-2b3f3bf7ddfc + - 81841dbe-6094-46d2-8036-d4fe8d5e3d63: 6df7408e-475e-4290-b64a-6265f1d4f92e + - 82077845-5d34-41ca-8a29-b1b1e48a5f8a: 8fdab901-ff35-4223-8a72-2b6426756517 + - 83d5803d-8670-46ff-bb65-883b011f0b74: 4f9c951b-cdcd-4f27-a21a-c791f2f6855e + - 8488c269-5631-4f05-832a-bb86fea89cfd: c7f768bc-3c72-4081-9c99-c40b0d7c90b6 + - 8496b5c1-00ea-43de-aad5-2e7c49cc31e8: 785ab6ec-0c8c-46e8-b96d-80269823118d + - 84db67af-fd9d-4a13-bcdc-78b87676416e: d918b75d-d600-45fb-8d41-0c40a86951f9 + - 85195081-b4a3-4737-befb-f54a354a30b3: ebeaae85-cb2b-41e4-a902-44286f2258be + - 86b17c3d-838e-4a5c-a0ce-f14ca0365958: 9534ce89-22a4-46e9-8884-3d08d4c2c179 + - 86cd1c89-4acd-46a5-9300-bf400950a160: 046ad65b-f330-4692-9807-fbd95f8061f2 + - 87096967-a3bc-4d41-b656-a7c1fcc611d1: b76315cc-03e3-415e-a637-41a465bcf947 + - 87733319-b91f-4989-a00c-9e48c2b2f8bb: ab173257-917c-4083-96cf-db6a82c6ae1b + - 87da1ae3-6df0-4afa-8f7f-36d2537312e5: 7893756e-c8a5-4329-8b06-67ff294f05ad + - 8946e655-453e-4b63-bcea-3578089bd248: dd029e31-8ad4-48dc-a2bc-5fa83ab2622f + - 89f336af-a54a-4771-9123-43c3e0d36098: 1bc2d2b6-d80d-496a-b99c-ca9c78f7d72e + - 8a56e0cc-2f49-467e-a7ba-d03a823fdfd7: 85db361a-2725-4fdc-b752-1e0403bc821c + - 8ba0a378-a2b5-4cae-bdda-10b0c25634c6: 167de8eb-9f40-4d6f-8d89-3beba468e431 + - 8bff9b45-f459-40c7-9888-907eb306c19e: dba0a409-027d-4f2d-b4eb-cf1c204c780d + - 8c37b96f-c1b2-4f46-a25b-ed6861f2cb91: 55620f11-ba29-4773-ae0d-040e31ce992f + - 8caf4268-d374-49a7-9689-d9405863c584: 3a75d733-5107-4a4a-a6de-0204e4089a00 + - 8cbf86dc-678e-4587-9018-24c77fcb87ba: 20d2fbd5-6bf0-4241-9c0d-8258178f6789 + - 8d4da315-31b6-4260-a5b9-33ab66f361b6: e9bbe9da-6b36-4e99-a4cd-1fe2d28d823d + - 8de4606b-d030-4494-93d0-78dcf4e89ee7: cd4cac9b-7761-4921-b9cc-f78b074bab79 + - 8ff150de-0826-44a7-b007-b7d63b771dec: 47f40157-724c-4a3d-b60c-1553311e79b9 + - 90241a03-c90a-4adf-a5f5-a73ec8f537fd: 765da78a-e794-4604-a38a-33a1c38d7406 + - 9188ad33-5b31-42f6-803b-bdc32eaa3b84: d7dd6d05-6624-4493-851c-85aac0ab3ad0 + - 918c5760-db78-41a6-85e3-422aad5871b6: 5d5387af-074a-4c33-8685-b78f1dd4946a + - 92737940-b030-4998-9544-b7191c1c1cd2: 5d4a954b-d8cc-4290-917f-fc4284b79c3e + - 927ac346-e697-4d0a-9b9d-0e3f2e94a1ea: db4b404e-9f10-4f88-b107-2e38bd2b1afc + - 92d62d0b-7784-4366-a98b-d8c7b871a20f: 7476680a-1828-4517-8b6d-a38bee74bd03 + - 93236546-1c9d-4e45-80ef-f91fc4d8b825: 45df5018-4c58-44a4-a17a-af1b1cb86c97 + - 944818d2-970a-4095-809e-ead99a336bee: 37ff6fd2-8e27-4f86-95a5-fca66569fa01 + - 947f369e-0829-4053-a910-a4495d8f718c: ebcabaf7-993b-47f4-9ff6-1b867297f822 + - 94b1ea6d-0acf-48e0-94fd-976cf245ae26: 56d3fd6e-f907-4278-b5a6-0018fe1b0c8c + - 95ed011f-c8a5-469d-8a2b-cd95475e2dc9: d3a91d49-4352-4b77-8235-8d2d19bc7d82 + - 9691d251-33d9-48ef-afb4-918aa0e504a4: a13e9ccd-85a2-499c-b743-a73945646374 + - 969f2fda-6380-4c12-a720-cc66f27af219: 7da90f4e-81a7-473d-899f-301ae7076b02 + - 98246104-48dd-4773-a262-901eb025dd7f: 44cc41b9-1913-4614-aa74-d6adf8658156 + - 984db3b0-1a01-4963-8136-336c958e1a49: 558e82e4-7a36-4097-a16b-3b20d9d0f94b + - 99f579a8-56f0-43e0-a8d6-487767601be0: d6404b8a-628b-42e8-86d6-74a1d1136133 + - 9a0d0de2-a18b-4052-afdd-3dd3f5b36527: dc6b7e84-4d7f-4754-b5ef-7a8e8995a9cc + - 9ad84203-8f0d-4264-899f-55d41d0e1a6c: 3d616bb9-24c1-4adf-98db-b952a6c24a59 + - 9c5d0a62-61e2-4cee-a999-b414d94681f4: 34a68439-22cf-4285-b2f3-249a4aea3de8 + - 9d532054-b0c0-4010-8794-fa57c9799d54: 802c2599-cd73-47a3-9a39-9fef13d5fff5 + - 9d8bd7ef-b6c6-4a95-a2b0-34dda1b75769: 51eb6c8b-6a73-40be-85ee-eaf700c954fb + - 9e4589cb-dc87-435e-a8b6-c3ec7013e095: 1f6fb280-f4da-4a40-8668-dab2d0ffece2 + - 9e4623b7-d7f6-430b-bef2-1cc4a68ffdf2: d6bcb589-b766-430d-aed9-b1cd72971db5 + - 9e96b8e0-7368-462e-9b7a-a04eb624490a: 003e260b-935f-42ae-8dab-6f258ac7d789 + - 9ee0722b-8f29-4246-9a71-2a4b02882ddb: 37b4795a-0ce0-4e29-b3cc-79aa3cb81fbe + - 9ee13996-ea94-40aa-91c1-44c14a55384d: 6d036508-bb0c-4eeb-921a-e1c468dc27b9 + - a03315b2-80a7-4126-94e4-542b4a230120: 7a8db928-d205-4f3f-9d59-a7a13759da73 + - a0358279-a981-46bc-b610-1f660aa06e5c: ef252a02-e448-44b9-9e43-6cba7ea7c0f4 + - a06f7e1b-f9f5-4b92-bb81-adb228cbfb7f: dac6b2b7-1406-4985-8845-ad76d0070ec6 + - a0ff9305-b2fc-4a9a-9ec7-2c9d75c8cc52: 89a48c4f-a109-4b28-ae6a-9f30cf6965a2 + - a12dde47-121d-4cc8-9c0b-b81035a9e978: f529cf51-4d88-432a-b6e5-ad66743c842a + - a1b06eaa-4ccd-49e2-91f2-a8cfece5254b: 6b10defb-e495-4de9-8e7f-87ff83364433 + - a24709e6-9797-4a70-aa6a-d81e0fd831a0: 56885160-9bf6-4d66-9330-0a8001c1ffd5 + - a30edd5e-d264-44de-8689-bfff92353aee: 135c6c93-94ae-40eb-9436-9d5c7d4c1b76 + - a3ef195a-5bdc-4d96-a4ad-9d149a2f4d5e: cc753256-5251-4a2a-82fc-52cff4435a21 + - a420efdf-55b7-41cd-8bb5-89bc9e34d8f4: 9129b095-809f-453f-ad22-f9ac86c7ab8c + - a45d9874-f37c-41c9-b74b-fc5b8b804b30: 7ad2c4a8-399e-455b-8a94-7810c8cbaa96 + - a4c95fe5-9113-4626-9604-b71973fb5abe: 98c2d544-25c1-43a6-a6f8-d396385399b1 + - a4ff8efb-cb3c-4ef4-b0cb-5154d4ef58c0: 8394cdc8-b72c-44c6-9b2e-30b2c9ef6d1a + - a5085698-9e91-491f-be4e-030b54c684ea: 2a386676-8605-4331-86a5-5368d51335e6 + - a55d6f68-e6f9-4376-99a1-a927c3ced661: a0cf2921-1212-43f4-a56b-59e3efd1efc0 + - a6460eae-c017-41cd-8937-2c7b9df6c62b: 09f0b7d0-42b3-4eaf-9c54-fef40b29a0dd + - a674c3db-9f91-4c31-8fa5-f8b9f9f7c26b: a7132f3e-b959-4445-8c33-d83de440a0c9 + - a6a28de7-2cc3-4d68-a985-66f0fa9c4164: ab13ce74-b5bf-4771-ae1e-22e99dd33e6a + - a6a33942-2295-4ffb-b9b7-ccc78ac22bdb: a77c1eb1-9593-4438-87b1-ae63ecf14f5d + - a6e780b3-03cb-49aa-8d53-83150b2bd5d6: 6b8948bf-e1c5-4626-9164-fb0631b13322 + - a7b6d8d2-7c2a-48d2-aaaa-ae84d5f350b0: 8de418d3-b497-4ee3-aef5-c35c7c478a08 + - a89f456c-11a1-43fc-bfa8-912646e3efd9: 0b1f59da-99c6-4369-8496-d54668056c4e + - a926d3f6-4c43-4f85-9ff3-fdf0b8a43975: 80935988-d850-43b0-8489-fdfb937b76e4 + - a9993c60-2bf2-4062-bc65-902e1a421c4d: 6f2f7e56-ab07-4f8b-935a-c0150d74e9f6 + - ab2efbdd-f11e-4691-bafc-7325dd21c9ce: 4b15a9f7-2cc8-41c8-ba9e-c6c69e562721 + - ab8ba6a3-368b-439b-bc27-0f396e4ce6eb: e08f8232-5976-4c1c-8716-e28147a6ce64 + - acede8c7-aa51-4bd1-b85f-732bd8508449: 9cd18e63-f258-47f2-8eac-80b575acda0d + - ae1918ba-2448-469a-b337-76e5a4816f4c: f14127e0-d9ae-44ec-8230-3851a3639162 + - aed39f34-e15e-4c1f-83b1-180afb830e27: 61324e68-e226-4eb2-a96a-63a07ecc0e98 + - af18f812-3c7c-4c4d-b162-5fb8957ea933: 07f1854c-abc2-491b-b8bc-a3501222feb3 + - af555212-8f01-4ef5-ae4b-f6165bfa9524: 2dc056c9-08ab-4593-a8d7-e2e7ad71861b + - afc699c7-a1ac-4bb9-9288-3b00af3d4f6e: 6c6cb8b7-3a98-4d0b-aacc-d52cbec6726a + - b04e02ae-2d83-4ddd-ad4b-d9d44e288ea4: b0ec31f4-bb56-429d-9647-d6bb45861c8c + - b1daa443-4454-49b0-b62e-888fd23b0dff: b487fcf3-002e-4822-9625-f02956fbb781 + - b2e357ba-668a-4213-a09f-fb4fc2ad02bb: ca21cb84-c838-436d-9705-24c3cbd196e1 + - b341840b-5fd1-4f31-8d01-e00181428d23: ac621d0d-1025-411f-81cc-831e5e3dd00b + - b3638d6c-5f3e-48f4-b0ed-dfb7bedc6e16: 53ef3073-ecda-40c9-a16c-83797dbdb78e + - b3f6fd6f-4d32-4d30-ab3a-893f7e77546f: 6777d912-e79d-4f3d-8a23-f24d7acdd522 + - b40e0144-e33d-42b1-ba14-df79a03a9dec: afc5e3b1-eccd-4f59-a2f8-53a0a63bd646 + - b520b5ac-c0da-46bb-a00c-baecbc88e66b: 4d93040b-0877-4dc1-a0c2-a495016de83b + - b5eec3f8-31fe-4836-97ef-9f94c6079d27: d07d1906-eaea-4b71-92d2-bea1f8736f92 + - b606a2f9-401b-42b3-9eef-918b489cf6e1: 04ff2d6a-03de-4b0a-bedc-a4b282d7efc5 + - b7fba43c-452e-419c-b421-7f9ed959fc9d: a0bee32f-a528-40cc-8704-9dd39691c1a4 + - b8e0963f-7ab4-4b2e-a055-bdc1be1c3170: 7cf0f5b2-75b8-4fac-ad13-712007347647 + - b9399f57-3264-4290-a881-1002961c0426: c647f5e5-a48d-4552-99c7-630bcb3fc5af + - bb11bac7-b260-481e-b248-3310cae98857: e7a1b64d-9ae1-430a-a584-51a434e45381 + - bb1bcce0-ba3e-493a-a321-bfd9d4b75942: 83fdf92e-7285-4864-b7f7-b56573f0e2e8 + - bb88b162-47e7-4d0c-a288-dbe06511a990: 6a863191-faea-4432-b7f4-41bc539cc8e7 + - bd8445e3-a912-42b5-8817-15b3833aad22: fc907ca1-b2f4-4ae3-b49c-9f8448ca0be8 + - bf4229f1-c6a5-48d1-a38f-f04b89258a5f: d2e60671-ae1e-419a-ac5e-3759a34df741 + - bf681195-f9d5-4c14-b881-deb9c183055f: 491ecefb-13cd-4356-a5d9-73f442a5e381 + - bfbc951a-f9ae-4621-976e-7894a79478ac: 6ca8c494-08e6-480c-a6c0-b3dce62bd692 + - c2708339-9d3b-4cb9-9020-f226fbffaa73: 6582d0d3-dcc0-4a82-ab92-bda59d4ae4d3 + - c28c16aa-b964-4fb3-b0f2-7f9ca2ba897a: 7a4a44a4-8a66-4320-a3cb-c5fc4a55bb4b + - c2edfd34-c09a-4e38-b5da-299dd2e2923c: 96a77374-8d65-4258-afa8-56fa7dd9a353 + - c3e60476-e9ab-43b7-bc77-52de2f551ea0: d39d54db-1af5-4c4c-bb64-507cff2a8752 + - c4785331-76b4-453b-92f9-c742c70bb179: 8fd43d53-4707-4755-ae21-281babc4a8a5 + - c4b1a1e6-7665-4e82-989c-66a8fab1e47d: 3d9571e4-4397-4319-9187-0d1f83c516db + - c4c75723-2bdc-433d-add0-da9d609b0f2f: 5857ba63-8e4c-4afa-9413-3ef6d3184e32 + - c4fb2a89-29e2-4cd0-83a0-caab4b180dd8: 2db42466-df60-43ff-b942-b0eedd705abe + - c5537a7d-0960-46f6-8f0a-33da2df70200: 46a75696-6bb4-47d5-bc0c-903f6a797471 + - c5f05e5f-4892-44c6-ba72-b885668a23ad: 18acdc7e-459f-4219-bcd5-8614cb2776ef + - c6493c14-cfc3-477b-9afa-7bbf6fda80b0: dda21d7e-d8c9-4a0c-9917-d73df68d6f29 + - c73c04ca-7c3c-4e28-b9c0-d2c66644aef0: d7a4041c-a405-456a-abc8-fb551d8b3b00 + - c79fd486-6a0a-47f5-9546-2725f694a92f: c5214645-e492-4c75-9778-3acb61503472 + - c7ce6262-5a95-4210-8fa0-05580c6a88db: 30bf6d19-885c-42fe-8195-3e71e8c3918b + - c81a5037-9552-4a7a-b402-6e5afdd00132: ed7615db-bf66-4ceb-9b6d-94585dfba275 + - c88da200-d694-4e27-b433-47aa0ae56ce9: ebe15137-3734-487c-a0d7-b498f241e8c1 + - c9cd2679-ba09-4f0f-98d7-ec3140e249c7: 2572bdd9-c2de-4adb-be7a-d53217cf7db4 + - cc59c548-1073-432f-a3f3-f7c64e11ed14: c12b6591-caa8-4433-b420-c3efc693593a + - cd4e3b1e-183f-4798-a3fa-c7b0750c0f3c: 106da489-c9ac-43c5-a0d6-fb0b298dafa5 + - cd908cfd-824a-41cc-9781-34ee591c98cf: 31d5d1f8-ab79-49d8-a722-f663eda27502 + - cd9e68dd-f5be-4988-b4a7-d75258adec0b: f7d350e1-f928-42ff-9a3c-3460594bfa00 + - cdb2e0d6-79db-45a6-8973-928bf679f9f8: 7ccb99d7-f247-40cd-a69a-cebd151fb182 + - ce8466fa-1f06-4ffe-9845-a396fcd77c99: 1353aaef-a78a-4f70-80ef-f2c9fe717ac5 + - cf16465a-48d6-40af-9531-15312d8ec38b: f740487d-923c-4156-bad2-f1deb9c49131 + - cf4d228b-cd28-48c1-962d-e1b9c5869f60: d5ef0869-3c0f-4768-88e8-8eebbc747a17 + - cf959d62-da77-4ea1-bff7-009b4c99fc9a: 069fbe97-6520-486c-996f-8c2558d0aa97 + - d02de6b8-12a1-4901-b4fa-9d19c4742118: 57a0a9bd-d681-49fa-80c2-d0495e522a5f + - d0b648c0-f031-49e7-ac1c-c9072a903317: e6fe490c-8c1d-4b7b-a558-bf9a71e1e536 + - d3859700-4e38-4998-b2f5-741d92ebcb0d: 138717b7-e5a9-4398-bf7a-4411ba0af469 + - d387093b-00a9-4e77-827f-d97a6674158b: b5fef323-29cd-48d3-a043-4dc937b28241 + - d5a99a27-d079-430b-86ef-2ad6c533f962: 87ea7e7c-debc-47fd-9c33-4015328482c2 + - d61d8ea0-5799-4c2d-a758-e1b998b0776d: b15a8977-a4d7-4f88-9377-4f12a2485f82 + - d735f2c4-df3a-46aa-9406-a962db6277e6: 1894539e-bf0c-4d34-bc92-d5eca75e7589 + - d7a659b8-d162-4114-b1dd-7f7cc7713ce4: 00cec48f-5242-404e-a5fd-78f05c69d591 + - d7a920f6-7672-4c1a-a6fa-9df39a2df7f9: 70a5b7c3-549e-4a03-ba4a-127df073805d + - d87e6886-9a7a-4cb0-8f38-e908b690eef3: 749d5e61-5dec-4bb6-bb92-94dda1f3604a + - da621398-4472-42c0-9dd2-b55cbd96c86c: fd8de8fc-3999-4e0a-b9a9-745c28d186c2 + - daaa4347-1049-4c69-908c-884fdc3fcdf5: 722655c4-7fce-41bf-b7e1-e46c8987282a + - db52baa5-d1ea-401a-ab87-52542d8f88a9: 8f1be4e1-ff3e-47a5-a761-b6ed0d466561 + - dc1c6207-6fc1-4d5f-b59a-3f69a79b9bed: 2272c271-7b6c-48cc-ae08-d7d30dde682e + - dc570cd7-2f58-4639-b5aa-49876dd50978: e561681f-2b18-4185-97c1-cc7eb1d9c312 + - dcc3ad96-997c-4e0a-94bc-1ae501eb02af: 5c84b816-a8dd-4475-8337-964ddf2aceea + - dd09b40b-0105-4ecd-be01-30b393f470dc: 295cbbb9-33c7-487b-84e6-d554de447334 + - ddef3800-9018-4fe0-bbd1-a0e1b8df58ac: 5d0a5812-4c6d-46e6-a03a-09b60ae5de48 + - de34385c-1796-499f-a145-30de42478770: 0ba73682-6bae-4b81-ba12-1b46f58c06cf + - df57c6a3-ff27-430b-892f-54bd0cbb8aea: da181ff2-8374-4cc6-96f4-a40ed3d7e14c + - dff35311-8c13-4a47-aa27-7c81428bea0f: 8c43891d-652c-4699-90e9-d7d2c4dd0a29 + - e01f28f1-602b-4d5f-8baa-63b0f3957776: 805d8e27-4c57-4ffb-a156-c006b14f8ebc + - e126f97f-02aa-4ff3-b7e0-c00afa850a2b: ec316b3b-a56b-477c-96e9-a0567890c9c5 + - e136b9a2-8a37-4184-ab37-94e8afa47a33: 497f7188-a34d-4c52-9285-6ef486ad684b + - e2772a95-961f-4ea5-af46-ec9edb3d7b73: c7e7d299-e828-4a21-bdfc-cafd6c557c4b + - e3ae63cf-561e-4b6f-b2ac-fd0ae204da18: d80f0595-4e1d-448e-afef-e21fcc80f521 + - e3ae6904-21e2-4337-99d4-8425ed9aea30: 40fe63a3-fad2-482f-afb7-5f08fbf540d9 + - e41e4172-e7f2-4603-851c-dc05a0e21a3c: 4eef3acd-6894-43d4-b6e6-bba4bc729457 + - e4a334c0-89f1-4fce-bbae-e4fd01256466: aa952deb-b054-4e99-aa60-600cf2678371 + - e4ed526a-097a-49f6-b9ee-6e975ca6aad0: e73b1f1d-7c11-4099-9632-edabe94166a8 + - e769c593-4515-4020-a2bf-11dd93208bc4: 3a082b68-8c10-478b-bdc1-012debddbfb9 + - e9a27e62-d022-4adc-807d-d55d896a4742: 1edd2162-cecf-4e50-a261-9a28f7437ae3 + - ea3916e5-1ca2-40ba-9dcf-b879223def2e: aa4e29d0-66d3-49ee-b482-4a2a4c447d88 + - ea4f3347-9719-415f-a3de-b0d5707909ed: 31f296a4-9650-4bda-8d4a-2c5237911dac + - eb1e4612-0df6-4ade-a76e-06418f7ea742: 5773cc04-5773-434e-9985-2dd4200f1a77 + - eb3812be-7e6b-41c8-b613-68c8fb3b6f13: 2752b65d-df97-4c03-9eef-c5f00796c1c7 + - ebf29903-e778-4ba0-b2bd-8925aa9f4872: 74d601a3-8d97-441a-af78-5ec2a963651e + - ecb3ef5b-0458-4995-994d-aeb197dac3c6: ad378ea5-7cc1-4152-a022-3f3563680405 + - eccbd45a-a745-416c-a011-f1e0ca293492: e6f55aef-bba6-401f-8442-4101f628acdf + - ee02bda4-457d-4b91-9243-32cf461a5f92: ccc7cd7b-286e-43c8-8e4d-7b14c01d4978 + - ee21d19f-e0a5-49cf-aaaa-4e8b8018bc7b: 5f9a3157-9983-428f-93e6-951c5b5c929f + - ee29bf94-3e0e-428f-aabc-b6b910fb7db3: 04b7c790-5f7c-40a1-b286-b68c8346665d + - ee360366-a3ca-4676-8995-0d10669f47ca: b7a16c0f-84f2-4590-85b8-8bfa507e89d2 + - f00fea39-9eb8-4a3a-9afe-47d1a20fcade: 3e004573-ea7d-407f-a8e8-b3fe94fd4f4d + - f0e75a3b-9b96-4ae7-8275-a01d822b9812: a73f6dac-8037-468f-8acc-3b6bd9e770d5 + - f1545112-6a03-4871-8dd1-8e6ab04d0263: 07cce6c8-f5d7-400e-b3bb-70cfa0e5881c + - f1893cb9-4b02-4f1b-a98f-0a4d034e1a9a: 675942d7-d7d1-48fc-abd8-5a6bff7f56cd + - f1b07035-2368-4bb3-97d2-06364c05f94c: f24b3095-782f-4fbe-a900-138727112c90 + - f2925123-9c0e-4025-8db9-c72926964a10: 192195e0-0a93-443d-8f00-e0289ab40167 + - f2a17cfa-5b56-4950-8997-729b270c0943: d2ceb182-c8a1-43bc-9aea-ff239f340c22 + - f38fa9c7-4103-4272-b5e2-3b7124ed7ce1: 3bfe7b5b-6278-469c-b93c-63a04f1d5b02 + - f3ab0ac5-9a4f-4928-a3f2-e2c9ac4d084f: 093fe896-cad0-4c59-9e5d-8c596a8b5f77 + - f4029e40-76bf-4921-b70b-e4ce76a7bac1: 150163dd-7d0d-4bbe-a4dd-9ed2e0eabb11 + - f42901f6-dbe4-4b0b-8101-9e5808ddccd5: fd5b3964-1eab-4124-91f5-e57195abbe20 + - f5f034a0-d503-4083-8bda-b0dc37c1e8bd: 08ef5629-3d1d-4e26-8a1d-b0b7ae25f515 + - f6490bde-080e-4365-b78c-72954ee76228: c0a16006-a72e-46ea-b037-6f6055a8037e + - f68f0438-2abc-4fe4-afd7-77fb2758a16d: 2c79d8f8-6e19-4bc1-8c7e-eeb7b9172be5 + - f73472e1-698a-422a-9c68-84d1efe83979: f5ea9cd5-c350-473d-b0cc-9117263fd777 + - f763750e-d14c-4749-88e9-74125df2d29d: e63bf552-2edd-44f6-817b-8467a4db70e1 + - f80a738a-5010-43a5-858a-bbf56571ffe9: 26126d53-f439-4c11-a332-516f25d8cef9 + - f9e7eaf6-421b-495b-9be1-066e9c0dfcee: 6e56c65c-de07-4946-8e5f-49a71f90c0a0 + - fad9a75c-3477-49fe-8f5f-bc74206d039b: 2fcf0bf7-bd26-4474-b860-5a6c02503cde + - fae74c4b-9de8-469f-9c4d-9b8447f28821: 8f5afc96-f8af-49e6-8c59-93f62d72c98c + - fb381439-feb0-4d4e-9704-a129807cd14f: ceb35dbc-0c60-4f87-81a9-31f047f53fb7 + - fb8803fd-f4f0-41f1-ae2b-935e1724b9f2: 35ab393e-a4e7-4608-a60a-b9e0a5683dc9 + - fc150902-4b28-4b98-a419-1f0b2085126f: 24a7cc7c-689a-411c-b7d5-1f41b94b856e + - fc5d27fb-e846-4e23-b1e7-8b68f2054d5a: ff19197c-9428-4f08-9a91-3b0aa6da372a + - fcedcd16-8d68-488c-92cf-8fc3fb8e929e: 8f271eef-bc6f-44ca-8498-4d71eb993dc0 + - fdd99efb-e57a-4acc-8115-665e08974fff: 5236bf74-2c01-4cfa-8ac3-71def1454ab5 + Name: SIK Examples + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5d1ebe34-4748-49b7-b6d3-7bad94ca7426 + - ! 006192b0-6a28-42d8-9c20-7db3cf994249 + - ! f1893cb9-4b02-4f1b-a98f-0a4d034e1a9a + Components: + [] +- ! + PrefabRemaps: + [] + Name: Content + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 72c595e5-66ca-4ab3-aa41-909151244dbf + - ! 37ed3092-73e5-420b-aedb-656b1c84ac79 + - ! b5eec3f8-31fe-4836-97ef-9f94c6079d27 + - ! 1ac296eb-35bc-4019-84fb-d66c59e1b19d + Components: + - ! 0e01ccea-3288-438d-9ec5-f16254ebd0bf +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 20ce429e-ff7b-42d7-8363-322863bfded1 +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: RocketPartSelector + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -35.000000, y: -1.927469, z: -100.000000} + rotation: {x: 0.000000, y: 10.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! bb88b162-47e7-4d0c-a288-dbe06511a990 + Components: + - ! 2cbb881e-c22c-42b0-bfe9-c847ab1640d2 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! aed39f34-e15e-4c1f-83b1-180afb830e27 + - ! 18c0f8c9-eff4-4d1f-ba23-b359dcc52051 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: min + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 581eb383-c10f-47e0-8310-210d1491e7df + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: CursorController + Enabled: true + ScriptAsset: ! b1bd344a-41d1-4a26-bbbb-6c15ab434046 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 18.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 90.000000} + scale: {x: 0.750000, y: 0.750000, z: 0.750000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ce8466fa-1f06-4ffe-9845-a396fcd77c99 + - ! 38006373-7972-471e-be8d-3a6c4a67bdf7 + - ! 9d8bd7ef-b6c6-4a95-a2b0-34dda1b75769 + - ! 8131f7cd-4328-419d-8b64-44ca9070139d + - ! d87e6886-9a7a-4cb0-8f38-e908b690eef3 +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f1b07035-2368-4bb3-97d2-06364c05f94c + - ! 947f369e-0829-4053-a910-a4495d8f718c +- ! + PrefabRemaps: + - 02a86b70-f0f0-41ad-87bd-21c32b796670: 8f5b51cb-131a-42fa-9ea7-67cee50d6af2 + - 03f7bc43-5636-41fb-a9fc-1dbf378a0dd5: e3a7a944-c642-433e-b640-41b775d7e247 + - 050bbf47-8842-4bc2-abe8-7a28fc5c70ab: 6b721f55-2fde-4515-8a98-e0623db0c62c + - 05ab905d-7685-4e29-9db5-9042078af2d6: 93d669d1-3439-4d61-ab72-99f1c6f76a81 + - 07d5618b-22f9-4656-87fd-b0198fa0aeb6: d0f8de20-470a-4599-b195-7ae175fbfc78 + - 08614d83-f067-4740-a346-a0b10d1ffd62: 055525b2-7c1a-4f70-9358-23e0d7d156b8 + - 0b1bf884-4efd-4b6d-83ac-82540696baec: 283ab8bc-80c5-48db-8f22-6b4ab6e6cffe + - 0deb320d-887e-4b1a-b988-f11b2c4d951b: edcde6ca-b40c-4768-a7d2-dd31da71277a + - 0ff1487a-e8d6-4aaf-9067-a61f2fa4c77e: ad14db46-53e1-460c-a8bf-8c26bd57f37c + - 11e7d38c-6fbb-4f05-b89d-a44a9ae8336a: 0473b266-866f-4f68-af21-9d3530e1914f + - 1353e5b8-fa96-4236-9812-7fd080b04697: 04ac8134-d110-4511-b25a-891f2f66584b + - 142880c6-721e-45a0-bdb5-e75cc9a91f53: c4bd0335-b377-414d-8521-c473e35c5774 + - 162925ed-6a4c-401a-a521-86902851061f: 5fb8a5cc-ee0c-4abd-bff7-cb1d3aa2a5bc + - 1ab3fbdf-e28e-45a8-943d-76938ac530b4: 12ba946a-1a8e-4e95-87e5-087ec0b249cc + - 1b6d2315-e870-4a05-9817-029318f16b5a: f4788f9e-4139-4eef-90bc-771177044cd8 + - 1b99283b-6388-4d39-a423-7be97ff2f32d: 9c6e9559-53cb-4842-afc9-a9cf725bce0a + - 1dc67040-bae9-41b8-960f-b57a94672dfa: ae4a9bad-4c46-4bf3-8553-28e8b9416cce + - 1f2cf37f-fd91-492c-a63b-884a08cd9215: 15d70faf-f504-434b-bc7b-bb474fac2980 + - 20841b1c-e2a6-42cf-9bd0-4fd466eae39c: 95dea6d2-2c8c-477b-a1f3-e372e02e6a0b + - 22e40d6c-4405-4a2f-9eda-9f5e0d425a75: b935b9b7-3c38-42b9-8045-c6609e019a8f + - 258ea60f-f57b-4a6f-9bd2-98a9b9b438a2: 7e835154-746f-4b08-a586-447595fc19a1 + - 27db1592-a7a2-4e26-b369-afc71511fb9e: 72e54688-1bc6-48fc-89bb-5fc41b166ae0 + - 29d989ad-aee7-43c3-95e0-02735ba7dd2f: db24ae45-9fd3-4bac-a406-0cad45a3f045 + - 2b9a5b20-6a89-4fd1-906b-e97f4259712f: 0d34b376-2158-453b-931e-0189d0cf2dfa + - 2d1055e9-e5d5-49f7-8955-de8f46da0f6a: e8f1e2a0-17f6-445d-ad3b-100743436988 + - 309860a1-e8fd-49a7-8b08-343086fa08dd: a227f4f5-bb8b-4083-8ff3-76b300794afe + - 31df5cf9-9877-4359-9161-92964449a557: aff70df1-490d-4236-bfe7-1c9fcd1a028a + - 32346fd9-8168-4666-87d9-78060a1ebed2: 1f7bf313-445c-40f6-92ad-a40a50dea575 + - 3f2dd09b-edbc-4994-85a8-a366bf77ca69: 9f23857f-0354-4c96-a54d-0a74653401b0 + - 3f428eaa-6547-40ec-865e-50071201a35e: 4756a1da-6124-4cbb-af0c-1631649652f6 + - 40a2ea5b-f164-48c5-8ffc-c3dfcacc6d91: db9cf02a-a38c-47aa-b059-2faab8f74c75 + - 411b54bc-1db6-4fe9-908b-1f4f0a372ce0: ea14478c-a162-45e4-a7a7-af2ac18b7d4c + - 4527c113-2c46-40b1-bb7d-3acd00e22bd2: 94f70a69-9105-4332-988c-b375881b7bd9 + - 4696df6f-6058-47bd-8129-72a773a76e75: e0925a50-c8a1-4759-9d26-eac6079b1fdb + - 4971d6a8-a5fe-431e-b815-07883d1bd9b4: 2878109d-8f26-4010-b916-efdc9fecbdf8 + - 50f48cde-a492-4587-8b76-26cff1adec60: 2a62abd3-948e-4fb7-bacd-e846fe772fc8 + - 511aa840-3b12-48da-8eb3-6d4a20316ec0: a92fd0a3-ee3a-4273-a91b-d625d14ce8d2 + - 5173a6a1-dbb7-4e12-a52f-a3799a1fea13: 4f009679-ee66-4a0c-8747-6163b9934265 + - 52a3f271-30a0-4e9c-9f47-c80145bab1b2: 34e94d3a-2900-4f04-bbdd-8be35309a24f + - 531e560d-ffa5-433d-8224-6c252eb6a9bb: 64c3ab11-f5ff-4e18-91b8-c697a26228bd + - 58d2a4c0-8eba-4ef1-b77e-c7f7d1192d79: d6371ebf-1d3b-4bfa-bdd8-c0a7fabf8f39 + - 5bd739b3-039d-4f2e-bc80-61fd158ce1aa: 633241a4-412e-4a33-acb2-8487ae2291c9 + - 5da27569-8d52-4e61-a3ab-bb97294d4ce0: 02d483b7-4973-456a-94a1-5973d02ed09f + - 60037818-559f-4345-ac44-f7c5dfc86f3c: 50cf7888-914f-493a-8fcd-16a430ffe91e + - 6229e282-4449-48f3-8ef5-b90c67ba62fd: 5a63eead-ba79-4ecd-b8cd-509fbea8a4f2 + - 63462f25-ed20-4163-b0fe-197f3a97f011: 95f1c1ea-6b70-4e98-80bd-216ce18becb4 + - 6480de4a-e83a-4ebf-919e-d73bc4fd2eee: 3ab55c9b-dd82-4532-943e-d1df8f009177 + - 66d9ff94-deb4-4e42-bc41-0182a168c169: 12549dba-74cb-48d3-a50f-73daa0d64196 + - 674c121a-0fd0-437d-879c-9ce6b8f935fb: d1349dfb-66e5-406a-bab7-cbedc09f0583 + - 691be975-a6fd-42b9-a51a-bcdeebedb743: 7976d725-6d53-4c31-a2c3-f96d25c2b921 + - 6b078b1c-99b5-4d40-81a0-46d9ea3bb1e3: a0534ec9-6292-40ec-b6cd-859f7738f85f + - 6f50df52-5045-47a8-839c-bbd20bc99bb5: 1d1c8de5-b019-4d0a-adc6-1ad389890762 + - 711f9787-d880-4475-8f0a-0cf6b2492a6b: 2536fae3-02cb-4aa5-8c55-952afc929db0 + - 71450838-42ba-49f9-b33d-58b64a9b54c9: 94200c52-425a-43b6-8893-512b230a7726 + - 72ba5fa0-3395-495c-8d87-22bc85f50855: 1d87de05-c879-4ac1-8782-eaceafb0ab7c + - 7384c798-527a-41b9-862e-c12bc86376d3: b3bcf351-f103-47df-a4e8-fd46dbd2a734 + - 74914d99-aae6-4a1c-b4ec-d949b2a9253c: 24d6dc84-ed70-4a53-a3c4-9224488ec60a + - 75b74ef8-ecbe-4864-bb69-4c09f5be1606: bf692fb0-1af3-476e-97cd-092308e529f6 + - 771da37d-9459-45e0-8f98-9538710f0dc5: 0003afb6-e082-42ab-b89f-d22eb256f228 + - 77f1a5d3-8594-40b5-8085-79f1d46ddd71: cb2a32d4-1a84-411d-aa42-bf42bfa144e4 + - 780f2ffa-fc27-462d-85fd-d216d21e774a: 46a5e549-6a60-40d7-99e2-3d9ea7f5a6fa + - 78778cbc-4979-40f8-b213-f0cab136c8aa: efcdb1e4-82aa-48d7-adff-ea83aadec8f0 + - 7bb17581-fb13-4afd-9cfb-15d0180ba723: 3b52e609-bccb-4474-8396-af04afb47613 + - 7cb41a88-1dcc-444c-8349-a62b24a8e765: bb7fd053-b7b8-4148-9784-7a4ecfe99c2b + - 7d7953db-e981-48fc-b8af-77040f8455cd: 66b39338-c86b-4347-b964-852a182ec082 + - 7e117ed6-6fbe-4edb-941c-63a96b698e39: 822c9dec-583d-4588-bf8f-9e76769d9791 + - 7f36a885-824c-4329-8b11-919324b5c881: 7f240caf-60c7-4d5e-b716-5090899a20ce + - 80b63097-b1ef-4467-bdaa-a0a482172316: 0f43b8a1-5f63-44c3-9ba0-32318363dc57 + - 821f1d70-8d79-44db-bc8b-fabf613822c0: 33423227-0e0f-43a6-a69d-a713b9653e99 + - 826246a6-44ea-4331-85b3-702fa57389fb: 47ceb1fa-65b6-498e-af35-6f5af78c2618 + - 850751ef-604a-41bc-a846-0701b76493b1: 951124b2-906c-4f4f-8422-a881e9d98b4a + - 86412b42-c0cf-4fc3-a8a2-fe90221abc59: 4ca9e76a-f818-4a4f-954e-2777667c610a + - 8d12c0a3-c20a-4dd4-b82e-4aa3489ca78f: 37803923-6d4a-4268-aba1-ef5d1d23cd46 + - 8dbfcb2b-c189-46eb-960f-45c157d8484a: 4b527cf4-3e27-4559-b291-0a0b985b4717 + - 8e8470af-1ad4-4317-96d6-2bd90d653cbb: e417673c-029b-4df2-b240-55edb111620f + - 92490a16-2530-449b-8ee9-f65ff2095dd2: 345fde54-ce8d-467e-bc01-3c54e0129ca0 + - 933ca421-582e-407b-bfc6-206a10cef5f3: 5cc46581-44dd-43e4-a2c1-e2bd294a97e6 + - 9827271d-d758-4004-bc20-03cf1e136d1c: 1abd5650-e4e3-4218-9dfe-2d518a0b161b + - 9b586360-5bcd-4bd9-9646-5b5ef75f1788: eafdc1ea-a52b-486f-af4a-13a4f947b89f + - 9f2b3f06-77a1-4255-830d-ad50801287bd: eb708bc5-ef13-451c-b7b2-46398c05d999 + - 9f93fce7-edb2-4d42-b09c-939416f49cc0: 0b203467-22aa-4c6c-a7de-22b8f87e0ad6 + - 9f9bcf5b-6b30-496e-b734-5aa240e969c5: c3c87762-eca6-4731-87a2-f7596e7c0479 + - a114455b-6a9f-4990-a3cc-fa88e4a4829a: 59d49307-84ec-4eb8-aa0f-22f915eb8a4f + - a3ea66da-0ca8-4958-8d69-6f5045fa706c: 009892ac-73e5-4967-bd85-efc71c49f0a7 + - a3f4225f-153f-429a-8cd2-aa84d9db52ad: fb7196a9-d764-4f20-bf77-8d5722266d27 + - a53cac7a-4a63-4351-a6da-b868ffac9c0a: c609db94-d0da-4230-a62a-7f71134c5356 + - a650b8d7-507a-404b-bfe5-9602e915dae8: 861c2385-029b-4a3f-bb80-aad4ce6de18d + - a72bed4c-f7e3-4691-93f3-d06d66d75dd0: 32b9372e-60ad-430c-87fe-a43f6258b4e5 + - a813a7a6-1822-4279-8348-2c314e6ab150: 224e1b84-2cd6-40dc-8b4d-39e26681bfd1 + - a9edf4cd-40ec-4fe4-83b1-2f9439932ef0: 341ee23b-b82c-4f55-b23d-193c0df5c016 + - abb42942-9861-46af-946b-236bb527035f: b0e47302-1cbb-4346-a62f-8e341c73f7b5 + - abcc8726-930d-4609-b007-74454c9f20f9: 3b885064-9472-4754-9b78-42ff961487b9 + - b27cfdfa-9f62-4102-83e8-b9bedf8c2910: 682266ba-13a1-48d4-92fd-608428328dfc + - b297e024-8530-43a8-9271-1d093788af2f: c6e2a5f7-ab1a-4d18-a9d6-a0cd79b37fa7 + - b2d002f5-2b50-4f66-8c0d-93d5dba56556: 28b286b8-7e97-4ed0-bbce-b813966137ff + - b55b19ef-83c9-4922-aaea-ded86b65a663: 22806c77-18d4-41eb-81b3-b85d1228c059 + - bdf62eca-a7ef-42cb-9f0a-c0db5dd7b3e7: 1573681c-afad-4710-bf30-13ab306587e0 + - be49fb74-bd52-43d9-8ea6-b79a6965e36d: ce6d11c6-be32-4e32-b7b8-6c199feef4ea + - cb14c3ea-7067-409a-83f3-618dbe55e547: 87b21f5e-7b4d-4754-af21-4925af99ffb4 + - cd4ffac9-4a32-4dba-b0a2-db117c38b975: 6f03f0b2-6d81-4bc9-a49b-6d387e0245ff + - ce9ff426-cb39-478d-8067-8dea5e623fc6: faaefd86-d1ae-4d56-a280-766a06b98cf6 + - cea83226-8c66-44d7-895a-2480d9cc1c35: 5ce67bb0-6c08-472c-b67f-77bde9454993 + - cf2d9e76-9520-473b-8b9b-68ce183d22ca: cfce736c-a49b-4a3e-947a-32a8e98a4961 + - cfc52ae9-3c49-4c47-8299-82d37cdb1095: 8d2fc7e4-0fe6-43d2-b837-fbe1aa318543 + - d180e208-2df8-4507-8437-213a1fbd5da6: 3c0c8d96-d019-421b-8641-2f6c4fef657f + - d2c2e4e9-c17c-4ecc-902f-2283f319023b: 81d57b7d-0209-4404-a775-f7ef13ad4f97 + - d8ffb52f-2569-42b3-a616-c75eb7fe7e36: ca642efc-944a-4dac-beb4-508163707dd4 + - d9e2d13e-9f8c-4798-83f1-83fed0cdb757: e3a03ad7-eb65-485e-86e0-cd9f0e93e442 + - dcf6aa57-0caa-4b44-a73b-2e33da4f1428: 1e231994-34a6-48c1-94ee-339987f113c7 + - dd01563a-be2b-4815-85ad-bf139803cc1f: 5aee8ecc-3bc7-4fd4-a5bc-c0eaa693a469 + - dd368761-3c9f-4261-afbf-469cb4681d3d: f08c52f6-14c2-4ded-be77-3a2b3f47c577 + - dddd8a38-ce19-4f71-8776-9826e6597567: 96aa9a5e-354d-415a-ac80-5442481fec05 + - de62f5f3-2f86-4c98-b357-a44d603496f1: 1907c2c5-2d81-47ce-96c9-eeb579299134 + - e8194f5f-aab4-4dff-8e59-92d2aaf9c042: edd67c66-78f4-4deb-a3bf-c7b0b07504f3 + - e9344e0a-57f1-4226-9a18-a84052078b1b: 42c8f113-929e-4b03-b3c0-1e0908941234 + - eb361989-1d4a-41f7-a205-235ce6f4e3b9: 24d70dc1-4597-48e0-9370-c6e9293594d4 + - ebf022e3-0fd7-4f48-b695-a86d4509dbfb: 7ca6c509-63a2-4a25-877e-e28ae50f4f4f + - ec33c966-ab83-4e2c-9dd1-9abe30a16e47: 24b98cd7-d5a4-4872-b17b-a6bea152b437 + - efcda464-fbc4-45be-93af-a83450f936fa: 0465eda0-f2a8-46a0-89bf-aec9d8b8da01 + - f154d1c1-2595-4578-acc2-6872637af31a: fd649b68-8f72-465f-baa6-ceef905acca1 + - f2db0563-6c95-499d-8ddb-aa5cfaaf22f2: a216ab78-0022-4fc2-96cf-862ffa9f0371 + - f3c8087e-8414-4601-833d-96cf682f94d3: c224f6fa-05b2-43d9-b45b-0050539a4688 + - f66a2c0c-ecc0-41a4-be4a-21ad0c1b6cb7: 63d95309-a416-46c0-a21b-462bd3335750 + - f9d02a8c-71a4-411f-a21e-a7b3329c62d6: cb9bed1c-7640-4b13-9103-67d3e3ae7401 + - fc6a94ee-23d6-4637-a73b-30ac1b571eca: 5197ee39-b38d-42eb-8c32-d9938bfefb40 + - ff6c151e-214e-4216-8d76-8d4244e2a6e8: 481aca89-f9bf-4ce1-a3a8-d75fc0ff915b + Name: SpectaclesInteractionKit + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 142880c6-721e-45a0-bdb5-e75cc9a91f53 + - ! abcc8726-930d-4609-b007-74454c9f20f9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + ScriptAsset: ! 9b59ee1c-abca-4e6b-9e2e-a9a5884bc389 + ScriptInputsDefault: + moveSpeed: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + joystickObject: ! e1075a24-89cb-4368-90aa-e14b04dd49ee + robotObject: ! 70821b0b-a006-4b39-b35a-5a679bec2460 + rightIndexFinger: ! d180e208-2df8-4507-8437-213a1fbd5da6 + leftIndexFinger: ! 1ab3fbdf-e28e-45a8-943d-76938ac530b4 + rightThumb: ! 1b6d2315-e870-4a05-9817-029318f16b5a + leftThumb: ! 60037818-559f-4345-ac44-f7c5dfc86f3c + moveSpeed: ! 0.000000 + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/Joystick/JoystickScene.scene.meta b/Spectacles-2-Unitree/Assets/Joystick/JoystickScene.scene.meta new file mode 100644 index 00000000..891cac72 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/JoystickScene.scene.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Scene: ! 0a1ccb1a-fe88-4fbb-9883-e3af3c75fd99 + ImporterName: SceneImporter + PrimaryAsset: ! 0a1ccb1a-fe88-4fbb-9883-e3af3c75fd99 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/Joystick/MaterialParams.png b/Spectacles-2-Unitree/Assets/Joystick/MaterialParams.png new file mode 100644 index 00000000..b2b32e01 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/MaterialParams.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51e2b063c7245fdfdb21a2f4f221910c7553b6152bf23182c7c8e19496f0dea6 +size 1383 diff --git a/Spectacles-2-Unitree/Assets/Joystick/MaterialParams.png.meta b/Spectacles-2-Unitree/Assets/Joystick/MaterialParams.png.meta new file mode 100644 index 00000000..d60d20de --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/MaterialParams.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! a3034842-01f6-48b3-bc04-8c8431f83655 + ImporterName: FileTextureImporter + PrimaryAsset: ! a3034842-01f6-48b3-bc04-8c8431f83655 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium diff --git a/Spectacles-2-Unitree/Assets/Joystick/Normal.png b/Spectacles-2-Unitree/Assets/Joystick/Normal.png new file mode 100644 index 00000000..c96bddf3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Normal.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf0fb3e11d82337b4f59cbd22b7a1ddfbf021051f067e2eeebd6c75b24060232 +size 1370 diff --git a/Spectacles-2-Unitree/Assets/Joystick/Normal.png.meta b/Spectacles-2-Unitree/Assets/Joystick/Normal.png.meta new file mode 100644 index 00000000..630e2cd0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Normal.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 632949d2-aeaa-4d1c-99ca-13eb8485c1e0 + ImporterName: FileTextureImporter + PrimaryAsset: ! 632949d2-aeaa-4d1c-99ca-13eb8485c1e0 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium diff --git a/Spectacles-2-Unitree/Assets/Joystick/Simple Frame.png b/Spectacles-2-Unitree/Assets/Joystick/Simple Frame.png new file mode 100644 index 00000000..b3daff1b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Simple Frame.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3095508bad9dfd6f255ace5e4f209ab6e7ccc012bac156c93b62e502ffe8bcc +size 2915 diff --git a/Spectacles-2-Unitree/Assets/Joystick/Simple Frame.png.meta b/Spectacles-2-Unitree/Assets/Joystick/Simple Frame.png.meta new file mode 100644 index 00000000..1f588739 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/Simple Frame.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 4862c6b3-6c6b-4b6d-a323-1fbe4c6ce2a1 + ImporterName: FileTextureImporter + PrimaryAsset: ! 4862c6b3-6c6b-4b6d-a323-1fbe4c6ce2a1 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3KlBOhEuurEHBuAKO3fAKx diff --git a/Spectacles-2-Unitree/Assets/Joystick/image_unlit.ss_graph b/Spectacles-2-Unitree/Assets/Joystick/image_unlit.ss_graph new file mode 100644 index 00000000..507ec63c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/image_unlit.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e4b3adac8255b848e2f2766c1924497ddeccdf591485f9c16b319260cb2d1e3 +size 491882 diff --git a/Spectacles-2-Unitree/Assets/Joystick/image_unlit.ss_graph.meta b/Spectacles-2-Unitree/Assets/Joystick/image_unlit.ss_graph.meta new file mode 100644 index 00000000..12883c13 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/image_unlit.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 61cf3610-8b8c-42d5-bfa3-16ad5e796e2d + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 61cf3610-8b8c-42d5-bfa3-16ad5e796e2d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Joystick/joystick box.png b/Spectacles-2-Unitree/Assets/Joystick/joystick box.png new file mode 100644 index 00000000..d9437744 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/joystick box.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7fb69650da91dadcf0faf99b62c04876e016e87defbc7c5e09374d5fb05ea0f +size 146 diff --git a/Spectacles-2-Unitree/Assets/Joystick/joystick box.png.meta b/Spectacles-2-Unitree/Assets/Joystick/joystick box.png.meta new file mode 100644 index 00000000..f1dfd15e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/joystick box.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 5e57c669-2619-4caf-b769-1f5e422bb9df + ImporterName: FileTextureImporter + PrimaryAsset: ! 5e57c669-2619-4caf-b769-1f5e422bb9df + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium diff --git a/Spectacles-2-Unitree/Assets/Joystick/pbr.ss_graph b/Spectacles-2-Unitree/Assets/Joystick/pbr.ss_graph new file mode 100644 index 00000000..cce9f7d4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/pbr.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5afd1a9df82b7e7e24c059cebc8d40287ab8dd862c5445c3bcf7eeedcd434ced +size 75712 diff --git a/Spectacles-2-Unitree/Assets/Joystick/pbr.ss_graph.meta b/Spectacles-2-Unitree/Assets/Joystick/pbr.ss_graph.meta new file mode 100644 index 00000000..98b9915e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Joystick/pbr.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! a897088d-8563-486d-ba79-098666bbca21 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! a897088d-8563-486d-ba79-098666bbca21 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/MaterialParams.png b/Spectacles-2-Unitree/Assets/MaterialParams.png new file mode 100644 index 00000000..b2b32e01 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/MaterialParams.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51e2b063c7245fdfdb21a2f4f221910c7553b6152bf23182c7c8e19496f0dea6 +size 1383 diff --git a/Spectacles-2-Unitree/Assets/MaterialParams.png.meta b/Spectacles-2-Unitree/Assets/MaterialParams.png.meta new file mode 100644 index 00000000..b0a74a9c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/MaterialParams.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 094909d2-1e56-43e1-88b6-4cd62fec2c4d + ImporterName: FileTextureImporter + PrimaryAsset: ! 094909d2-1e56-43e1-88b6-4cd62fec2c4d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium diff --git a/Spectacles-2-Unitree/Assets/Normal.png b/Spectacles-2-Unitree/Assets/Normal.png new file mode 100644 index 00000000..c96bddf3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Normal.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf0fb3e11d82337b4f59cbd22b7a1ddfbf021051f067e2eeebd6c75b24060232 +size 1370 diff --git a/Spectacles-2-Unitree/Assets/Normal.png.meta b/Spectacles-2-Unitree/Assets/Normal.png.meta new file mode 100644 index 00000000..a330d250 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Normal.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! f7c0ecfc-f7ba-44b8-bd24-62337451798a + ImporterName: FileTextureImporter + PrimaryAsset: ! f7c0ecfc-f7ba-44b8-bd24-62337451798a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium diff --git a/Spectacles-2-Unitree/Assets/PBR 1.mat b/Spectacles-2-Unitree/Assets/PBR 1.mat new file mode 100644 index 00000000..b1e5e068 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/PBR 1.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 868e684f-66a0-4eb5-b284-1ede4e6ee66b +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_NORMALMAP + - ENABLE_LIGHTING + BlendMode: Disabled + Properties: + Port_Center_N016: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Emissive_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + Port_SpecularAO_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseTex: + typeIdx: 9 + value: + id: 2b90fb2b-deb9-498e-8ff6-ce0dbf4ac26c + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTex: + typeIdx: 9 + value: + id: a3034842-01f6-48b3-bc04-8c8431f83655 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + materialParamsTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + materialParamsTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTex: + typeIdx: 9 + value: + id: f7c0ecfc-f7ba-44b8-bd24-62337451798a + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + uvScale: + typeIdx: 1 + value: 1.000000 + Pass: ! a897088d-8563-486d-ba79-098666bbca21 diff --git a/Spectacles-2-Unitree/Assets/PBR 1.mat.meta b/Spectacles-2-Unitree/Assets/PBR 1.mat.meta new file mode 100644 index 00000000..50899ddf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/PBR 1.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 3d89be36-5c51-4c14-834a-f41ef61abb66 + ImporterName: MaterialImporter + PrimaryAsset: ! 3d89be36-5c51-4c14-834a-f41ef61abb66 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/PBR 2.mat b/Spectacles-2-Unitree/Assets/PBR 2.mat new file mode 100644 index 00000000..4f272d8c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/PBR 2.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 287fa54d-7b08-4019-9355-c1fd2be52f31 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_NORMALMAP + - ENABLE_LIGHTING + BlendMode: Disabled + Properties: + Port_Center_N016: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Emissive_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + Port_SpecularAO_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseTex: + typeIdx: 9 + value: + id: 2b90fb2b-deb9-498e-8ff6-ce0dbf4ac26c + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTex: + typeIdx: 9 + value: + id: a3034842-01f6-48b3-bc04-8c8431f83655 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + materialParamsTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + materialParamsTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTex: + typeIdx: 9 + value: + id: f7c0ecfc-f7ba-44b8-bd24-62337451798a + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + uvScale: + typeIdx: 1 + value: 1.000000 + Pass: ! a897088d-8563-486d-ba79-098666bbca21 diff --git a/Spectacles-2-Unitree/Assets/PBR 2.mat.meta b/Spectacles-2-Unitree/Assets/PBR 2.mat.meta new file mode 100644 index 00000000..31a812f6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/PBR 2.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! bc12bc49-e5af-4e03-a0b0-cf2368ceaf78 + ImporterName: MaterialImporter + PrimaryAsset: ! bc12bc49-e5af-4e03-a0b0-cf2368ceaf78 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/PBR 3.mat b/Spectacles-2-Unitree/Assets/PBR 3.mat new file mode 100644 index 00000000..a27d822b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/PBR 3.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! a5546dc4-5b1d-4c70-9d75-21324c4c3ced +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: false, y: false, z: false, w: false} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_LIGHTING + - ENABLE_NORMALMAP + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N016: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Emissive_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + Port_SpecularAO_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseTex: + typeIdx: 9 + value: + id: 2b90fb2b-deb9-498e-8ff6-ce0dbf4ac26c + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTex: + typeIdx: 9 + value: + id: a3034842-01f6-48b3-bc04-8c8431f83655 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + materialParamsTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + materialParamsTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTex: + typeIdx: 9 + value: + id: f7c0ecfc-f7ba-44b8-bd24-62337451798a + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + uvScale: + typeIdx: 1 + value: 1.000000 + Pass: ! a897088d-8563-486d-ba79-098666bbca21 diff --git a/Spectacles-2-Unitree/Assets/PBR 3.mat.meta b/Spectacles-2-Unitree/Assets/PBR 3.mat.meta new file mode 100644 index 00000000..d588f402 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/PBR 3.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! d40c914d-acdb-40e9-a01d-5e70788cf6c1 + ImporterName: MaterialImporter + PrimaryAsset: ! d40c914d-acdb-40e9-a01d-5e70788cf6c1 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/PBR.mat b/Spectacles-2-Unitree/Assets/PBR.mat new file mode 100644 index 00000000..2e765b48 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/PBR.mat @@ -0,0 +1,72 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 8c0f0f05-c59a-4920-856c-2b1d8cd6471e +- ! + CachedProperties: + - baseTex: + typeIdx: 9 + value: + id: 093e6eaf-54cf-48bd-8d5a-346e6dea3dd7 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + - baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + - baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: FrontAndBack + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: Disabled + Properties: + Port_Default_N204: + typeIdx: 1 + value: 0.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! d331a7aa-ff7b-4e86-ac1e-52679d144976 diff --git a/Spectacles-2-Unitree/Assets/PBR.mat.meta b/Spectacles-2-Unitree/Assets/PBR.mat.meta new file mode 100644 index 00000000..bdf7ab47 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/PBR.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 259698e5-906e-462e-8ee1-16a5404fcf10 + ImporterName: MaterialImporter + PrimaryAsset: ! 259698e5-906e-462e-8ee1-16a5404fcf10 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Pyramid.mesh b/Spectacles-2-Unitree/Assets/Pyramid.mesh new file mode 100644 index 00000000..340c1f38 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Pyramid.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c54299bc527a55e6f03650a888f5ac2e5a64706ec35d6abc583322af7900d21d +size 1932 diff --git a/Spectacles-2-Unitree/Assets/Pyramid.mesh.meta b/Spectacles-2-Unitree/Assets/Pyramid.mesh.meta new file mode 100644 index 00000000..8c81f17b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Pyramid.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 66867a8b-e0de-4ca1-895e-04f0a1fc4b12 + ImporterName: FileMeshImporter + PrimaryAsset: ! 66867a8b-e0de-4ca1-895e-04f0a1fc4b12 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Render Target.renderTarget b/Spectacles-2-Unitree/Assets/Render Target.renderTarget new file mode 100644 index 00000000..e0ffb996 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Render Target.renderTarget @@ -0,0 +1,13 @@ +- ! + PackagePath: "" + UseScreenResolution: true + Resolution: + x: 900 + y: 1600 + AntialiasingMode: Disabled + AntialiasingQuality: Ultra + MSAAStrategy: OnlyWhenRequired + ClearColorOption: BackgroundTexture + ClearColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + InputTexture: ! 996c6f4e-b2ad-4117-9e3e-3db82e6e97f5 + DepthBuffer: Auto diff --git a/Spectacles-2-Unitree/Assets/Render Target.renderTarget.meta b/Spectacles-2-Unitree/Assets/Render Target.renderTarget.meta new file mode 100644 index 00000000..3e13b15c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Render Target.renderTarget.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + RenderTarget: ! 923415f5-4245-4675-ade1-6d69d6d23e71 + ImporterName: RenderTargetImporter + PrimaryAsset: ! 923415f5-4245-4675-ade1-6d69d6d23e71 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/Scene.scene b/Spectacles-2-Unitree/Assets/Scene.scene new file mode 100644 index 00000000..efda8226 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Scene.scene @@ -0,0 +1,11578 @@ +- ! + PackagePath: "" + objects: + - ! 00000000-0000-0065-0000-000000000064 + - ! 0005641c-028d-459a-0000-000000014b4d + - ! ff6c151e-214e-4216-8d76-8d4244e2a6e8 + - ! d387093b-00a9-4e77-827f-d97a6674158b + - ! f2a0b7dd-7855-4692-8183-9d685fa1f688 + - ! e18a374b-a352-425d-8fae-30aa7a0d0f2e + - ! c4c5d432-4097-4f51-857c-52583b0bf890 + - ! acac0dfd-0ae6-4e99-b5db-402200482e8d + - ! 978ad28a-83f6-4e96-9cba-ed38007c8cef + - ! a8731291-452c-41bd-9315-a850e2087380 + - ! 84bafc52-ea01-4f87-a412-867fae0effac + - ! e71cef26-eed8-428f-b446-42c030905fba + layers: ! + userLayers: + - | + id: 2 + name: Layer 1 + color: 0 + + HasOrtho: true + RenderOutput: ! 923415f5-4245-4675-ade1-6d69d6d23e71 + RenderPreviewOutput: ! 923415f5-4245-4675-ade1-6d69d6d23e71 + RenderOverlayOutput: ! 00000000-0000-0000-0000-000000000000 + PhysicsRootWorldSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Camera Object + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 00000000-0000-0065-0000-000000000065 + - ! e5553c8a-0b7e-4ef4-92d9-3e1318fb82c1 +- ! + PrefabRemaps: + [] + Name: Camera + Enabled: true + renderLayer: 1 + MipmapLevel: 0 + RenderOrder: 0 + Size: 20.000000 + Near: 1.000000 + Far: 10000.000000 + Fov: 63.541019 + ClearColor: ! + Mode: None + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + InputTexture: ! 00000000-0000-0000-0000-000000000000 + ClearDepth: ! + Mode: Value + Value: 1.000000 + InputTexture: ! 00000000-0000-0000-0000-000000000000 + Aspect: 1.000000 + CameraType: Perspective + DepthMode: Regular + DeviceProperty: All + AspectPreset: Custom + OitLayers: NoOit + RenderTarget: ! 923415f5-4245-4675-ade1-6d69d6d23e71 + DepthStencilRenderTarget: ! 00000000-0000-0000-0000-000000000000 + MaskTexture: ! 00000000-0000-0000-0000-000000000000 + RayTracing: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Lighting + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 00056e79-b066-62ca-0000-000000001406 + - ! 0005641c-028d-4630-0000-000000014b56 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Light + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 40.000000, y: 85.000000, z: 20.000000} + rotation: {x: 70.000000, y: 10.000000, z: 150.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0005641c-028d-463e-0000-000000014b59 +- ! + PrefabRemaps: + [] + Name: Light Source + Enabled: true + renderLayer: 1835007 + LightType: Directional + Intensity: 1.000000 + CastShadows: false + ShadowDensity: 0.440000 + ShadowBlurRadius: 4.000000 + ShadowTextureSize: 512 + AutoLightSourcePosition: true + AutoShadowFrustumSize: true + AutoShadowFrustumSizeExtend: 2.000000 + ShadowFrustumSize: 30.000000 + ShadowFrustumNearClipPlane: 1.000000 + ShadowFrustumFarClipPlane: 1000.000000 + UseEnvMapFromCamera: false + EnvMapFromCameraMode: Auto + UseEstimation: false + EstimationIntensity: 1.000000 + EstimationSharpness: 1.000000 + EnvMapExposure: 1.000000 + EnvMapRotation: 0.000000 + DiffuseEnvTexture: ! 00000000-0000-0000-0000-000000000000 + SpecularEnvTexture: ! 00000000-0000-0000-0000-000000000000 + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + DynamicEnvInputTexture: ! 00000000-0000-0000-0000-000000000000 + InnerConeAngle: 0.000000 + OuterConeAngle: 45.000000 + DecayType: None + DecayLimit: false + DecayRange: 40.000000 +- ! + PrefabRemaps: + [] + Name: Ambient Light + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 65.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 00056e79-b066-62f1-0000-000000001409 +- ! + PrefabRemaps: + [] + Name: Light Source + Enabled: true + renderLayer: 1835007 + LightType: Ambient + Intensity: 1.000000 + CastShadows: false + ShadowDensity: 1.000000 + ShadowBlurRadius: 0.000000 + ShadowTextureSize: 512 + AutoLightSourcePosition: false + AutoShadowFrustumSize: false + AutoShadowFrustumSizeExtend: 2.000000 + ShadowFrustumSize: 30.000000 + ShadowFrustumNearClipPlane: 1.000000 + ShadowFrustumFarClipPlane: 1000.000000 + UseEnvMapFromCamera: false + EnvMapFromCameraMode: Auto + UseEstimation: false + EstimationIntensity: 1.000000 + EstimationSharpness: 1.000000 + EnvMapExposure: 1.000000 + EnvMapRotation: 0.000000 + DiffuseEnvTexture: ! 2013a19b-93c1-4f21-b7ea-876a33550c7b + SpecularEnvTexture: ! d795fd46-e16b-4cb9-8dfb-4ef227298f7a + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + DynamicEnvInputTexture: ! 00000000-0000-0000-0000-000000000000 + InnerConeAngle: 0.000000 + OuterConeAngle: 45.000000 + DecayType: None + DecayLimit: false + DecayRange: 40.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: "Movement Speed: 1" + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 40 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -12.000000 + bottom: -1.000000 + right: 12.000000 + top: 1.000000 + OverflowVertical: Truncate + OverflowHorizontal: Wrap + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837150, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + skinBones: + ring-2: ! 2b9a5b20-6a89-4fd1-906b-e97f4259712f + pinky-1: ! cf2d9e76-9520-473b-8b9b-68ce183d22ca + pinky-3_end_end_end: ! 1353e5b8-fa96-4236-9812-7fd080b04697 + ring-1: ! 7f36a885-824c-4329-8b11-919324b5c881 + RightHandModel: ! 780f2ffa-fc27-462d-85fd-d216d21e774a + index-3: ! d180e208-2df8-4507-8437-213a1fbd5da6 + wrist_to_ring: ! ebf022e3-0fd7-4f48-b695-a86d4509dbfb + index-1: ! 5bd739b3-039d-4f2e-bc80-61fd158ce1aa + pinky-2: ! 7cb41a88-1dcc-444c-8349-a62b24a8e765 + index-0: ! 77f1a5d3-8594-40b5-8085-79f1d46ddd71 + ring-3_end_end_end: ! 07d5618b-22f9-4656-87fd-b0198fa0aeb6 + RightHandMesh: ! 78778cbc-4979-40f8-b213-f0cab136c8aa + wrist_to_thumb: ! 309860a1-e8fd-49a7-8b08-343086fa08dd + index-3_end_end_end: ! a650b8d7-507a-404b-bfe5-9602e915dae8 + mid-3: ! 6229e282-4449-48f3-8ef5-b90c67ba62fd + index-3_end: ! 20841b1c-e2a6-42cf-9bd0-4fd466eae39c + index-3_end_end: ! ce9ff426-cb39-478d-8067-8dea5e623fc6 + pinky-0: ! 050bbf47-8842-4bc2-abe8-7a28fc5c70ab + pinky-3: ! 29d989ad-aee7-43c3-95e0-02735ba7dd2f + mid-1: ! 9827271d-d758-4004-bc20-03cf1e136d1c + mid-3_end: ! 771da37d-9459-45e0-8f98-9538710f0dc5 + thumb-3_end_end_end: ! 75b74ef8-ecbe-4864-bb69-4c09f5be1606 + ring-0: ! bdf62eca-a7ef-42cb-9f0a-c0db5dd7b3e7 + mid-3_end_end: ! 4696df6f-6058-47bd-8129-72a773a76e75 + mid-3_end_end_end: ! a813a7a6-1822-4279-8348-2c314e6ab150 + RightHandRig: ! a3f4225f-153f-429a-8cd2-aa84d9db52ad + mid-3_end_end_end_end: ! a114455b-6a9f-4990-a3cc-fa88e4a4829a + pinky-3_end: ! 7bb17581-fb13-4afd-9cfb-15d0180ba723 + wrist_to_index: ! dddd8a38-ce19-4f71-8776-9826e6597567 + thumb-3_end_end: ! 9f9bcf5b-6b30-496e-b734-5aa240e969c5 + pinky-3_end_end_end_end: ! 258ea60f-f57b-4a6f-9bd2-98a9b9b438a2 + ring-3_end: ! b297e024-8530-43a8-9271-1d093788af2f + mid-0: ! 0b1bf884-4efd-4b6d-83ac-82540696baec + ring-3_end_end_end_end: ! cb14c3ea-7067-409a-83f3-618dbe55e547 + ring-3_end_end: ! 933ca421-582e-407b-bfc6-206a10cef5f3 + thumb-0: ! 5173a6a1-dbb7-4e12-a52f-a3799a1fea13 + thumb-3_end: ! 9b586360-5bcd-4bd9-9646-5b5ef75f1788 + thumb-1: ! 9f93fce7-edb2-4d42-b09c-939416f49cc0 + ring-3: ! 71450838-42ba-49f9-b33d-58b64a9b54c9 + thumb-2: ! d2c2e4e9-c17c-4ecc-902f-2283f319023b + wrist: ! 826246a6-44ea-4331-85b3-702fa57389fb + thumb-3: ! 1b6d2315-e870-4a05-9817-029318f16b5a + mid-2: ! cfc52ae9-3c49-4c47-8299-82d37cdb1095 + wrist_to_mid: ! a9edf4cd-40ec-4fe4-83b1-2f9439932ef0 + pinky-3_end_end: ! 5da27569-8d52-4e61-a3ab-bb97294d4ce0 + index-3_end_end_end_end: ! 02a86b70-f0f0-41ad-87bd-21c32b796670 + index-2: ! be49fb74-bd52-43d9-8ea6-b79a6965e36d + thumb-3_end_end_end_end: ! 1dc67040-bae9-41b8-960f-b57a94672dfa + wrist_to_pinky: ! cd4ffac9-4a32-4dba-b0a2-db117c38b975 +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000007, y: 11.453500, z: 0.000008} + rotation: {x: 1.584790, y: -17.344000, z: -21.859100} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cf2d9e76-9520-473b-8b9b-68ce183d22ca + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: pinky-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002793, y: 3.304380, z: 0.000052} + rotation: {x: 1.238250, y: -0.000460, z: 0.010196} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 80b63097-b1ef-4467-bdaa-a0a482172316 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3e4c1312-d815-4f3f-9baa-263912eede93 + - ! 98b72d06-2bd6-4e40-87ef-9f46c5cd7cf2 +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703730, z: -0.000001} + rotation: {x: -0.000081, y: -0.000080, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cb14c3ea-7067-409a-83f3-618dbe55e547 + Components: + [] +- ! + PrefabRemaps: + [] + Name: MouseInteractor + Enabled: true + ScriptAsset: ! 52a65860-24de-431c-b6b7-7a6585a77d3c + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + mouseTargetingMode: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 3.000000 + mouseTargetingMode: ! 2.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: mid-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 11.483100, z: -0.000001} + rotation: {x: 1.935390, y: 5.930260, z: 3.282900} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9827271d-d758-4004-bc20-03cf1e136d1c + Components: + [] +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 30.000000, z: 30.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: -4 + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! b3f280b7-37fb-401c-b32a-585e6aa48f44 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "[LEGACY] InteractorLineVisual" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3f2dd09b-edbc-4994-85a8-a366bf77ca69 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 5 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: mid-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 3.166710, z: 0.000002} + rotation: {x: 0.000000, y: 0.000019, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 63462f25-ed20-4163-b0fe-197f3a97f011 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 06ca2280-edb5-4e52-9f1d-f3220aaace7d + Components: + - ! d321ec87-9254-4ac4-83b5-a231ad981be2 + - ! 0e1e8548-eb2b-418e-88ad-04d72612c9cd +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Zero Torque + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! dcde9057-44f4-4eb5-b440-646786b624c5 + - ! ed739757-4dfd-439a-bbd9-199e59f6af80 +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 3.549810, z: -0.000001} + rotation: {x: -0.000000, y: 0.176026, z: -0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 511aa840-3b12-48da-8eb3-6d4a20316ec0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000000} + rotation: {x: -0.000148, y: 0.000148, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 258ea60f-f57b-4a6f-9bd2-98a9b9b438a2 + Components: + [] +- ! + PrefabRemaps: + [] + Name: "[REQUIRED] Core" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ec33c966-ab83-4e2c-9dd1-9abe30a16e47 + - ! 674c121a-0fd0-437d-879c-9ce6b8f935fb + - ! 92490a16-2530-449b-8ee9-f65ff2095dd2 + - ! b27cfdfa-9f62-4102-83e8-b9bedf8c2910 + - ! dd368761-3c9f-4261-afbf-469cb4681d3d + Components: + [] +- ! + PrefabRemaps: + [] + Name: Cylinder + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -0.760220, z: 0.000000} + rotation: {x: 90.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.100000, y: 0.100000, z: 0.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d642e8f4-b3d7-4008-a742-54a1cf702dcf +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Top + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Hand Control Status + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.490000 + bottom: 0.000000 + right: 7.500000 + top: 0.000000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 401e73dc-9551-455a-b594-3b4bda60750c + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218160, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! dcde9057-44f4-4eb5-b440-646786b624c5 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: index-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.009104, y: 2.837160, z: -0.000745} + rotation: {x: -88.447800, y: 0.630570, z: -5.443090} + scale: {x: 1.000000, y: 1.000000, z: 0.999998} + hasSegmentScaleCompensation: false + Children: + - ! 7d7953db-e981-48fc-b8af-77040f8455cd + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.122509, y: 3.547690, z: -0.000037} + rotation: {x: -119.537003, y: -11.132400, z: -6.501390} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9b586360-5bcd-4bd9-9646-5b5ef75f1788 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 11.824800, z: 0.000000} + rotation: {x: -4.158420, y: -5.389360, z: 8.544330} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7e117ed6-6fbe-4edb-941c-63a96b698e39 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0e45cd00-9e1f-43e0-8111-a4c4cfefae61 + - ! 4ce3b575-cccf-4cf1-8830-9400dce4478a +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549800, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 81a063f9-3e18-467f-b8f4-3a3af1063337 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: mid-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002904, y: 3.650310, z: -0.000110} + rotation: {x: -2.676430, y: -0.000566, z: -0.015133} + scale: {x: 0.999999, y: 0.999999, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 72ba5fa0-3395-495c-8d87-22bc85f50855 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! a047e555-f98b-4da9-af51-90992dd2fe13 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: index-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837150, z: -0.000002} + rotation: {x: -0.000039, y: -0.000040, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ce9ff426-cb39-478d-8067-8dea5e623fc6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 6feb078d-f402-4571-b43d-6190639f32a5 + _offIcon: ! d57003c8-6698-4b62-a29b-8c04ec378351 + _isToggledOn: false + editEventCallbacks: true + customFunctionForOnStateChanged: ! 968c4bf8-5a61-4ef0-b0d6-d05d415cf337 + onStateChangedFunctionNames: ! + - toggleJoystick + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 38ccbdc1-6e41-4879-ac50-2004a58aa2ca + - ! bf393b64-9dc9-40e5-ab5a-3ca3a03520ec +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! cc435628-7237-4d1c-814c-b9ba17297299 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! d40c914d-acdb-40e9-a01d-5e70788cf6c1 + Mesh: ! b6e0f29f-f6a2-4cab-97c7-b0b7475b0cdc + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: HandInteractor + Enabled: true + ScriptAsset: ! b5f70408-5d57-4afd-996b-8f26ae0ddcb2 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + raycastAlgorithm: true + forcePokeOnNonDominantPalmProximity: true + directColliderEnterRadius: true + directColliderExitRadius: true + directDragThreshold: true + filterBasedOnIntent: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 40.000000 + handType: left + raycastAlgorithm: Proxy + forcePokeOnNonDominantPalmProximity: false + directColliderEnterRadius: ! 1.000000 + directColliderExitRadius: 1.500000 + directDragThreshold: ! 3.000000 + filterBasedOnIntent: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! cc435628-7237-4d1c-814c-b9ba17297299 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 48b3f9a1-7c28-454e-baf2-f3a3b68db600 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! eacf8e40-e953-4ffc-bd26-bff04f254c11 + Mesh: ! 00000000-0000-0000-0000-000000000000 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: true + customFunctionForOnButtonPinched: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + onButtonPinchedFunctionNames: ! + - StandUp + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 0ad2a884-4ade-40e9-bf03-0d8820ed43ce + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 632b18e6-6d05-440d-a0a1-776f550490b8 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + stepBehavior: true + _stepSize: true + toggleDuration: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: ! -4.000000 + _maxValue: ! 4.000000 + startValue: ! 1.000000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! 868eb3d3-a88e-4554-9f72-dd74fbca5b57 + sliderMax: ! 9858857a-ac1c-4288-a641-24504e767312 + _sliderKnob: ! d99ee51e-bced-429c-9b7c-b05cbd89762d + editEventCallbacks: true + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 788f9d33-db4a-46ec-aceb-4bf2c2834849 + onValueUpdateFunctionNames: ! + - updateRotationSpeed + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.008174, y: 2.218150, z: 0.000077} + rotation: {x: 84.965103, y: 6.336930, z: -173.675003} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7bb17581-fb13-4afd-9cfb-15d0180ba723 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: "Rotation Speed: 1" + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 40 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -12.000000 + bottom: -1.000000 + right: 12.000000 + top: 1.000000 + OverflowVertical: Truncate + OverflowHorizontal: Wrap + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleWaveHand + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.406799, y: 11.969130, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! aa8865d4-ef24-472e-881a-72fd5db06e6a + - ! 2f560299-7197-48eb-80ed-189f279cc540 + Components: + - ! 42b826c8-3a14-4d3c-8a71-f67458d6c44b + - ! 4febef3a-10f6-4fe7-86a5-dfcba1dc4c88 + - ! a8e56dad-5245-427b-8445-9a496e70581a + - ! 356b792f-1193-4802-8ca4-3e1bb0c884df + - ! c5bdb606-a8c7-4e73-b37f-4200f5051e28 + - ! c67a6cbe-6dbb-4508-a24c-4e6208d17668 + - ! 4b976c50-ebc0-4292-ab07-baf2dddbb6fa + - ! 4d50350e-23b3-4e71-a605-3bd10275c5bb + - ! edea7bb2-d448-492a-b2c4-2e8917f55eda +- ! + PrefabRemaps: + [] + Name: ring-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.001204, y: 3.309390, z: 0.000044} + rotation: {x: 0.145073, y: -0.000050, z: -0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 71450838-42ba-49f9-b33d-58b64a9b54c9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: wrist_to_ring + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 0.192331, y: 6.274080, z: -6.174470} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1b99283b-6388-4d39-a423-7be97ff2f32d + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! ed8b9145-74d6-4edf-bfc1-1e72eb21872f + knobObject: ! d99ee51e-bced-429c-9b7c-b05cbd89762d + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 062f45b9-c39d-4482-8ed1-ec8082a92d9a + - ! 80eab401-1efa-4a10-9577-075bd52ec6f9 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! fd47002c-4bb0-4e31-a31c-11f9c3e29dd6 + - ! 33efc72e-5bdc-470c-bce3-d5649778db6d +- ! + PrefabRemaps: + [] + Name: wrist_to_thumb + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 27.434401, y: -41.097198, z: -59.864601} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5173a6a1-dbb7-4e12-a52f-a3799a1fea13 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 09a32fc9-c161-4ab3-abc8-692a5a11d528 + - ! edffa322-6ffa-42f4-97a1-2628efe52119 +- ! + PrefabRemaps: + [] + Name: LeftHandMesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000001, z: -0.000001} + rotation: {x: -90.000000, y: -0.000000, z: -0.000000} + scale: {x: 0.999999, y: 0.999999, z: 0.999999} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9f2b3f06-77a1-4255-830d-ad50801287bd +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + skinBones: + mid-3_end_end_end_end: ! f9d02a8c-71a4-411f-a21e-a7b3329c62d6 + LeftHandRig: ! 531e560d-ffa5-433d-8224-6c252eb6a9bb + ring-2: ! 74914d99-aae6-4a1c-b4ec-d949b2a9253c + LeftHandModel: ! 6f50df52-5045-47a8-839c-bbd20bc99bb5 + pinky-1: ! 05ab905d-7685-4e29-9db5-9042078af2d6 + pinky-3_end_end_end: ! dcf6aa57-0caa-4b44-a73b-2e33da4f1428 + ring-1: ! 7e117ed6-6fbe-4edb-941c-63a96b698e39 + index-3: ! 1ab3fbdf-e28e-45a8-943d-76938ac530b4 + wrist_to_ring: ! 2d1055e9-e5d5-49f7-8955-de8f46da0f6a + index-1: ! a72bed4c-f7e3-4691-93f3-d06d66d75dd0 + pinky-2: ! 80b63097-b1ef-4467-bdaa-a0a482172316 + index-0: ! e9344e0a-57f1-4226-9a18-a84052078b1b + LeftHandMesh: ! 31df5cf9-9877-4359-9161-92964449a557 + wrist_to_pinky: ! eb361989-1d4a-41f7-a205-235ce6f4e3b9 + wrist_to_thumb: ! 8d12c0a3-c20a-4dd4-b82e-4aa3489ca78f + index-3_end_end_end: ! f3c8087e-8414-4601-833d-96cf682f94d3 + mid-3: ! 72ba5fa0-3395-495c-8d87-22bc85f50855 + index-3_end: ! 7d7953db-e981-48fc-b8af-77040f8455cd + index-3_end_end: ! a53cac7a-4a63-4351-a6da-b868ffac9c0a + pinky-0: ! 50f48cde-a492-4587-8b76-26cff1adec60 + pinky-3: ! cea83226-8c66-44d7-895a-2480d9cc1c35 + mid-1: ! 850751ef-604a-41bc-a846-0701b76493b1 + thumb-3_end_end_end: ! 11e7d38c-6fbb-4f05-b89d-a44a9ae8336a + mid-3_end: ! 0ff1487a-e8d6-4aaf-9067-a61f2fa4c77e + mid-3_end_end: ! 63462f25-ed20-4163-b0fe-197f3a97f011 + ring-0: ! 1b99283b-6388-4d39-a423-7be97ff2f32d + pinky-3_end: ! b2d002f5-2b50-4f66-8c0d-93d5dba56556 + wrist_to_index: ! f154d1c1-2595-4578-acc2-6872637af31a + thumb-3_end_end: ! d9e2d13e-9f8c-4798-83f1-83fed0cdb757 + mid-0: ! 711f9787-d880-4475-8f0a-0cf6b2492a6b + ring-3_end_end_end_end: ! 27db1592-a7a2-4e26-b369-afc71511fb9e + ring-3_end: ! e8194f5f-aab4-4dff-8e59-92d2aaf9c042 + pinky-3_end_end_end_end: ! 162925ed-6a4c-401a-a521-86902851061f + mid-3_end_end_end: ! 8dbfcb2b-c189-46eb-960f-45c157d8484a + thumb-2: ! a3ea66da-0ca8-4958-8d69-6f5045fa706c + ring-3: ! 4971d6a8-a5fe-431e-b815-07883d1bd9b4 + ring-3_end_end: ! 6b078b1c-99b5-4d40-81a0-46d9ea3bb1e3 + thumb-0: ! 6480de4a-e83a-4ebf-919e-d73bc4fd2eee + thumb-3_end: ! 411b54bc-1db6-4fe9-908b-1f4f0a372ce0 + thumb-1: ! 8e8470af-1ad4-4317-96d6-2bd90d653cbb + wrist: ! 821f1d70-8d79-44db-bc8b-fabf613822c0 + thumb-3: ! 60037818-559f-4345-ac44-f7c5dfc86f3c + mid-2: ! 1f2cf37f-fd91-492c-a63b-884a08cd9215 + wrist_to_mid: ! 86412b42-c0cf-4fc3-a8a2-fe90221abc59 + index-3_end_end_end_end: ! 691be975-a6fd-42b9-a51a-bcdeebedb743 + index-2: ! 40a2ea5b-f164-48c5-8ffc-c3dfcacc6d91 + ring-3_end_end_end: ! 66d9ff94-deb4-4e42-bc41-0182a168c169 + thumb-3_end_end_end_end: ! 511aa840-3b12-48da-8eb3-6d4a20316ec0 + pinky-3_end_end: ! 3f428eaa-6547-40ec-865e-50071201a35e +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! a047e555-f98b-4da9-af51-90992dd2fe13 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.000000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 019d2db1-8194-4640-8ede-4ba7b2dff2ed +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Wave Hand + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 81a063f9-3e18-467f-b8f4-3a3af1063337 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 4c121113-c3c2-4ff8-ae97-2e9a47526b3d + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Logs + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -18.290873, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5c1ed1b0-5ff2-4ae1-b238-a1986f98e13b +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractorLineVisual + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 52a3f271-30a0-4e9c-9f47-c80145bab1b2 +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218160, z: -0.000003} + rotation: {x: 0.000050, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! dcf6aa57-0caa-4b44-a73b-2e33da4f1428 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 5 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 09a32fc9-c161-4ab3-abc8-692a5a11d528 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: index-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.008350, y: 3.222920, z: -0.000875} + rotation: {x: -0.656684, y: 0.000193, z: -0.059364} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1ab3fbdf-e28e-45a8-943d-76938ac530b4 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: -0.000001} + rotation: {x: -0.000121, y: 23.491301, z: -0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d9e2d13e-9f8c-4798-83f1-83fed0cdb757 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: true + customFunctionForOnButtonPinched: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + onButtonPinchedFunctionNames: ! + - ShakeHand + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 6bb4dde2-84c0-44f3-913e-a23777663c7b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: true + customFunctionForOnButtonPinched: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + onButtonPinchedFunctionNames: ! + - Quit + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a28bd7b9-95bb-4620-8ada-11042270218b + - ! 460f5657-1d0b-461d-a2f8-e98899b9b38c +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Pyramid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 90.000000, y: 0.000000, z: 0.000000} + scale: {x: 40.000000, y: 40.000000, z: 40.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9d55ef31-fd85-4d6f-8df4-54699827b626 +- ! + PrefabRemaps: + [] + Name: HandVisuals + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b55b19ef-83c9-4922-aaea-ded86b65a663 + - ! abb42942-9861-46af-946b-236bb527035f + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Sit Down + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: mid-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000001} + rotation: {x: 0.000103, y: 0.000102, z: 0.000010} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a813a7a6-1822-4279-8348-2c314e6ab150 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0a7e8dd9-b679-4f8d-92a4-1c5d1ad5c9da + - ! 99d3aa5d-9a49-472e-9f48-d29dc003c286 +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.000000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2a1a3a7f-745d-4ab5-965d-e998b794c193 +- ! + PrefabRemaps: + [] + Name: ToggleJoystick + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -7.380700, y: -8.216920, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! fb7f888e-eec3-420a-810c-78b850b10d8f + - ! 6feb078d-f402-4571-b43d-6190639f32a5 + - ! d57003c8-6698-4b62-a29b-8c04ec378351 + Components: + - ! e1782747-92cb-44d1-9101-0e9a9ab8696f + - ! 78cccb70-ee47-4e94-abec-128c2128ee8a + - ! 0f4f5b13-10b7-444c-a741-228e705fea39 + - ! 20f6981f-ecab-47a3-a2d8-cff1906b5585 + - ! 49bcc4c0-efed-4ddd-9fc0-392080ef64aa + - ! bd29209e-c7d8-4a7e-a77f-d4e52cb93a6b + - ! 23320378-2a70-4f00-a9fd-ea52785bc3e6 + - ! 0c7297e0-c130-4b84-be18-cc137bb5cd47 + - ! fa528bf1-6a6c-4f21-945f-159def2281f3 +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 94b108e4-4ec0-4f3d-9637-cbf5a66888e2 + - ! 1040ec0a-89a1-40e0-bbf1-f22974a27c49 + Components: + - ! 806b879d-3240-46ae-ab72-f5b31d6b1570 +- ! + PrefabRemaps: + [] + Name: ring-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.001444, y: 2.703710, z: 0.000020} + rotation: {x: 88.973000, y: 4.975880, z: 4.973150} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e8194f5f-aab4-4dff-8e59-92d2aaf9c042 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! b3f280b7-37fb-401c-b32a-585e6aa48f44 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: true + customFunctionForOnButtonPinched: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + onButtonPinchedFunctionNames: ! + - WaveHand + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: HandTrackingStatus + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -9.004718, z: 2.187569} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 15a700df-0da4-4bf4-9405-749b0c3f3ab9 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Radius: 6.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: pinky-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000004, y: 11.453500, z: 0.000011} + rotation: {x: -10.793700, y: -13.884800, z: 21.429600} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 05ab905d-7685-4e29-9db5-9042078af2d6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000009, y: 4.399180, z: 0.000004} + rotation: {x: 1.097870, y: 44.900902, z: 1.556590} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9f93fce7-edb2-4d42-b09c-939416f49cc0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 7 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: World Query Disabled + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 28 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 0.984314, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractorLineVisual + Enabled: true + ScriptAsset: ! a6105daf-0f11-45a0-8684-102e44534dbb + ScriptInputsDefault: + _beginColor: true + _endColor: true + lineWidth: true + lineLength: true + lineStyle: true + shouldStick: true + _interactor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + lineMaterial: ! 9fc7f9a1-6d20-4e6a-9c4a-268d15228b42 + _beginColor: ! {x: 1.000000, y: 1.000000, z: 0.000000} + _endColor: ! {x: 1.000000, y: 1.000000, z: 0.000000} + lineWidth: 0.500000 + lineLength: ! 160.000000 + lineStyle: ! 2.000000 + shouldStick: true + _interactor: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: LeftHandRig + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: 0.000000, z: 0.000000} + scale: {x: 0.999999, y: 0.999999, z: 0.999999} + hasSegmentScaleCompensation: false + Children: + - ! 821f1d70-8d79-44db-bc8b-fabf613822c0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a004af16-4f4c-4946-bce2-40a1204ea799 + Components: + - ! 934bd16f-6484-4ebb-9eaf-9bc030e387b2 +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 401e73dc-9551-455a-b594-3b4bda60750c + - ! ee6dba04-bd0c-4068-92d3-5ea9b05dd2e7 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 6 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: | + Joystick Enabled + + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 28 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 0.274510, y: 0.274510, z: 0.274510, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 784b08c7-c4dd-4b7e-b6d2-bc9f660dc068 + - ! febd1a2b-abb0-4020-ab59-da7642ee6236 +- ! + PrefabRemaps: + [] + Name: HandInteractor + Enabled: true + ScriptAsset: ! b5f70408-5d57-4afd-996b-8f26ae0ddcb2 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + handType: true + raycastAlgorithm: true + forcePokeOnNonDominantPalmProximity: true + directColliderEnterRadius: true + directColliderExitRadius: true + directDragThreshold: true + filterBasedOnIntent: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 40.000000 + handType: right + raycastAlgorithm: Proxy + forcePokeOnNonDominantPalmProximity: false + directColliderEnterRadius: ! 1.000000 + directColliderExitRadius: 1.500000 + directDragThreshold: ! 3.000000 + filterBasedOnIntent: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleSitDown + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -7.380723, y: 7.969129, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 65a5cc2b-1732-4bfb-8329-cd696b9d9790 + - ! 4293e56b-500a-42fb-888b-a2b40f472141 + Components: + - ! 5ac56aef-627d-414a-b9a8-3d2ad2d86e7e + - ! 79796030-53cb-4be3-adc7-884f9ea5c2e6 + - ! f9655933-40b9-41a3-aff3-4c922e595b4e + - ! 2e2f73ad-9d78-4091-a027-d811133bc102 + - ! 5b7851de-0e24-4b2a-a166-0b397b1727d4 + - ! 5ec310aa-7653-4e69-bc53-082b3dc7043a + - ! 8b24376f-30a4-42a7-b86d-2c0504b67a9c + - ! 9f1c29b8-106d-4bab-b503-010823c8d2da + - ! d17185fd-2854-4cb6-8eac-99072cea9e99 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 5a57ee47-87c7-4a79-ba50-970c9cba9a30 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: index-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.017495, y: 3.481400, z: 0.000180} + rotation: {x: -8.118590, y: -0.000575, z: 0.000047} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! be49fb74-bd52-43d9-8ea6-b79a6965e36d + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Top + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: "Logs will go here... " + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 40 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -12.000000 + bottom: -7.000000 + right: 12.000000 + top: 2.250000 + OverflowVertical: Truncate + OverflowHorizontal: Wrap + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218170, z: 0.000000} + rotation: {x: 0.000050, y: -0.000056, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1353e5b8-fa96-4236-9812-7fd080b04697 + Components: + [] +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7b9fb5ef-6166-490c-9de1-68dcd5c5005c + Components: + - ! 18b749e0-b955-48f1-ae8d-4617f4dfba79 + - ! 7e586840-b53c-4da4-8abd-2b2593f6e0b2 + - ! a954891a-879b-4e43-9344-c244f52f98b2 + - ! 640ae996-bd1e-4d95-a126-21df05f0677b + - ! ccabf131-4f86-45bc-b0ec-4246397d2c30 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! cf6e365c-8be7-439f-b295-cf8f1aea0fe6 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 0e45cd00-9e1f-43e0-8111-a4c4cfefae61 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.122141, y: 3.547710, z: 0.009542} + rotation: {x: -59.788200, y: 5.800900, z: 165.218002} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 411b54bc-1db6-4fe9-908b-1f4f0a372ce0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! cd2fc167-31d8-4f47-b7df-30e173e8e852 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 76b522ae-e38c-4432-ada0-59354b4b58d9 + - ! bec133a6-8f51-4386-8fe5-4ff02c361db7 +- ! + PrefabRemaps: + [] + Name: mid-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.010478, y: 3.166710, z: 0.000270} + rotation: {x: -86.458298, y: -5.335180, z: -5.675670} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 771da37d-9459-45e0-8f98-9538710f0dc5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleStandUp + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -7.380723, y: 11.969130, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! b3e5c45c-126b-460e-a068-625f8d6f5d83 + - ! 75f06a71-2897-421b-ad76-29a8983210d0 + Components: + - ! 59b4b9db-b388-40cc-b917-8831b4479e46 + - ! 4f040af0-c65d-44f6-a600-7c34cece91e0 + - ! ad791e28-7e1c-4418-b0b5-75de52906044 + - ! bd0af0e9-8632-40b6-ab30-5a09f29012e9 + - ! 289e5384-4ac5-4dd5-abdf-d126034b8f71 + - ! 6847daa7-4f9b-4a9e-a46f-ff5c11989ce3 + - ! bbf49faa-a1c9-4731-919c-58a06ded75d5 + - ! 24020463-3f56-4b00-8f14-14defe6fb59c + - ! 41fadbbc-bba9-49bd-90de-5d852d4e2d34 +- ! + PrefabRemaps: + [] + Name: mid-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166710, z: -0.000003} + rotation: {x: 0.000035, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8dbfcb2b-c189-46eb-960f-45c157d8484a + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.100000 + meshVisuals: ! + - ! 47b59699-6efd-407b-af2a-b65f8d527973 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000005, y: 4.399180, z: -0.000010} + rotation: {x: -1.007350, y: 44.900501, z: -1.551620} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8e8470af-1ad4-4317-96d6-2bd90d653cbb + Components: + [] +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! 1a07bc1a-e0ce-487c-b052-89f2fc912535 + knobObject: ! 5e2343fe-d615-4c5a-a44c-fb83d8b60caf + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! cf6e365c-8be7-439f-b295-cf8f1aea0fe6 + - ! 3a192c57-3c06-4cfa-baa3-3a896bb611e1 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703710, z: 0.000001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 27db1592-a7a2-4e26-b369-afc71511fb9e + Components: + [] +- ! + PrefabRemaps: + [] + Name: LeftHandInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 22e40d6c-4405-4a2f-9eda-9f5e0d425a75 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: true + customFunctionForOnButtonPinched: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + onButtonPinchedFunctionNames: ! + - WaveHandTurn + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 6bb4dde2-84c0-44f3-913e-a23777663c7b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837170, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 934bd16f-6484-4ebb-9eaf-9bc030e387b2 + useGlowMesh: true + glowRenderMeshVisual: ! 83472e55-1d64-4ec2-ac60-06c87a08281a + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000025} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 66d9ff94-deb4-4e42-bc41-0182a168c169 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Stand Up + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + stepBehavior: true + _stepSize: true + toggleDuration: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: -2.500000 + _maxValue: 3.800000 + startValue: ! 1.000000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! 94b108e4-4ec0-4f3d-9637-cbf5a66888e2 + sliderMax: ! 1040ec0a-89a1-40e0-bbf1-f22974a27c49 + _sliderKnob: ! 5e2343fe-d615-4c5a-a44c-fb83d8b60caf + editEventCallbacks: true + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 788f9d33-db4a-46ec-aceb-4bf2c2834849 + onValueUpdateFunctionNames: ! + - updateMoveSpeed + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! e3ce5efc-36ab-46d8-988e-4b13c8fd50d7 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: LeftHandModel + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 531e560d-ffa5-433d-8224-6c252eb6a9bb + - ! 31df5cf9-9877-4359-9161-92964449a557 + Components: + - ! 32346fd9-8168-4666-87d9-78060a1ebed2 +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7438ea6d-1790-4ec2-a664-50cc9f0f4175 + - ! 550f36e7-5958-405e-9b74-e2695cd8d339 +- ! + PrefabRemaps: + [] + Name: mid-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 11.483000, z: -0.000001} + rotation: {x: 1.265800, y: 6.113890, z: -3.274570} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 850751ef-604a-41bc-a846-0701b76493b1 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.001444, y: 2.703720, z: 0.000001} + rotation: {x: 88.027298, y: -5.497920, z: 5.333360} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b297e024-8530-43a8-9271-1d093788af2f + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.010479, y: 3.166700, z: 0.000210} + rotation: {x: -87.477303, y: 5.565590, z: -5.001890} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0ff1487a-e8d6-4aaf-9067-a61f2fa4c77e + Components: + [] +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: InteractorCursors + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! fc6a94ee-23d6-4637-a73b-30ac1b571eca +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 81c9488e-e654-4cc0-a3d7-22bd36378150 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ring-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.001204, y: 3.309410, z: 0.000061} + rotation: {x: 0.145060, y: 0.000496, z: 0.002001} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4971d6a8-a5fe-431e-b815-07883d1bd9b4 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549800, z: -0.000002} + rotation: {x: 0.000000, y: 0.000028, z: 0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1dc67040-bae9-41b8-960f-b57a94672dfa + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 401e73dc-9551-455a-b594-3b4bda60750c + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f4029e40-76bf-4921-b70b-e4ce76a7bac1 + - ! 6b376b45-f8ef-456d-b8cd-673410d85157 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleWaveHandTurn + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.406799, y: 7.969129, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! fe19f00e-ce61-4a1b-853d-7f74a4ef5f43 + - ! 91b08be7-2e80-48cf-9291-a18f3740cb7a + Components: + - ! 72ee1fc0-ca21-4296-8206-2895421f7de7 + - ! ba897858-966a-4ae4-aa02-edf2b06090f7 + - ! ff425cfc-c998-4146-9026-3d99ebe6dc79 + - ! f9aa6167-feb9-4739-b9f2-fb35e0f02014 + - ! ba528c32-9d21-4502-a71c-638bc92d72a4 + - ! 32e07a90-4812-4d0c-900f-22ef1c50ad07 + - ! 28507168-9515-441f-961f-25dd62bdcfc7 + - ! 68227795-880b-417f-a5cf-5a619aa035bb + - ! 20824460-067b-4f96-be7d-967f63b76842 +- ! + PrefabRemaps: + [] + Name: mid-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000002} + rotation: {x: -0.000207, y: -0.000205, z: -0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4696df6f-6058-47bd-8129-72a773a76e75 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: index-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000003, y: 11.787900, z: -0.000003} + rotation: {x: 9.215320, y: 17.707500, z: 16.168699} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5bd739b3-039d-4f2e-bc80-61fd158ce1aa + Components: + [] +- ! + PrefabRemaps: + [] + Name: RightHandModel + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a3f4225f-153f-429a-8cd2-aa84d9db52ad + - ! 78778cbc-4979-40f8-b213-f0cab136c8aa + Components: + - ! 03f7bc43-5636-41fb-a9fc-1dbf378a0dd5 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: RightHandMesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! de62f5f3-2f86-4c98-b357-a44d603496f1 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: RobotDecoyController + Enabled: true + ScriptAsset: ! ed8de5e7-d591-4775-8fe0-e8285af6851a + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + robotDecoy: ! e71cef26-eed8-428f-b446-42c030905fba + mainCamera: ! 00000000-0000-0065-0000-000000000065 + toggleButton: ! 7d029e39-1a82-4f11-a417-8ad837ebbd4d + connectToRobot: true + moveSpeedTitle: ! 019d2db1-8194-4640-8ede-4ba7b2dff2ed + rotationSpeedTitle: ! 2a1a3a7f-745d-4ab5-965d-e998b794c193 + coordinationClient: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 81a063f9-3e18-467f-b8f4-3a3af1063337 + - ! a8f0df4c-baa3-4bdc-a578-3cb1d0c792e4 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f6c6acc9-65a3-4daf-a525-5d8123292819 + Components: + - ! 452a2425-2df7-40e3-85fa-867870555398 +- ! + PrefabRemaps: + [] + Name: pinky-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000001} + rotation: {x: 0.000101, y: -0.000115, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5da27569-8d52-4e61-a3ab-bb97294d4ce0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: High Stand + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: MovementSpeed + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.790000, y: -14.707773, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.600000, y: 0.600000, z: 0.600000} + hasSegmentScaleCompensation: false + Children: + - ! 33eb29b1-27ea-4816-8f9c-9a24d93610f9 + - ! b6970f50-0502-4f1e-adcd-239cc7b20506 + - ! 8186bd87-72a6-458d-af21-4a468e3de265 + - ! 5e2343fe-d615-4c5a-a44c-fb83d8b60caf + - ! 49385e6e-1ce4-41bf-9992-21641cab1e4f + Components: + - ! cf68964f-95f7-4acd-829c-0320a6b61935 + - ! 6d26738a-6837-4d27-84c4-9cfa3d9cd4c1 + - ! 6523a018-8cba-448a-9746-57d5e5eb9285 + - ! 04b93546-517c-4bda-a880-70056e73f152 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! dcde9057-44f4-4eb5-b440-646786b624c5 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.005382, y: 2.681950, z: -0.000140} + rotation: {x: -5.666390, y: -0.000025, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 29d989ad-aee7-43c3-95e0-02735ba7dd2f + Components: + [] +- ! + PrefabRemaps: + [] + Name: ToggleWorldQuery + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.549918, y: -8.216920, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 54ac8c59-fad7-4aea-a56a-0a2cb3382074 + - ! 8b5cb14f-96c5-45d9-b2c1-3ebdbfbad7c9 + - ! fddda9e4-571b-4002-b25f-fbbd75ac5b15 + Components: + - ! a0ccd4f8-b81a-416f-9b2d-a12bb004fde3 + - ! 32bd3841-eba4-4a42-8c7b-43a3bdb404dd + - ! 67ed4e43-e34c-4342-b3c1-7088b65d0a1c + - ! d7124ec5-30a4-4184-afcc-e764860c6eee + - ! 15ba581f-c8e9-4b9c-a857-91e83a21c452 + - ! daf8dd01-905e-402c-ab8f-47667ab9c623 + - ! bdad316c-315e-4a24-b345-060b47227095 + - ! 75c89fbc-ed95-4f95-b990-7e75760d942a + - ! 87dbbd4a-aef3-4925-8d40-1abae102c105 +- ! + PrefabRemaps: + [] + Name: index-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837170, z: 0.000001} + rotation: {x: -0.000113, y: -0.000000, z: -0.000031} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a53cac7a-4a63-4351-a6da-b868ffac9c0a + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002705, y: 3.534420, z: -0.000008} + rotation: {x: 1.238040, y: -0.000494, z: 0.017060} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 74914d99-aae6-4a1c-b4ec-d949b2a9253c + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: ring-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002705, y: 3.534420, z: 0.000029} + rotation: {x: 1.238160, y: -0.000262, z: -0.000026} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2b9a5b20-6a89-4fd1-906b-e97f4259712f + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: pinky-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.005385, y: 2.681950, z: -0.000095} + rotation: {x: -5.666190, y: -0.004601, z: -0.046291} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cea83226-8c66-44d7-895a-2480d9cc1c35 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleShakeHand + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.406799, y: 3.969129, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 793f2b53-e65a-4b54-9ee7-e8cec872cf0b + - ! 5818d12d-54e0-4d23-a654-01612b7d0334 + Components: + - ! e65f2278-a38c-4c85-89f3-8dea992b9cb1 + - ! 7ea9943a-b2bd-427f-bf09-75acc0027983 + - ! aa8a869b-0e4f-4900-887a-74922e45d259 + - ! 328afe2c-0dcd-4ba1-bc04-5df2ecd8d04d + - ! f3ab4bf0-0769-4a4a-93e7-7e4d710cfcb7 + - ! 368f4c18-aa50-46f6-8377-1bc58218a631 + - ! b616cc4c-4fcd-466d-b4cb-7ff5675109d0 + - ! 41992fb4-2d3b-4c74-8f02-6176a3ad50d1 + - ! 1e665b87-3779-4bd6-8974-3187c241bfd2 +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1a07bc1a-e0ce-487c-b052-89f2fc912535 + - ! d24d6552-cebc-4c3d-99b5-968f655de32c +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleStopDamp + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.406799, y: -0.030871, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! d64589d5-72b9-4b77-9039-59635abd92a8 + - ! 4867d241-3b07-4c9a-98fc-b273341d72a9 + Components: + - ! 3225530e-71f2-40b0-a713-b2c0e8a69a01 + - ! ea5a3f65-a966-4c70-9270-f94c188391df + - ! ace0df05-0665-4cff-878b-9a1e4378ff4c + - ! fa292d42-2152-4906-9939-9413efd723d7 + - ! 73b5275b-3155-4db8-b642-0aa1a77dbafe + - ! 24bd48ac-63d9-45f1-b792-68969c2c65aa + - ! b5a6ac6c-be3c-441e-b034-8414fe02a95b + - ! 86779282-c48e-4880-804e-4794b0d7ba97 + - ! f372fdfa-88ed-4be7-aef4-fe588f505b9b +- ! + PrefabRemaps: + [] + Name: wrist + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000006, y: -0.000002, z: -0.000000} + rotation: {x: 157.399994, y: -83.865097, z: 115.817001} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8d12c0a3-c20a-4dd4-b82e-4aa3489ca78f + - ! f154d1c1-2595-4578-acc2-6872637af31a + - ! 86412b42-c0cf-4fc3-a8a2-fe90221abc59 + - ! 2d1055e9-e5d5-49f7-8955-de8f46da0f6a + - ! eb361989-1d4a-41f7-a205-235ce6f4e3b9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000006, y: -0.000000, z: -0.000002} + rotation: {x: -176.654007, y: -5.519800, z: -92.680099} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 309860a1-e8fd-49a7-8b08-343086fa08dd + - ! dddd8a38-ce19-4f71-8776-9826e6597567 + - ! a9edf4cd-40ec-4fe4-83b1-2f9439932ef0 + - ! ebf022e3-0fd7-4f48-b695-a86d4509dbfb + - ! cd4ffac9-4a32-4dba-b0a2-db117c38b975 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: "[PlaceholderJoystick]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: mid-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.013405, y: 3.861870, z: 0.000233} + rotation: {x: -4.535240, y: -0.003456, z: -0.026343} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1f2cf37f-fd91-492c-a63b-884a08cd9215 + Components: + [] +- ! + PrefabRemaps: + [] + Name: TempLog + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -5.000000, y: -28.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c73f87d7-e7e0-4893-8671-758129235afc +- ! + PrefabRemaps: + [] + Name: wrist_to_mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: -0.519104, y: -5.758140, z: 5.627940} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 711f9787-d880-4475-8f0a-0cf6b2492a6b + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: 4 + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: true + customFunctionForOnButtonPinched: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + onButtonPinchedFunctionNames: ! + - StopDamp + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f90a02bd-fe5f-4484-b58c-4524478d1b12 + Components: + - ! a0d4ebb2-2c68-4481-9bf7-efe425aef596 + - ! 0ec58613-5aaf-4fd3-81a7-d98abde63ad9 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Quit + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3f955f91-5659-4ca4-ae29-ea3be7cb2753 + - ! d2e1c0d9-e127-4860-8525-83578e4d77f8 +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleZeroTorque + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -7.380723, y: -4.030871, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! c8fc253e-5082-4f6b-a0fc-f48f3f853164 + - ! a6dfa9b3-a7fb-4daa-874c-554e9630498a + Components: + - ! 171eef65-72d2-48a1-8aba-c206fefdc334 + - ! 24cb1b33-04c2-4e8e-8550-b4867b53b35c + - ! 99a0eeac-bad5-481e-afd9-0b2196e8ae44 + - ! 41927d3b-bb7e-4caf-83d3-f5f9a766040e + - ! bd3a50e2-d015-46d5-9362-07d9d27eb144 + - ! b42d50a4-40d0-4397-911e-5cdf16044f1d + - ! 177b140d-3ce2-4aa0-8686-f673db48cb11 + - ! a2c0e299-1df9-4ee2-8a0b-2290102f4c68 + - ! 36f98281-44d0-4079-891d-92b5edbd97e6 +- ! + PrefabRemaps: + [] + Name: wrist_to_thumb + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 26.024099, y: -37.686901, z: 24.403400} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6480de4a-e83a-4ebf-919e-d73bc4fd2eee + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166710, z: -0.000003} + rotation: {x: -180.000000, y: -0.000000, z: -180.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f9d02a8c-71a4-411f-a21e-a7b3329c62d6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.067402, y: 3.518870, z: -0.005366} + rotation: {x: 14.034800, y: -0.274095, z: 1.092330} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a3ea66da-0ca8-4958-8d69-6f5045fa706c + Components: + [] +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! cc435628-7237-4d1c-814c-b9ba17297299 + - ! b0568e80-6289-4a96-85c5-c198fdb59023 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4d7d6431-985a-4279-b01e-9801d36f64b5 + - ! d4c07182-9d4c-4284-901e-e20193ba7116 +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RightHandInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 58d2a4c0-8eba-4ef1-b77e-c7f7d1192d79 +- ! + PrefabRemaps: + [] + Name: ring-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703720, z: -0.000000} + rotation: {x: 0.000283, y: 0.000276, z: 0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 07d5618b-22f9-4656-87fd-b0198fa0aeb6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 61d115d3-d3f8-4651-91b8-2557757a78cf + Components: + - ! 664c170d-3bcc-4ede-bd6d-4663ed1cf004 + - ! f809084b-933a-4ba8-b8bd-2809f7edaa47 +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + border: true + constantPadding: true + allowScaling: true + autoScaleContent: true + isContentInteractable: true + allowTranslation: true + xAlways: true + yAlways: true + worldSnapping: true + isFollowing: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 30.000000, y: 35.000000} + border: ! 4.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: true + autoScaleContent: true + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 8.000000, y: 8.000000} + maximumSize: ! {x: 200.000000, y: 200.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: true + itemSnapping: true + worldSnapping: false + showFollowButton: true + useFOVFollow: true + isFollowing: false + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: JoystickToggle + Enabled: true + ScriptAsset: ! 8bcd5be4-b37d-4c4f-805f-127ba98222d3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + joystick: ! ab3413cb-af5e-4214-a958-733f5a1b116c + joystickPlane: ! ef476ed2-a3ee-4580-b45e-7bb5c5449987 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: HandControl + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f5944c92-188f-41b7-870c-950c91dfa3fd + Components: + - ! f63855b4-0474-4692-951d-42a625184eab +- ! + PrefabRemaps: + [] + Name: mid-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.013406, y: 3.861870, z: 0.000154} + rotation: {x: -4.535300, y: 0.000290, z: 0.000017} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cfc52ae9-3c49-4c47-8299-82d37cdb1095 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! fbb26a6b-aed0-4b5e-9ec1-fe16f062f894 + Components: + - ! 0523a624-a5cb-4e24-a1f5-80e5fdfeda1a + - ! 77996105-d6ce-4674-a4d4-05c1c54d3849 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: "3,8" + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Stop/Damp + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 09a32fc9-c161-4ab3-abc8-692a5a11d528 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RotationSpeedSlider + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.790000, y: -11.876097, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.600000, y: 0.600000, z: 0.600000} + hasSegmentScaleCompensation: false + Children: + - ! 489f263f-f748-47e7-bcee-e5c743e2a183 + - ! 2f4d3cf6-14aa-4c0c-ac86-6e39e1f07716 + - ! b8338169-84f8-4154-b1ba-f4a5ba02f1eb + - ! d99ee51e-bced-429c-9b7c-b05cbd89762d + - ! a900ab98-43df-4d17-b155-68be867e07f7 + Components: + - ! 8504d584-bcd2-4d1d-8276-607e13205a8b + - ! 294f102a-2192-4196-9d61-2db4761c152c + - ! 2f1606ba-5037-4149-a6d4-3b792a459df9 + - ! 2e8e25f5-77c8-42f6-b3a6-0d5f6f1882e4 +- ! + PrefabRemaps: + [] + Name: thumb-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: 0.000001} + rotation: {x: -0.000096, y: -0.000037, z: 0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9f9bcf5b-6b30-496e-b734-5aa240e969c5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! bc12bc49-e5af-4e03-a0b0-cf2368ceaf78 + Mesh: ! 66867a8b-e0de-4ca1-895e-04f0a1fc4b12 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: true + customFunctionForOnButtonPinched: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + onButtonPinchedFunctionNames: ! + - HighStand + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d54c5bc8-117f-46c9-8138-593f13135481 + - ! fe3b68dc-568f-44dd-82ff-ff61325b2937 +- ! + PrefabRemaps: + [] + Name: Frame + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 25.000000, y: 25.000000, z: 25.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c0325b43-803e-4454-a365-657fc8b9461e +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: true + customFunctionForOnButtonPinched: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + onButtonPinchedFunctionNames: ! + - SitDown + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 9999 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 4254844d-aef9-45e9-87f1-d6ab7d608c4f + Mesh: ! b2d2360c-44b0-4f99-a5ad-3651706e0e4b + Skin: ! 32346fd9-8168-4666-87d9-78060a1ebed2 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: thumb-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.067615, y: 3.518870, z: 0.000095} + rotation: {x: 14.081600, y: -0.000034, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d2c2e4e9-c17c-4ecc-902f-2283f319023b + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.549800, z: -0.000001} + rotation: {x: 0.000059, y: -0.000014, z: -0.000073} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 75b74ef8-ecbe-4864-bb69-4c09f5be1606 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 83472e55-1d64-4ec2-ac60-06c87a08281a +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166730, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: true + customFunctionForOnButtonPinched: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + onButtonPinchedFunctionNames: ! + - ZeroTorque + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.054705, y: 3.957050, z: -0.004463} + rotation: {x: -2.614390, y: -0.009460, z: -0.205101} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 60037818-559f-4345-ac44-f7c5dfc86f3c + Components: + [] +- ! + PrefabRemaps: + [] + Name: RightHandRig + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 826246a6-44ea-4331-85b3-702fa57389fb + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Unitree Controls + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 60 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: index-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837170, z: 0.000001} + rotation: {x: 0.000189, y: -0.000000, z: 0.000044} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f3c8087e-8414-4601-833d-96cf682f94d3 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837150, z: -0.000001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 02a86b70-f0f0-41ad-87bd-21c32b796670 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4c4dbf52-995d-4ed4-bf70-3d215a55cb7c + - ! 1081da87-aa93-4489-93a9-39ced16521ba +- ! + PrefabRemaps: + [] + Name: index-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.017407, y: 3.481390, z: 0.001771} + rotation: {x: -8.084740, y: -0.103266, z: -0.728726} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 40a2ea5b-f164-48c5-8ffc-c3dfcacc6d91 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 7 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Joystick Disabled + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 28 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 0.984314, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000000} + rotation: {x: 0.000104, y: 0.000103, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a114455b-6a9f-4990-a3cc-fa88e4a4829a + Components: + [] +- ! + PrefabRemaps: + [] + Name: "[CoordinationClient]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f66b5205-8eab-4f80-9235-50fe346b7a08 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 868eb3d3-a88e-4554-9f72-dd74fbca5b57 + - ! 9858857a-ac1c-4288-a641-24504e767312 + Components: + - ! ec9c2852-48ed-499f-9743-8784847c1a5f +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: wrist_to_mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: -0.519322, y: -5.969350, z: -5.521840} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0b1bf884-4efd-4b6d-83ac-82540696baec + Components: + [] +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3e1bef3e-4830-4ef6-ae21-b9167e6bb500 + - ! 3fb4bc39-89ac-48e3-9f83-dbdb3319be26 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 3.645104, y: 3.645104, z: 3.645104} + hasSegmentScaleCompensation: false + Children: + - ! 146182ed-73d5-41fb-b9df-d7c80cbade4f + Components: + - ! 3f71c4a7-185c-4003-97d2-bd323ab6e751 + - ! 4fe0cd9d-2c0c-407c-a40b-1431e546e902 + - ! dedb9528-82c3-46e6-b5c8-8254a55166d4 + - ! 47b59699-6efd-407b-af2a-b65f8d527973 + - ! 6476c7fb-5b18-4749-8554-8ad486410450 + - ! 5e99999c-e14e-49e4-a739-395557be6424 + - ! e05c740a-5657-4ee5-8b53-9d1290ab05b1 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 0e45cd00-9e1f-43e0-8111-a4c4cfefae61 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RightHandVisual + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 780f2ffa-fc27-462d-85fd-d216d21e774a + Components: + - ! efcda464-fbc4-45be-93af-a83450f936fa +- ! + PrefabRemaps: + [] + Name: "[OPTIONAL] Visuals" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4527c113-2c46-40b1-bb7d-3acd00e22bd2 + - ! 7384c798-527a-41b9-862e-c12bc86376d3 + - ! 0deb320d-887e-4b1a-b988-f11b2c4d951b + Components: + [] +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + constantPadding: true + allowScaling: true + autoScaleContent: true + isContentInteractable: true + allowTranslation: true + xAlways: true + yAlways: true + useSnapping: true + worldSnapping: true + isFollowing: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 25.000000, y: 25.000000} + border: ! 0.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: true + autoScaleContent: true + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 8.000000, y: 8.000000} + maximumSize: ! {x: 200.000000, y: 200.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: false + itemSnapping: true + worldSnapping: false + showFollowButton: true + useFOVFollow: true + isFollowing: false + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: SingleObjectRaycaster + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f391ff36-ac7f-4b1b-be55-f3bbb992071c +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: MouseInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 08614d83-f067-4740-a346-a0b10d1ffd62 +- ! + PrefabRemaps: + [] + Name: ring-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703730, z: -0.000002} + rotation: {x: -0.000202, y: -0.000189, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 933ca421-582e-407b-bfc6-206a10cef5f3 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218160, z: 0.000000} + rotation: {x: 0.000000, y: -0.000011, z: -0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3f428eaa-6547-40ec-865e-50071201a35e + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 6 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: | + On + + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 28 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 0.274510, y: 0.274510, z: 0.274510, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6bb4dde2-84c0-44f3-913e-a23777663c7b + - ! 80060ce0-332b-4a98-8597-144db3c955f4 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 5 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 4c121113-c3c2-4ff8-ae97-2e9a47526b3d + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: LeftHandVisual + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6f50df52-5045-47a8-839c-bbd20bc99bb5 + Components: + - ! dd01563a-be2b-4815-85ad-bf139803cc1f +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! afe74cb3-eabd-490a-a5cb-6dac062dbb4c + - ! e92e73f3-3ac4-4873-b724-a155ac67da7d +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ed8b9145-74d6-4edf-bfc1-1e72eb21872f + - ! 98d603c0-aa2d-407e-bda7-285005350b77 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 76e075a7-0dc7-402b-a76b-824cabac4426 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! dcf513cc-3b47-48eb-a7c8-1825fba52216 + Mesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 8cf7c6c1-134c-4ef6-91e0-6c18eb359298 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 7d029e39-1a82-4f11-a417-8ad837ebbd4d + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 11.824800, z: -0.000000} + rotation: {x: -2.274930, y: -6.337840, z: -8.604530} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7f36a885-824c-4329-8b11-919324b5c881 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.008392, y: 3.222930, z: -0.000121} + rotation: {x: -0.204897, y: -0.651952, z: -2.287250} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d180e208-2df8-4507-8437-213a1fbd5da6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: "-2,5" + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 7 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Off + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 28 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 0.984314, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c412b735-9316-498c-9999-21f28326f2a7 + FlipX: false + FlipY: true + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + - 146182ed-73d5-41fb-b9df-d7c80cbade4f: c584c132-37b0-4945-831d-fe91dd59ef35 + - 3f71c4a7-185c-4003-97d2-bd323ab6e751: fe131a8f-0219-45ea-ade8-fc0f1d7c48d2 + - 47b59699-6efd-407b-af2a-b65f8d527973: 4504672c-47d6-4351-b0f7-bdbcddeefd77 + - 4fe0cd9d-2c0c-407c-a40b-1431e546e902: 22ce32c6-57f8-4526-9f66-6d7d2805d5ae + - 5e99999c-e14e-49e4-a739-395557be6424: ea29a1e8-1895-4e61-abfe-6ee850841dd1 + - 6476c7fb-5b18-4749-8554-8ad486410450: e2719e11-8f89-4bdb-b462-7fc9315f7ec2 + - ab3413cb-af5e-4214-a958-733f5a1b116c: 25a7a1ab-5e91-4626-8d76-670866dfa5a7 + - baeb79f7-2beb-459a-868b-d93966b14ebe: 7bc670b3-df3f-44c6-ae49-73b4ea111638 + - c05ef247-07cb-46fe-bf02-b98e61a09ec0: a0d1c19f-3a8c-4c92-a02b-f115e89fb3ce + - d642e8f4-b3d7-4008-a742-54a1cf702dcf: 94fb5544-22f6-43b0-a482-ee45d1056712 + - dedb9528-82c3-46e6-b5c8-8254a55166d4: 9f8f7a3f-199b-40b1-8c46-0869a8c8e457 + - e05c740a-5657-4ee5-8b53-9d1290ab05b1: 4eba8cc3-7469-47be-9833-a8e502fe50e8 + - ef476ed2-a3ee-4580-b45e-7bb5c5449987: e7a4755d-7eb1-47d7-b744-c8e4232212fa + Name: Joystick + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -18.902494, z: 13.276752} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ab3413cb-af5e-4214-a958-733f5a1b116c + - ! ef476ed2-a3ee-4580-b45e-7bb5c5449987 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: RobotDecoyController + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 788f9d33-db4a-46ec-aceb-4bf2c2834849 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: true + customFunctionForOnButtonPinched: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + onButtonPinchedFunctionNames: ! + - LowStand + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 2b6ad40f-bb8f-4dda-8f4b-48b70fca5bac + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 3e1bef3e-4830-4ef6-ae21-b9167e6bb500 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 99936a85-4312-46d4-8275-b7b22fef2839 + - ! 87dd204e-aaae-43f1-8eb5-86a90135e006 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Bottom + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: "" + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ab378422-6af3-48c1-a4a9-ffb1d6efb060 + - ! 7c202853-788f-4cb8-a277-bbada432c38b +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4c121113-c3c2-4ff8-ae97-2e9a47526b3d + - ! 19439ee3-a79f-4884-8678-6714412597a3 +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703720, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 452a2425-2df7-40e3-85fa-867870555398 + useGlowMesh: true + glowRenderMeshVisual: ! a530ce55-543b-4c8c-84fa-48481af11c2d + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleQuit + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.406799, y: -4.030871, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 10d1b28b-5ffa-4c0a-8707-908aa84b066b + - ! c6ecd432-79aa-4298-a3fd-1419c50ad565 + Components: + - ! 8052dba3-2b58-4bc3-b2c3-3af7775a1bba + - ! f0452f13-a14a-4e29-ace3-7311fca72282 + - ! b6c46cc6-6f36-40e3-abb1-99da97fde3cc + - ! 99249007-b421-4e0c-a4ff-ecfac8a0dfbd + - ! 60b42e5f-33a6-421f-b4c4-bad4274c7a93 + - ! 7c503f86-84b1-4043-ac69-9c8d47278e04 + - ! d218c98a-2ba1-4064-8598-38970963dd35 + - ! 4220fe42-c1c9-4d2f-b22e-373db47b3a69 + - ! 19db0e2c-a787-46e8-b1eb-a559c540d8ff +- ! + PrefabRemaps: + [] + Name: wrist_to_pinky + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 0.918454, y: 18.264400, z: 17.580700} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 050bbf47-8842-4bc2-abe8-7a28fc5c70ab + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837150, z: -0.000000} + rotation: {x: 0.000038, y: 0.000042, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a650b8d7-507a-404b-bfe5-9602e915dae8 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.008175, y: 2.218150, z: 0.000011} + rotation: {x: 83.677002, y: -4.512030, z: -172.722000} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b2d002f5-2b50-4f66-8c0d-93d5dba56556 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002791, y: 3.304380, z: 0.000029} + rotation: {x: 1.238300, y: 0.000079, z: -0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7cb41a88-1dcc-444c-8349-a62b24a8e765 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: mid-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002905, y: 3.650320, z: -0.000094} + rotation: {x: -2.676470, y: 0.000075, z: -0.000412} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6229e282-4449-48f3-8ef5-b90c67ba62fd + Components: + [] +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! cf6e365c-8be7-439f-b295-cf8f1aea0fe6 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: index-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.009134, y: 2.837150, z: 0.000078} + rotation: {x: -87.845497, y: -5.462180, z: -5.671890} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 20841b1c-e2a6-42cf-9bd0-4fd466eae39c + Components: + [] +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! e71cef26-eed8-428f-b446-42c030905fba + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: false + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: ! Y + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.054883, y: 3.957040, z: -0.000166} + rotation: {x: -2.622440, y: -0.000180, z: -0.000073} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1b6d2315-e870-4a05-9817-029318f16b5a + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 6 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: | + World Query Enabled + + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 28 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 0.274510, y: 0.274510, z: 0.274510, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! d4ebbab1-95ff-4bb9-b80f-75c1350d830a + _offIcon: ! 2170c13f-5325-47ca-93c8-cba24100aa0f + _isToggledOn: false + editEventCallbacks: true + customFunctionForOnStateChanged: ! 788f9d33-db4a-46ec-aceb-4bf2c2834849 + onStateChangedFunctionNames: ! + - toggleTargetMovement + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "[ContainerFrameUI]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -100.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! daaa4347-1049-4c69-908c-884fdc3fcdf5 + - ! f2df7859-2149-4205-bf6a-bbb7acf6b98b + Components: + - ! 95ed011f-c8a5-469d-8a2b-cd95475e2dc9 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Wave Hand Turn + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 01349eb6-89ae-43c5-b0e3-8810e6a951b1 + - ! b2ec8889-cb45-40e5-8777-04af18d8a603 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 87a14b1e-b517-4462-b398-0558389ac661 + - ! a74fed55-7475-4ed2-b6be-ef5e22f4f94e +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! c3a5c848-4468-48d2-9df0-0c9778bb7552 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0ad2a884-4ade-40e9-bf03-0d8820ed43ce + - ! 61b5fb52-e745-46f5-a996-9d6825cb9ca8 +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 8b5cb14f-96c5-45d9-b2c1-3ebdbfbad7c9 + _offIcon: ! fddda9e4-571b-4002-b25f-fbbd75ac5b15 + _isToggledOn: false + editEventCallbacks: true + customFunctionForOnStateChanged: ! 0a517718-65ce-4c61-bf5e-692b0f5f300b + onStateChangedFunctionNames: ! + - toggleEnabled + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ConfigurationValidator + Enabled: true + ScriptAsset: ! 287c2824-8220-4e9e-8ac8-18a7e8a5aad0 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5496c3ed-352c-4897-bd69-c31c47445f98 + Components: + - ! f7476a91-47fe-4a26-b8a7-d2e2395fc703 + - ! cb706ab7-e5fb-419b-bd51-815dadd31817 + - ! 6bbca600-6f27-4f4e-b9de-809ec96814d7 + - ! c6d9daaf-c446-4f11-9342-92853d0d9d37 + - ! 698df2f2-339d-44e8-a366-68022ee65398 +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.549810, z: -0.000001} + rotation: {x: 0.000118, y: -23.667299, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 11e7d38c-6fbb-4f05-b89d-a44a9ae8336a + Components: + [] +- ! + PrefabRemaps: + [] + Name: Controls + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e01f28f1-602b-4d5f-8baa-63b0f3957776 + - ! 632b18e6-6d05-440d-a0a1-776f550490b8 + - ! 5a57ee47-87c7-4a79-ba50-970c9cba9a30 + - ! dc051874-b260-4377-a155-f5e61e9c3b29 + - ! e19d0771-e588-4e06-bc70-9b4cf2b478b8 + - ! 8cf7c6c1-134c-4ef6-91e0-6c18eb359298 + - ! 2b6ad40f-bb8f-4dda-8f4b-48b70fca5bac + - ! 76e075a7-0dc7-402b-a76b-824cabac4426 + - ! 8129d649-1060-4775-b6e8-c1f0a0cb3b88 + - ! 81c9488e-e654-4cc0-a3d7-22bd36378150 + - ! cd2fc167-31d8-4f47-b7df-30e173e8e852 + - ! 48b3f9a1-7c28-454e-baf2-f3a3b68db600 + - ! 7d029e39-1a82-4f11-a417-8ad837ebbd4d + - ! e3ce5efc-36ab-46d8-988e-4b13c8fd50d7 + - ! 9b31c612-7446-427b-a3a7-30eaded0bed7 + - ! 7c3a2b93-f045-4787-ad70-e059a9cba020 + - ! 3d471066-56f7-4b19-801c-5a11e2533cc6 + - ! c05ef247-07cb-46fe-bf02-b98e61a09ec0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleHighStand + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -7.380723, y: 3.969129, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 316c6b09-919a-4c9b-817d-941343e76504 + - ! c8b70fdf-a5a1-475f-949b-dd0ff4d8f475 + Components: + - ! c41b7d76-80cf-4d7e-99ee-7f1e52066173 + - ! 803d7b86-543f-40f0-b788-90f5ebaccbb4 + - ! d1288f37-550b-4b2c-b0d6-b0225928e5a5 + - ! fced7711-4fed-4154-8c0f-46f00ba4c118 + - ! dcaf39c9-f562-4763-81ac-aaf1b7240a34 + - ! 9a42f458-79ca-4ebe-ab9f-870c682bc937 + - ! 51b5f3ba-bdbe-4c35-b59e-74aaddf65ed3 + - ! 9d7ef126-a0f2-4dcc-8689-494da80c5841 + - ! 40850a6b-3960-44dd-bd2c-8bec441a435b +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! dc051874-b260-4377-a155-f5e61e9c3b29 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218160, z: 0.000000} + rotation: {x: -0.000051, y: -0.000000, z: 0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 162925ed-6a4c-401a-a521-86902851061f + Components: + [] +- ! + PrefabRemaps: + [] + Name: HandVisual + Enabled: true + ScriptAsset: ! 27fb63e0-f430-409f-b812-20bc1f008d3c + ScriptInputsDefault: + selectVisual: true + autoJointMapping: true + wrist: true + thumbToWrist: true + thumbBaseJoint: true + thumbKnuckle: true + thumbMidJoint: true + thumbTip: true + indexToWrist: true + indexKnuckle: true + indexMidJoint: true + indexUpperJoint: true + indexTip: true + middleToWrist: true + middleKnuckle: true + middleMidJoint: true + middleUpperJoint: true + middleTip: true + ringToWrist: true + ringKnuckle: true + ringMidJoint: true + ringUpperJoint: true + ringTip: true + pinkyToWrist: true + pinkyKnuckle: true + pinkyMidJoint: true + pinkyUpperJoint: true + pinkyTip: true + occluderEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + handType: left + selectVisual: Default + handInteractor: ! 22e40d6c-4405-4a2f-9eda-9f5e0d425a75 + handMesh: ! 9f2b3f06-77a1-4255-830d-ad50801287bd + root: ! 6f50df52-5045-47a8-839c-bbd20bc99bb5 + autoJointMapping: true + wrist: ! 00000000-0000-0000-0000-000000000000 + thumbToWrist: ! 00000000-0000-0000-0000-000000000000 + thumbBaseJoint: ! 00000000-0000-0000-0000-000000000000 + thumbKnuckle: ! 00000000-0000-0000-0000-000000000000 + thumbMidJoint: ! 00000000-0000-0000-0000-000000000000 + thumbTip: ! 00000000-0000-0000-0000-000000000000 + indexToWrist: ! 00000000-0000-0000-0000-000000000000 + indexKnuckle: ! 00000000-0000-0000-0000-000000000000 + indexMidJoint: ! 00000000-0000-0000-0000-000000000000 + indexUpperJoint: ! 00000000-0000-0000-0000-000000000000 + indexTip: ! 00000000-0000-0000-0000-000000000000 + middleToWrist: ! 00000000-0000-0000-0000-000000000000 + middleKnuckle: ! 00000000-0000-0000-0000-000000000000 + middleMidJoint: ! 00000000-0000-0000-0000-000000000000 + middleUpperJoint: ! 00000000-0000-0000-0000-000000000000 + middleTip: ! 00000000-0000-0000-0000-000000000000 + ringToWrist: ! 00000000-0000-0000-0000-000000000000 + ringKnuckle: ! 00000000-0000-0000-0000-000000000000 + ringMidJoint: ! 00000000-0000-0000-0000-000000000000 + ringUpperJoint: ! 00000000-0000-0000-0000-000000000000 + ringTip: ! 00000000-0000-0000-0000-000000000000 + pinkyToWrist: ! 00000000-0000-0000-0000-000000000000 + pinkyKnuckle: ! 00000000-0000-0000-0000-000000000000 + pinkyMidJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyUpperJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyTip: ! 00000000-0000-0000-0000-000000000000 + shouldThumbPokeGlow: true + unitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + tipGlowMaterial: ! ea08fbd2-4db1-40d5-855b-ca5307409d64 + idleColor: ! {x: 1.000000, y: 0.686275, z: 0.000000, w: 1.000000} + pinchDownColor: ! {x: 0.968627, y: 0.827451, z: 0.000000, w: 1.000000} + tapProximityThreshold: ! 8.000000 + pinchTexture: ! e0a110ae-6b49-431f-9924-e602351e9a0c + tapTexture: ! f5355afd-bcbc-4434-bcf9-9ff4c341eb87 + occluderEnabled: false + occluderUnitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + radialGradientOcclusionMaterial: ! ab926f89-771c-45e0-a44c-ba4f9f57cafb + handOutlineMaterial: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + handOccluderMaterial: ! f5326505-501a-4c5e-8979-15bb3dadfa0b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: MobileInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f2db0563-6c95-499d-8ddb-aa5cfaaf22f2 +- ! + PrefabRemaps: + [] + Name: wrist_to_index + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: -0.143142, y: -18.425200, z: -17.556000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 77f1a5d3-8594-40b5-8085-79f1d46ddd71 + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 9999 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 03d33697-6495-4e15-9a2d-646411a514a9 + Mesh: ! 735f7248-824f-40d5-8573-c0cfbbd03abf + Skin: ! 03f7bc43-5636-41fb-a9fc-1dbf378a0dd5 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! ab3413cb-af5e-4214-a958-733f5a1b116c + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -1.539581, y: 16.625523, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a45d9874-f37c-41c9-b74b-fc5b8b804b30 +- ! + PrefabRemaps: + [] + Name: Joystick + Enabled: true + ScriptAsset: ! 9b59ee1c-abca-4e6b-9e2e-a9a5884bc389 + ScriptInputsDefault: + moveSpeed: true + deadzone: true + cardinalWindowDegrees: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + joystickObject: ! ab3413cb-af5e-4214-a958-733f5a1b116c + robotObject: ! 84bafc52-ea01-4f87-a412-867fae0effac + rightIndexFinger: ! d180e208-2df8-4507-8437-213a1fbd5da6 + leftIndexFinger: ! 1ab3fbdf-e28e-45a8-943d-76938ac530b4 + rightThumb: ! 1b6d2315-e870-4a05-9817-029318f16b5a + leftThumb: ! 60037818-559f-4345-ac44-f7c5dfc86f3c + moveSpeed: ! 0.000000 + deadzone: 0.100000 + cardinalWindowDegrees: ! 15.000000 + client: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: "[JoystickToggle]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 968c4bf8-5a61-4ef0-b0d6-d05d415cf337 +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleLowStand + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -7.380723, y: -0.030871, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 900e5a78-b066-4559-8343-f49e5200f828 + - ! 9e2aee65-c1e1-4564-8994-35146ea2f741 + Components: + - ! 9ffd8802-4f12-46b8-b08d-c744a3cf53a4 + - ! 784078cd-3670-4bf8-86f2-0d5c45172416 + - ! 6ece8394-0959-4287-84eb-e2672e8eedcc + - ! 218c46f0-d189-4bb4-8170-c199bc644f9e + - ! e40f930a-f07d-4db2-b9a2-468fd659a6f4 + - ! 2330ba64-a5e4-49ce-93cd-c24554f4784f + - ! 922901f9-ca12-47ed-8dd8-eb0a86f812c6 + - ! c4ddc22c-74c5-466c-ada3-5b189c2131ef + - ! 219bab13-6bc4-4f0a-8db1-e95446771516 +- ! + PrefabRemaps: + [] + Name: ToggleMovement + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 13.500000, y: -8.352104, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 1c35cd1b-52b1-438b-a3d0-971b7aec95cc + - ! d4ebbab1-95ff-4bb9-b80f-75c1350d830a + - ! 2170c13f-5325-47ca-93c8-cba24100aa0f + Components: + - ! 2905ec1b-bbef-49a0-a4a7-c48b80a7b741 + - ! d010469a-d018-4b47-ae6f-c450d534adfe + - ! 409d7923-eb00-4912-aa4b-0e02cd411b00 + - ! d37ff05a-3ea9-461d-9e94-4a5419300735 + - ! 5f52c1db-ee4a-41ed-956b-3b025ba467f1 + - ! a9060ce3-fa90-4c1e-b28b-e9a2ff121203 + - ! 6d5d414f-fc41-4530-86de-0241ccd988a6 + - ! ab44febc-0bce-42ba-98e2-94f40d3de8d1 + - ! 19a8a2d3-7cbd-421f-b641-c5e512274125 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! e19d0771-e588-4e06-bc70-9b4cf2b478b8 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Device Tracking + Enabled: true + DeviceTrackingMode: World + RotationOptions: ! + InvertRotation: false + SurfaceOptions: ! + EnhanceWithNativeAR: false +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: DecoyRobot + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4470d3cb-bc7d-48ec-96dc-fe8a683a9980 + Components: + - ! a3701fc3-406f-488d-a200-96b098c6283a + - ! 0b7c5bcb-4b5b-4514-aebc-3224190ca0e0 + - ! d26d5fd1-2ba0-495a-b8c6-633d6cd8f8f4 +- ! + PrefabRemaps: + [] + Name: ring-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703710, z: 0.000002} + rotation: {x: 0.000000, y: 0.000000, z: -0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6b078b1c-99b5-4d40-81a0-46d9ea3bb1e3 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: index-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 11.787900, z: -0.000005} + rotation: {x: 0.059034, y: 19.848200, z: -15.906400} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a72bed4c-f7e3-4691-93f3-d06d66d75dd0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: wrist_to_pinky + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 0.905911, y: 15.703600, z: -17.047701} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 50f48cde-a492-4587-8b76-26cff1adec60 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_ring + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 0.192403, y: 6.380900, z: 6.216870} + scale: {x: 1.000000, y: 0.999999, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! bdf62eca-a7ef-42cb-9f0a-c0db5dd7b3e7 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Configuration + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d8ffb52f-2569-42b3-a616-c75eb7fe7e36 + - ! f66a2c0c-ecc0-41a4-be4a-21ad0c1b6cb7 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 3e1bef3e-4830-4ef6-ae21-b9167e6bb500 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: JoystickPlane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -3.230324, z: 0.000000} + rotation: {x: -90.000008, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! baeb79f7-2beb-459a-868b-d93966b14ebe +- ! + PrefabRemaps: + [] + Name: HandVisual + Enabled: true + ScriptAsset: ! 27fb63e0-f430-409f-b812-20bc1f008d3c + ScriptInputsDefault: + selectVisual: true + autoJointMapping: true + wrist: true + thumbToWrist: true + thumbBaseJoint: true + thumbKnuckle: true + thumbMidJoint: true + thumbTip: true + indexToWrist: true + indexKnuckle: true + indexMidJoint: true + indexUpperJoint: true + indexTip: true + middleToWrist: true + middleKnuckle: true + middleMidJoint: true + middleUpperJoint: true + middleTip: true + ringToWrist: true + ringKnuckle: true + ringMidJoint: true + ringUpperJoint: true + ringTip: true + pinkyToWrist: true + pinkyKnuckle: true + pinkyMidJoint: true + pinkyUpperJoint: true + pinkyTip: true + occluderEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + handType: right + selectVisual: Default + handInteractor: ! 58d2a4c0-8eba-4ef1-b77e-c7f7d1192d79 + handMesh: ! de62f5f3-2f86-4c98-b357-a44d603496f1 + root: ! 780f2ffa-fc27-462d-85fd-d216d21e774a + autoJointMapping: true + wrist: ! 00000000-0000-0000-0000-000000000000 + thumbToWrist: ! 00000000-0000-0000-0000-000000000000 + thumbBaseJoint: ! 00000000-0000-0000-0000-000000000000 + thumbKnuckle: ! 00000000-0000-0000-0000-000000000000 + thumbMidJoint: ! 00000000-0000-0000-0000-000000000000 + thumbTip: ! 00000000-0000-0000-0000-000000000000 + indexToWrist: ! 00000000-0000-0000-0000-000000000000 + indexKnuckle: ! 00000000-0000-0000-0000-000000000000 + indexMidJoint: ! 00000000-0000-0000-0000-000000000000 + indexUpperJoint: ! 00000000-0000-0000-0000-000000000000 + indexTip: ! 00000000-0000-0000-0000-000000000000 + middleToWrist: ! 00000000-0000-0000-0000-000000000000 + middleKnuckle: ! 00000000-0000-0000-0000-000000000000 + middleMidJoint: ! 00000000-0000-0000-0000-000000000000 + middleUpperJoint: ! 00000000-0000-0000-0000-000000000000 + middleTip: ! 00000000-0000-0000-0000-000000000000 + ringToWrist: ! 00000000-0000-0000-0000-000000000000 + ringKnuckle: ! 00000000-0000-0000-0000-000000000000 + ringMidJoint: ! 00000000-0000-0000-0000-000000000000 + ringUpperJoint: ! 00000000-0000-0000-0000-000000000000 + ringTip: ! 00000000-0000-0000-0000-000000000000 + pinkyToWrist: ! 00000000-0000-0000-0000-000000000000 + pinkyKnuckle: ! 00000000-0000-0000-0000-000000000000 + pinkyMidJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyUpperJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyTip: ! 00000000-0000-0000-0000-000000000000 + shouldThumbPokeGlow: true + unitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + tipGlowMaterial: ! ea08fbd2-4db1-40d5-855b-ca5307409d64 + idleColor: ! {x: 1.000000, y: 0.686275, z: 0.000000, w: 1.000000} + pinchDownColor: ! {x: 0.968627, y: 0.827451, z: 0.000000, w: 1.000000} + tapProximityThreshold: ! 8.000000 + pinchTexture: ! e0a110ae-6b49-431f-9924-e602351e9a0c + tapTexture: ! f5355afd-bcbc-4434-bcf9-9ff4c341eb87 + occluderEnabled: false + occluderUnitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + radialGradientOcclusionMaterial: ! ab926f89-771c-45e0-a44c-ba4f9f57cafb + handOutlineMaterial: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + handOccluderMaterial: ! 7c9de503-f8ed-4070-be89-238d9e1c76df + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: wrist_to_index + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: -0.140613, y: -15.148800, z: 17.637899} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e9344e0a-57f1-4226-9a18-a84052078b1b + Components: + [] +- ! + PrefabRemaps: + [] + Name: HandControlVideo + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 30.000000, y: 0.000000, z: -100.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9f0d9ca2-8803-4532-921f-97374340c509 + - ! 4f3aeb72-6173-48d8-9f75-066ce9aec932 + - ! 8546cc19-ed81-434b-bd0c-190d4994be13 + Components: + - ! abe19e32-391e-4423-9ecd-7d3304d43228 +- ! + PrefabRemaps: + [] + Name: MobileInteractor + Enabled: true + ScriptAsset: ! d81defaa-c407-472a-8de6-a4a6cc16eeb1 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + initializePositionAndRotationFilter: true + _touchpadScrollSpeed: true + touchpadDragThreshold: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + spherecastDistanceThresholds: ! + - 0.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 3.000000 + initializePositionAndRotationFilter: true + _touchpadScrollSpeed: ! 250.000000 + touchpadDragThreshold: 0.050000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Box + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 35.000000, y: 45.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 220b9f97-86f5-482c-8abc-c1d5f5d12a99 +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 0ad2a884-4ade-40e9-bf03-0d8820ed43ce + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: SingleObjectRaycaster + Enabled: true + ScriptAsset: ! 4a953906-5131-40bb-8522-f05a0d213b4f + ScriptInputsDefault: + filterEnabled: true + isEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetObject: ! 6c356ea2-7d6b-4fa2-8bba-efc695359cbd + objectToSpawn: ! aab7eac5-7070-4adf-a352-c52c8e12c818 + filterEnabled: false + isEnabled: true + decoyController: ! 788f9d33-db4a-46ec-aceb-4bf2c2834849 + objectsToCheck: ! + - ! f2df7859-2149-4205-bf6a-bbb7acf6b98b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 8129d649-1060-4775-b6e8-c1f0a0cb3b88 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837170, z: 0.000002} + rotation: {x: -0.000076, y: -0.000000, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 691be975-a6fd-42b9-a51a-bcdeebedb743 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: axesStub + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 238d8130-1751-4b0e-9caf-542d5dd36ffb +- ! + PrefabRemaps: + [] + Name: HandControl + Enabled: true + ScriptAsset: ! bf0dcaf4-1705-45b7-9755-24fab97ebdb4 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + camera: ! 00000000-0000-0065-0000-000000000065 + handTrackingStatus: ! 15a700df-0da4-4bf4-9405-749b0c3f3ab9 + tempLog: ! c73f87d7-e7e0-4893-8671-758129235afc + axesSceneObject: ! f5944c92-188f-41b7-870c-950c91dfa3fd + coordinationClient: ! f66b5205-8eab-4f80-9235-50fe346b7a08 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: SIKLogLevelConfiguration + Enabled: true + ScriptAsset: ! d957e0e4-3046-4a85-bc12-52fe1927d9c9 + ScriptInputsDefault: + _debugModeEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + logLevelFilter: 3 + _debugModeEnabled: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: CoordinationClient + Enabled: true + ScriptAsset: ! 7fa9f4e5-b8c5-4245-a654-0357c26aaddf + ScriptInputsDefault: + serverUrl: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + serverUrl: "wss://spectaclexr.com/ws" + logs: ! 5c1ed1b0-5ff2-4ae1-b238-a1986f98e13b + img_sim: ! c0325b43-803e-4454-a365-657fc8b9461e + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a530ce55-543b-4c8c-84fa-48481af11c2d +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2e3422d1-8ae9-4d21-8a95-e7201f139890 + - ! 0b9c456b-e4ec-4df6-9110-2cf67e457461 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b3f280b7-37fb-401c-b32a-585e6aa48f44 + - ! 3559cef7-705a-4d47-8a00-c89ec53fc963 +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 788e26dd-0be0-4990-ac0f-a2ff2938dc6c + - ! 86499ec9-1d4a-44fe-8fde-94bdda6d6e21 +- ! + PrefabRemaps: + [] + Name: CursorController + Enabled: true + ScriptAsset: ! b1bd344a-41d1-4a26-bbbb-6c15ab434046 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2c3c743b-2fbd-496c-be27-6be254ba9a5b + - ! 5204358e-6292-4d04-9ebe-6c8f92e42668 +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a047e555-f98b-4da9-af51-90992dd2fe13 + - ! 83493966-342a-4cf2-890c-4d27e5ae12b5 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Low Stand + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Shake Hand + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + - 02a86b70-f0f0-41ad-87bd-21c32b796670: 8f5b51cb-131a-42fa-9ea7-67cee50d6af2 + - 03f7bc43-5636-41fb-a9fc-1dbf378a0dd5: e3a7a944-c642-433e-b640-41b775d7e247 + - 050bbf47-8842-4bc2-abe8-7a28fc5c70ab: 6b721f55-2fde-4515-8a98-e0623db0c62c + - 05ab905d-7685-4e29-9db5-9042078af2d6: 93d669d1-3439-4d61-ab72-99f1c6f76a81 + - 07d5618b-22f9-4656-87fd-b0198fa0aeb6: d0f8de20-470a-4599-b195-7ae175fbfc78 + - 08614d83-f067-4740-a346-a0b10d1ffd62: 055525b2-7c1a-4f70-9358-23e0d7d156b8 + - 0b1bf884-4efd-4b6d-83ac-82540696baec: 283ab8bc-80c5-48db-8f22-6b4ab6e6cffe + - 0deb320d-887e-4b1a-b988-f11b2c4d951b: edcde6ca-b40c-4768-a7d2-dd31da71277a + - 0ff1487a-e8d6-4aaf-9067-a61f2fa4c77e: ad14db46-53e1-460c-a8bf-8c26bd57f37c + - 11e7d38c-6fbb-4f05-b89d-a44a9ae8336a: 0473b266-866f-4f68-af21-9d3530e1914f + - 1353e5b8-fa96-4236-9812-7fd080b04697: 04ac8134-d110-4511-b25a-891f2f66584b + - 142880c6-721e-45a0-bdb5-e75cc9a91f53: c4bd0335-b377-414d-8521-c473e35c5774 + - 162925ed-6a4c-401a-a521-86902851061f: 5fb8a5cc-ee0c-4abd-bff7-cb1d3aa2a5bc + - 1ab3fbdf-e28e-45a8-943d-76938ac530b4: 12ba946a-1a8e-4e95-87e5-087ec0b249cc + - 1b6d2315-e870-4a05-9817-029318f16b5a: f4788f9e-4139-4eef-90bc-771177044cd8 + - 1b99283b-6388-4d39-a423-7be97ff2f32d: 9c6e9559-53cb-4842-afc9-a9cf725bce0a + - 1dc67040-bae9-41b8-960f-b57a94672dfa: ae4a9bad-4c46-4bf3-8553-28e8b9416cce + - 1f2cf37f-fd91-492c-a63b-884a08cd9215: 15d70faf-f504-434b-bc7b-bb474fac2980 + - 20841b1c-e2a6-42cf-9bd0-4fd466eae39c: 95dea6d2-2c8c-477b-a1f3-e372e02e6a0b + - 22e40d6c-4405-4a2f-9eda-9f5e0d425a75: b935b9b7-3c38-42b9-8045-c6609e019a8f + - 258ea60f-f57b-4a6f-9bd2-98a9b9b438a2: 7e835154-746f-4b08-a586-447595fc19a1 + - 27db1592-a7a2-4e26-b369-afc71511fb9e: 72e54688-1bc6-48fc-89bb-5fc41b166ae0 + - 29d989ad-aee7-43c3-95e0-02735ba7dd2f: db24ae45-9fd3-4bac-a406-0cad45a3f045 + - 2b9a5b20-6a89-4fd1-906b-e97f4259712f: 0d34b376-2158-453b-931e-0189d0cf2dfa + - 2d1055e9-e5d5-49f7-8955-de8f46da0f6a: e8f1e2a0-17f6-445d-ad3b-100743436988 + - 309860a1-e8fd-49a7-8b08-343086fa08dd: a227f4f5-bb8b-4083-8ff3-76b300794afe + - 31df5cf9-9877-4359-9161-92964449a557: aff70df1-490d-4236-bfe7-1c9fcd1a028a + - 32346fd9-8168-4666-87d9-78060a1ebed2: 1f7bf313-445c-40f6-92ad-a40a50dea575 + - 3f2dd09b-edbc-4994-85a8-a366bf77ca69: 9f23857f-0354-4c96-a54d-0a74653401b0 + - 3f428eaa-6547-40ec-865e-50071201a35e: 4756a1da-6124-4cbb-af0c-1631649652f6 + - 40a2ea5b-f164-48c5-8ffc-c3dfcacc6d91: db9cf02a-a38c-47aa-b059-2faab8f74c75 + - 411b54bc-1db6-4fe9-908b-1f4f0a372ce0: ea14478c-a162-45e4-a7a7-af2ac18b7d4c + - 4527c113-2c46-40b1-bb7d-3acd00e22bd2: 94f70a69-9105-4332-988c-b375881b7bd9 + - 4696df6f-6058-47bd-8129-72a773a76e75: e0925a50-c8a1-4759-9d26-eac6079b1fdb + - 4971d6a8-a5fe-431e-b815-07883d1bd9b4: 2878109d-8f26-4010-b916-efdc9fecbdf8 + - 50f48cde-a492-4587-8b76-26cff1adec60: 2a62abd3-948e-4fb7-bacd-e846fe772fc8 + - 511aa840-3b12-48da-8eb3-6d4a20316ec0: a92fd0a3-ee3a-4273-a91b-d625d14ce8d2 + - 5173a6a1-dbb7-4e12-a52f-a3799a1fea13: 4f009679-ee66-4a0c-8747-6163b9934265 + - 52a3f271-30a0-4e9c-9f47-c80145bab1b2: 34e94d3a-2900-4f04-bbdd-8be35309a24f + - 531e560d-ffa5-433d-8224-6c252eb6a9bb: 64c3ab11-f5ff-4e18-91b8-c697a26228bd + - 58d2a4c0-8eba-4ef1-b77e-c7f7d1192d79: d6371ebf-1d3b-4bfa-bdd8-c0a7fabf8f39 + - 5bd739b3-039d-4f2e-bc80-61fd158ce1aa: 633241a4-412e-4a33-acb2-8487ae2291c9 + - 5da27569-8d52-4e61-a3ab-bb97294d4ce0: 02d483b7-4973-456a-94a1-5973d02ed09f + - 60037818-559f-4345-ac44-f7c5dfc86f3c: 50cf7888-914f-493a-8fcd-16a430ffe91e + - 6229e282-4449-48f3-8ef5-b90c67ba62fd: 5a63eead-ba79-4ecd-b8cd-509fbea8a4f2 + - 63462f25-ed20-4163-b0fe-197f3a97f011: 95f1c1ea-6b70-4e98-80bd-216ce18becb4 + - 6480de4a-e83a-4ebf-919e-d73bc4fd2eee: 3ab55c9b-dd82-4532-943e-d1df8f009177 + - 66d9ff94-deb4-4e42-bc41-0182a168c169: 12549dba-74cb-48d3-a50f-73daa0d64196 + - 674c121a-0fd0-437d-879c-9ce6b8f935fb: d1349dfb-66e5-406a-bab7-cbedc09f0583 + - 691be975-a6fd-42b9-a51a-bcdeebedb743: 7976d725-6d53-4c31-a2c3-f96d25c2b921 + - 6b078b1c-99b5-4d40-81a0-46d9ea3bb1e3: a0534ec9-6292-40ec-b6cd-859f7738f85f + - 6f50df52-5045-47a8-839c-bbd20bc99bb5: 1d1c8de5-b019-4d0a-adc6-1ad389890762 + - 711f9787-d880-4475-8f0a-0cf6b2492a6b: 2536fae3-02cb-4aa5-8c55-952afc929db0 + - 71450838-42ba-49f9-b33d-58b64a9b54c9: 94200c52-425a-43b6-8893-512b230a7726 + - 72ba5fa0-3395-495c-8d87-22bc85f50855: 1d87de05-c879-4ac1-8782-eaceafb0ab7c + - 7384c798-527a-41b9-862e-c12bc86376d3: b3bcf351-f103-47df-a4e8-fd46dbd2a734 + - 74914d99-aae6-4a1c-b4ec-d949b2a9253c: 24d6dc84-ed70-4a53-a3c4-9224488ec60a + - 75b74ef8-ecbe-4864-bb69-4c09f5be1606: bf692fb0-1af3-476e-97cd-092308e529f6 + - 771da37d-9459-45e0-8f98-9538710f0dc5: 0003afb6-e082-42ab-b89f-d22eb256f228 + - 77f1a5d3-8594-40b5-8085-79f1d46ddd71: cb2a32d4-1a84-411d-aa42-bf42bfa144e4 + - 780f2ffa-fc27-462d-85fd-d216d21e774a: 46a5e549-6a60-40d7-99e2-3d9ea7f5a6fa + - 78778cbc-4979-40f8-b213-f0cab136c8aa: efcdb1e4-82aa-48d7-adff-ea83aadec8f0 + - 7bb17581-fb13-4afd-9cfb-15d0180ba723: 3b52e609-bccb-4474-8396-af04afb47613 + - 7cb41a88-1dcc-444c-8349-a62b24a8e765: bb7fd053-b7b8-4148-9784-7a4ecfe99c2b + - 7d7953db-e981-48fc-b8af-77040f8455cd: 66b39338-c86b-4347-b964-852a182ec082 + - 7e117ed6-6fbe-4edb-941c-63a96b698e39: 822c9dec-583d-4588-bf8f-9e76769d9791 + - 7f36a885-824c-4329-8b11-919324b5c881: 7f240caf-60c7-4d5e-b716-5090899a20ce + - 80b63097-b1ef-4467-bdaa-a0a482172316: 0f43b8a1-5f63-44c3-9ba0-32318363dc57 + - 821f1d70-8d79-44db-bc8b-fabf613822c0: 33423227-0e0f-43a6-a69d-a713b9653e99 + - 826246a6-44ea-4331-85b3-702fa57389fb: 47ceb1fa-65b6-498e-af35-6f5af78c2618 + - 850751ef-604a-41bc-a846-0701b76493b1: 951124b2-906c-4f4f-8422-a881e9d98b4a + - 86412b42-c0cf-4fc3-a8a2-fe90221abc59: 4ca9e76a-f818-4a4f-954e-2777667c610a + - 8d12c0a3-c20a-4dd4-b82e-4aa3489ca78f: 37803923-6d4a-4268-aba1-ef5d1d23cd46 + - 8dbfcb2b-c189-46eb-960f-45c157d8484a: 4b527cf4-3e27-4559-b291-0a0b985b4717 + - 8e8470af-1ad4-4317-96d6-2bd90d653cbb: e417673c-029b-4df2-b240-55edb111620f + - 92490a16-2530-449b-8ee9-f65ff2095dd2: 345fde54-ce8d-467e-bc01-3c54e0129ca0 + - 933ca421-582e-407b-bfc6-206a10cef5f3: 5cc46581-44dd-43e4-a2c1-e2bd294a97e6 + - 9827271d-d758-4004-bc20-03cf1e136d1c: 1abd5650-e4e3-4218-9dfe-2d518a0b161b + - 9b586360-5bcd-4bd9-9646-5b5ef75f1788: eafdc1ea-a52b-486f-af4a-13a4f947b89f + - 9f2b3f06-77a1-4255-830d-ad50801287bd: eb708bc5-ef13-451c-b7b2-46398c05d999 + - 9f93fce7-edb2-4d42-b09c-939416f49cc0: 0b203467-22aa-4c6c-a7de-22b8f87e0ad6 + - 9f9bcf5b-6b30-496e-b734-5aa240e969c5: c3c87762-eca6-4731-87a2-f7596e7c0479 + - a114455b-6a9f-4990-a3cc-fa88e4a4829a: 59d49307-84ec-4eb8-aa0f-22f915eb8a4f + - a3ea66da-0ca8-4958-8d69-6f5045fa706c: 009892ac-73e5-4967-bd85-efc71c49f0a7 + - a3f4225f-153f-429a-8cd2-aa84d9db52ad: fb7196a9-d764-4f20-bf77-8d5722266d27 + - a53cac7a-4a63-4351-a6da-b868ffac9c0a: c609db94-d0da-4230-a62a-7f71134c5356 + - a650b8d7-507a-404b-bfe5-9602e915dae8: 861c2385-029b-4a3f-bb80-aad4ce6de18d + - a72bed4c-f7e3-4691-93f3-d06d66d75dd0: 32b9372e-60ad-430c-87fe-a43f6258b4e5 + - a813a7a6-1822-4279-8348-2c314e6ab150: 224e1b84-2cd6-40dc-8b4d-39e26681bfd1 + - a9edf4cd-40ec-4fe4-83b1-2f9439932ef0: 341ee23b-b82c-4f55-b23d-193c0df5c016 + - abb42942-9861-46af-946b-236bb527035f: b0e47302-1cbb-4346-a62f-8e341c73f7b5 + - abcc8726-930d-4609-b007-74454c9f20f9: 3b885064-9472-4754-9b78-42ff961487b9 + - b27cfdfa-9f62-4102-83e8-b9bedf8c2910: 682266ba-13a1-48d4-92fd-608428328dfc + - b297e024-8530-43a8-9271-1d093788af2f: c6e2a5f7-ab1a-4d18-a9d6-a0cd79b37fa7 + - b2d002f5-2b50-4f66-8c0d-93d5dba56556: 28b286b8-7e97-4ed0-bbce-b813966137ff + - b55b19ef-83c9-4922-aaea-ded86b65a663: 22806c77-18d4-41eb-81b3-b85d1228c059 + - bdf62eca-a7ef-42cb-9f0a-c0db5dd7b3e7: 1573681c-afad-4710-bf30-13ab306587e0 + - be49fb74-bd52-43d9-8ea6-b79a6965e36d: ce6d11c6-be32-4e32-b7b8-6c199feef4ea + - cb14c3ea-7067-409a-83f3-618dbe55e547: 87b21f5e-7b4d-4754-af21-4925af99ffb4 + - cd4ffac9-4a32-4dba-b0a2-db117c38b975: 6f03f0b2-6d81-4bc9-a49b-6d387e0245ff + - ce9ff426-cb39-478d-8067-8dea5e623fc6: faaefd86-d1ae-4d56-a280-766a06b98cf6 + - cea83226-8c66-44d7-895a-2480d9cc1c35: 5ce67bb0-6c08-472c-b67f-77bde9454993 + - cf2d9e76-9520-473b-8b9b-68ce183d22ca: cfce736c-a49b-4a3e-947a-32a8e98a4961 + - cfc52ae9-3c49-4c47-8299-82d37cdb1095: 8d2fc7e4-0fe6-43d2-b837-fbe1aa318543 + - d180e208-2df8-4507-8437-213a1fbd5da6: 3c0c8d96-d019-421b-8641-2f6c4fef657f + - d2c2e4e9-c17c-4ecc-902f-2283f319023b: 81d57b7d-0209-4404-a775-f7ef13ad4f97 + - d8ffb52f-2569-42b3-a616-c75eb7fe7e36: ca642efc-944a-4dac-beb4-508163707dd4 + - d9e2d13e-9f8c-4798-83f1-83fed0cdb757: e3a03ad7-eb65-485e-86e0-cd9f0e93e442 + - dcf6aa57-0caa-4b44-a73b-2e33da4f1428: 1e231994-34a6-48c1-94ee-339987f113c7 + - dd01563a-be2b-4815-85ad-bf139803cc1f: 5aee8ecc-3bc7-4fd4-a5bc-c0eaa693a469 + - dd368761-3c9f-4261-afbf-469cb4681d3d: f08c52f6-14c2-4ded-be77-3a2b3f47c577 + - dddd8a38-ce19-4f71-8776-9826e6597567: 96aa9a5e-354d-415a-ac80-5442481fec05 + - de62f5f3-2f86-4c98-b357-a44d603496f1: 1907c2c5-2d81-47ce-96c9-eeb579299134 + - e8194f5f-aab4-4dff-8e59-92d2aaf9c042: edd67c66-78f4-4deb-a3bf-c7b0b07504f3 + - e9344e0a-57f1-4226-9a18-a84052078b1b: 42c8f113-929e-4b03-b3c0-1e0908941234 + - eb361989-1d4a-41f7-a205-235ce6f4e3b9: 24d70dc1-4597-48e0-9370-c6e9293594d4 + - ebf022e3-0fd7-4f48-b695-a86d4509dbfb: 7ca6c509-63a2-4a25-877e-e28ae50f4f4f + - ec33c966-ab83-4e2c-9dd1-9abe30a16e47: 24b98cd7-d5a4-4872-b17b-a6bea152b437 + - efcda464-fbc4-45be-93af-a83450f936fa: 0465eda0-f2a8-46a0-89bf-aec9d8b8da01 + - f154d1c1-2595-4578-acc2-6872637af31a: fd649b68-8f72-465f-baa6-ceef905acca1 + - f2db0563-6c95-499d-8ddb-aa5cfaaf22f2: a216ab78-0022-4fc2-96cf-862ffa9f0371 + - f3c8087e-8414-4601-833d-96cf682f94d3: c224f6fa-05b2-43d9-b45b-0050539a4688 + - f66a2c0c-ecc0-41a4-be4a-21ad0c1b6cb7: 63d95309-a416-46c0-a21b-462bd3335750 + - f9d02a8c-71a4-411f-a21e-a7b3329c62d6: cb9bed1c-7640-4b13-9103-67d3e3ae7401 + - fc6a94ee-23d6-4637-a73b-30ac1b571eca: 5197ee39-b38d-42eb-8c32-d9938bfefb40 + - ff6c151e-214e-4216-8d76-8d4244e2a6e8: 481aca89-f9bf-4ce1-a3a8-d75fc0ff915b + Name: "[SpectaclesInteractionKit]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 142880c6-721e-45a0-bdb5-e75cc9a91f53 + - ! abcc8726-930d-4609-b007-74454c9f20f9 + Components: + [] diff --git a/Spectacles-2-Unitree/Assets/Scene.scene.meta b/Spectacles-2-Unitree/Assets/Scene.scene.meta new file mode 100644 index 00000000..891cac72 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Scene.scene.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Scene: ! 0a1ccb1a-fe88-4fbb-9883-e3af3c75fd99 + ImporterName: SceneImporter + PrimaryAsset: ! 0a1ccb1a-fe88-4fbb-9883-e3af3c75fd99 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/HoverAudioTrack.wav b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/HoverAudioTrack.wav new file mode 100644 index 00000000..e899411f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/HoverAudioTrack.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:304a23ed242d27af98203301a609405225a7f9ec75ce2c1b43510dd14a3d1d5b +size 10358 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/HoverAudioTrack.wav.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/HoverAudioTrack.wav.meta new file mode 100644 index 00000000..3f369bf6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/HoverAudioTrack.wav.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + FileAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + ImporterName: FileAudioTrackImporter + PrimaryAsset: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + FileAudioTrack: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerEndAudioTrack.wav b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerEndAudioTrack.wav new file mode 100644 index 00000000..5651bd43 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerEndAudioTrack.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bff2f6bd83a886afeb08a7fe9009c87b45169cf2cf68286e1a496a0970191696 +size 5486 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerEndAudioTrack.wav.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerEndAudioTrack.wav.meta new file mode 100644 index 00000000..290d1c26 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerEndAudioTrack.wav.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + FileAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ImporterName: FileAudioTrackImporter + PrimaryAsset: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + FileAudioTrack: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerStartAudioTrack.wav b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerStartAudioTrack.wav new file mode 100644 index 00000000..4757e83e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerStartAudioTrack.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d74e313ed62b13c967d889f908ce00119faac1917763df5ad4d2f74d2e4a96c5 +size 10682 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerStartAudioTrack.wav.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerStartAudioTrack.wav.meta new file mode 100644 index 00000000..88e6dacf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Audio/TriggerStartAudioTrack.wav.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + FileAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + ImporterName: FileAudioTrackImporter + PrimaryAsset: ! d531ff43-b8df-4401-839c-645878c5bd2e + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + FileAudioTrack: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightLeft.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightLeft.mat new file mode 100644 index 00000000..e2e9b1c1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightLeft.mat @@ -0,0 +1,131 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 7fd6e6da-73cc-43ac-832f-105864be665d +- ! + CachedProperties: + - Port_Base_N014: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_Color_N014: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_Depth_N004: + typeIdx: 1 + value: 1.000000 + - Port_FinalColor1_N004: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_FinalColor2_N004: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_FinalColor3_N004: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_GSplatPointSize_N004: + typeIdx: 1 + value: 0.000000 + - Port_LODValue_N001: + typeIdx: 1 + value: 0.000000 + - Port_Mask_N014: + typeIdx: 1 + value: 1.000000 + - Port_RayDirection_N004: + typeIdx: 4 + value: {x: 0.000000, y: 1.000000, z: 0.000000} + - Port_RayOrigin_N004: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + - Port_Value4_N017: + typeIdx: 1 + value: 0.000000 + - Port_WorldNormal_N004: + typeIdx: 4 + value: {x: 0.000000, y: 1.000000, z: 0.000000} + - Port_WorldPosition_N004: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + - Port_WorldTangent_N004: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + - Tweak_N15: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - brightness: + typeIdx: 1 + value: 0.350000 + - glowColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - glowColorindexGlowColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Screen + Properties: + Port_Input0_N003: + typeIdx: 1 + value: 0.000000 + Port_Input0_N011: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + handGlowTex: + typeIdx: 9 + value: + id: 7b7a2bf5-e391-465f-aa24-aba1d2b4b8d5 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + handGlowTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + handGlowTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + handGlowTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + handGlowTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + indexBrightness: + typeIdx: 1 + value: 1.000000 + indexGlowColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + thumbBrightness: + typeIdx: 1 + value: 1.000000 + thumbGlowColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! de1aadf5-822b-4f69-87cb-6a9cdd0297f4 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightLeft.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightLeft.mat.meta new file mode 100644 index 00000000..cde88e80 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightLeft.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 4254844d-aef9-45e9-87f1-d6ab7d608c4f + ImporterName: MaterialImporter + PrimaryAsset: ! 4254844d-aef9-45e9-87f1-d6ab7d608c4f + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightRight.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightRight.mat new file mode 100644 index 00000000..85da228f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightRight.mat @@ -0,0 +1,128 @@ +- ! + PackagePath: "" + PassesInfo: + - ! b6a1fb05-9d96-489e-bafe-2fecd37bf99a +- ! + CachedProperties: + - Port_Base_N014: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_Color_N014: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_Depth_N004: + typeIdx: 1 + value: 1.000000 + - Port_FinalColor1_N004: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_FinalColor2_N004: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_FinalColor3_N004: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_GSplatPointSize_N004: + typeIdx: 1 + value: 0.000000 + - Port_LODValue_N001: + typeIdx: 1 + value: 0.000000 + - Port_Mask_N014: + typeIdx: 1 + value: 1.000000 + - Port_RayDirection_N004: + typeIdx: 4 + value: {x: 0.000000, y: 1.000000, z: 0.000000} + - Port_RayOrigin_N004: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + - Port_Value4_N017: + typeIdx: 1 + value: 0.000000 + - Port_WorldNormal_N004: + typeIdx: 4 + value: {x: 0.000000, y: 1.000000, z: 0.000000} + - Port_WorldPosition_N004: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + - Port_WorldTangent_N004: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + - Tweak_N15: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - glowColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - glowColorindexGlowColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Screen + Properties: + Port_Input0_N003: + typeIdx: 1 + value: 0.000000 + Port_Input0_N011: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + handGlowTex: + typeIdx: 9 + value: + id: 7b7a2bf5-e391-465f-aa24-aba1d2b4b8d5 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + handGlowTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + handGlowTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + handGlowTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + handGlowTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + indexBrightness: + typeIdx: 1 + value: 1.000000 + indexGlowColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + thumbBrightness: + typeIdx: 1 + value: 1.000000 + thumbGlowColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! de1aadf5-822b-4f69-87cb-6a9cdd0297f4 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightRight.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightRight.mat.meta new file mode 100644 index 00000000..8832c333 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerHighlightRight.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 03d33697-6495-4e15-9a2d-646411a514a9 + ImporterName: MaterialImporter + PrimaryAsset: ! 03d33697-6495-4e15-9a2d-646411a514a9 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerTipGlow.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerTipGlow.mat new file mode 100644 index 00000000..ea6ace6e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerTipGlow.mat @@ -0,0 +1,74 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 8d91fbc4-8316-43da-8c84-68c91d3d48b0 +- ! + CachedProperties: + - fadeLevel: + typeIdx: 1 + value: 0.580000 + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - tintColor: + typeIdx: 5 + value: {x: 0.968627, y: 0.826139, z: 0.118761, w: 1.000000} + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Add + Properties: + PreviewEnabled: + typeIdx: 0 + value: 0 + brightness: + typeIdx: 1 + value: 0.500000 + glowColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mainTex: + typeIdx: 9 + value: + id: 434234ae-e5c8-4178-b873-f1ad496fc142 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + mainTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mainTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mainTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + mainTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + pinchBrightness: + typeIdx: 1 + value: 1.000000 + pokeBrightness: + typeIdx: 1 + value: 1.000000 + Pass: ! 96e91192-4b1d-43d4-9bfa-430910e799cf + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerTipGlow.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerTipGlow.mat.meta new file mode 100644 index 00000000..8a1c8651 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/FingerTipGlow.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! ea08fbd2-4db1-40d5-855b-ca5307409d64 + ImporterName: MaterialImporter + PrimaryAsset: ! ea08fbd2-4db1-40d5-855b-ca5307409d64 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderLeft.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderLeft.mat new file mode 100644 index 00000000..e4cc8811 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderLeft.mat @@ -0,0 +1,30 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 09ab7dc1-acba-4c64-8f2a-aee3258c4028 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + PreviewEnabled: + typeIdx: 0 + value: 0 + Tweak_N0: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Pass: ! c5214352-c697-42bc-83ed-99cfc5efb1de diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderLeft.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderLeft.mat.meta new file mode 100644 index 00000000..53d4d586 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderLeft.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! f5326505-501a-4c5e-8979-15bb3dadfa0b + ImporterName: MaterialImporter + PrimaryAsset: ! f5326505-501a-4c5e-8979-15bb3dadfa0b + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderRight.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderRight.mat new file mode 100644 index 00000000..d1d4147f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderRight.mat @@ -0,0 +1,30 @@ +- ! + PackagePath: "" + PassesInfo: + - ! a3987fa8-306a-460b-8e79-f33352a80379 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + PreviewEnabled: + typeIdx: 0 + value: 0 + Tweak_N0: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Pass: ! c5214352-c697-42bc-83ed-99cfc5efb1de diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderRight.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderRight.mat.meta new file mode 100644 index 00000000..96b3e3df --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/HandOccluderRight.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 7c9de503-f8ed-4070-be89-238d9e1c76df + ImporterName: MaterialImporter + PrimaryAsset: ! 7c9de503-f8ed-4070-be89-238d9e1c76df + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/RadialGradientOcclusion.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/RadialGradientOcclusion.mat new file mode 100644 index 00000000..884fa3d5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/RadialGradientOcclusion.mat @@ -0,0 +1,75 @@ +- ! + PackagePath: "" + PassesInfo: + - ! b4c64f56-e78e-452e-9399-de359c1cae08 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 0.999969, z: 0.999985, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 738d604c-2468-45f6-b1a3-e787daaf9704 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! d078f682-530c-42dd-9988-3f029ffdf6e6 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/RadialGradientOcclusion.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/RadialGradientOcclusion.mat.meta new file mode 100644 index 00000000..f33d5d47 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BaseHandVisualsMaterials/RadialGradientOcclusion.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! ab926f89-771c-45e0-a44c-ba4f9f57cafb + ImporterName: MaterialImporter + PrimaryAsset: ! ab926f89-771c-45e0-a44c-ba4f9f57cafb + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BitmojiMaterial.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BitmojiMaterial.mat new file mode 100644 index 00000000..50542084 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BitmojiMaterial.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 8e29ed71-493e-497e-af51-ff7e059cd7c4 +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: b906a729-a545-43d2-a7d4-7e8c8e9acfb1 + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BitmojiMaterial.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BitmojiMaterial.mat.meta new file mode 100644 index 00000000..76e5bd3a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/BitmojiMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! ef3a3d48-a46b-4cc9-a244-eaaf4e812941 + ImporterName: MaterialImporter + PrimaryAsset: ! ef3a3d48-a46b-4cc9-a244-eaaf4e812941 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ContainerImageMaterial.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ContainerImageMaterial.mat new file mode 100644 index 00000000..ab9f371a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ContainerImageMaterial.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 9e748b9b-e012-4bc4-b8a3-7510aa267a0a +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 0f94ff6a-ac94-4341-9937-de5a562687da + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ContainerImageMaterial.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ContainerImageMaterial.mat.meta new file mode 100644 index 00000000..6bd071f0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ContainerImageMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 1766b243-ecbd-49ab-99a0-0a126bf505c7 + ImporterName: MaterialImporter + PrimaryAsset: ! 1766b243-ecbd-49ab-99a0-0a126bf505c7 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/LogoMaterial.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/LogoMaterial.mat new file mode 100644 index 00000000..3c41725c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/LogoMaterial.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 6dcde2b4-a6d7-40f5-80d5-0f2c644ffa13 +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: b104c4df-91ff-4a59-8bb8-71a02a096038 + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/LogoMaterial.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/LogoMaterial.mat.meta new file mode 100644 index 00000000..67b7cd4d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/LogoMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 4d35bac2-e858-4d9c-afa4-6f02ae7d5065 + ImporterName: MaterialImporter + PrimaryAsset: ! 4d35bac2-e858-4d9c-afa4-6f02ae7d5065 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/NormalBasedTargetOutline.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/NormalBasedTargetOutline.mat new file mode 100644 index 00000000..6ba7ee9a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/NormalBasedTargetOutline.mat @@ -0,0 +1,65 @@ +- ! + PackagePath: "" + PassesInfo: + - ! c6134076-aa58-4d18-913e-a7aca68d2e0b +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Front + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 2 + Defines: + [] + BlendMode: AlphaTest + Properties: + Port_Input1_N013: + typeIdx: 1 + value: 0.000000 + Port_Input1_N016: + typeIdx: 1 + value: 0.000000 + Port_Input1_N017: + typeIdx: 1 + value: 0.500000 + Port_Input1_N024: + typeIdx: 1 + value: 0.000000 + Port_Value1_N015: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N022: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + alphaTestThreshold: + typeIdx: 1 + value: 0.500000 + lineColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.039216, w: 1.000000} + lineWeight: + typeIdx: 1 + value: 0.250000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 982bf177-d80f-4e3a-a455-7746b0fac73a + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/NormalBasedTargetOutline.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/NormalBasedTargetOutline.mat.meta new file mode 100644 index 00000000..d780822b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/NormalBasedTargetOutline.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + ImporterName: MaterialImporter + PrimaryAsset: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkInactive.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkInactive.mat new file mode 100644 index 00000000..8cfae0f6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkInactive.mat @@ -0,0 +1,130 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 3339b3fb-4808-4696-a0d6-cef9a3fe86ae +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 1.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_NORMALMAP + - NODE_13_DROPLIST_ITEM 0 + - NODE_181_DROPLIST_ITEM 0 + - NODE_184_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_38_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_AO_N036: + typeIdx: 4 + value: {x: 1.000000, y: 0.999969, z: 0.999985} + Port_Default_N113: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Emissive_N036: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input2_N072: + typeIdx: 1 + value: 1.000000 + Port_Strength1_N200: + typeIdx: 1 + value: 1.000000 + Port_Strength2_N200: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 0.420172, y: 0.414572, z: 0.512367, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 3979da00-6f82-42af-a577-c30df444e15e + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + colorMultiplier: + typeIdx: 1 + value: -0.200000 + normalTex: + typeIdx: 9 + value: + id: 449cee8a-1b47-4f1b-a31a-dfa6740f32ff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! bc0911b7-5cde-41ff-8801-7fb992bab649 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkInactive.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkInactive.mat.meta new file mode 100644 index 00000000..7d036641 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkInactive.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 2934a39f-046b-4ced-afd2-555a4f234041 + ImporterName: MaterialImporter + PrimaryAsset: ! 2934a39f-046b-4ced-afd2-555a4f234041 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkRadial.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkRadial.mat new file mode 100644 index 00000000..959ee2d2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkRadial.mat @@ -0,0 +1,74 @@ +- ! + PackagePath: "" + PassesInfo: + - ! fa3cd623-e389-4b1b-b7c2-bae5a0176387 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 1.000000 + InstanceCount: 1 + Defines: + - NODE_13_DROPLIST_ITEM 0 + - NODE_181_DROPLIST_ITEM 0 + - NODE_184_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_38_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_AO_N036: + typeIdx: 4 + value: {x: 1.000000, y: 0.999969, z: 0.999985} + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Emissive_N036: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input2_N072: + typeIdx: 1 + value: 1.000000 + Port_Position1_N078: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 78 + Tweak_N81: + typeIdx: 5 + value: {x: 0.078431, y: 0.078431, z: 0.078431, w: 1.000000} + baseColor: + typeIdx: 5 + value: {x: 0.274510, y: 0.274510, z: 0.274510, w: 1.000000} + colorMultiplier: + typeIdx: 1 + value: 1.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 00f14031-5da3-41ae-9b33-273f1600bbfc + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkRadial.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkRadial.mat.meta new file mode 100644 index 00000000..1349ea0a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonDarkRadial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + ImporterName: MaterialImporter + PrimaryAsset: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOffIcon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOffIcon.mat new file mode 100644 index 00000000..e1e96b92 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOffIcon.mat @@ -0,0 +1,499 @@ +- ! + PackagePath: "" + PassesInfo: + - ! d47bce33-aba6-40de-94ce-19cf3153e2d9 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 1.000000 + InstanceCount: 1 + Defines: + - ENABLE_GLTF_LIGHTING + - NODE_10_DROPLIST_ITEM 0 + - NODE_11_DROPLIST_ITEM 0 + - NODE_30_DROPLIST_ITEM 0 + - NODE_32_DROPLIST_ITEM 0 + - NODE_37_DROPLIST_ITEM 0 + - NODE_44_DROPLIST_ITEM 0 + - NODE_47_DROPLIST_ITEM 0 + - NODE_60_DROPLIST_ITEM 0 + - NODE_7_DROPLIST_ITEM 0 + - NODE_8_DROPLIST_ITEM 0 + - Tweak_N30 0 + - Tweak_N32 0 + - Tweak_N37 0 + - Tweak_N44 0 + - Tweak_N47 0 + - Tweak_N60 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Albedo_N405: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_DebugSheenEnvLightMult_N003: + typeIdx: 1 + value: 1.000000 + Port_DebugSheenPunctualLightMult_N003: + typeIdx: 1 + value: 1.000000 + Port_Emissive_N405: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input2_N043: + typeIdx: 1 + value: 0.000000 + Port_Input2_N062: + typeIdx: 1 + value: 0.000000 + Port_Metallic_N405: + typeIdx: 1 + value: 0.000000 + Port_Opacity_N405: + typeIdx: 1 + value: 1.000000 + Port_SpecularAO_N036: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + Port_SpecularAO_N405: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColorFactor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.000000, w: 1.000000} + baseColorTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseColorTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseColorTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseColorTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseColorTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseColorTexture_offset: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + baseColorTexture_rotation: + typeIdx: 1 + value: 0.000000 + baseColorTexture_scale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + clearcoatFactor: + typeIdx: 1 + value: 0.000000 + clearcoatNormalTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + clearcoatNormalTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + clearcoatNormalTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + clearcoatNormalTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + clearcoatNormalTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + clearcoatNormalTexture_offset: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + clearcoatNormalTexture_rotation: + typeIdx: 1 + value: 1.000000 + clearcoatNormalTexture_scale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + clearcoatRoughnessFactor: + typeIdx: 1 + value: 0.000000 + clearcoatRoughnessTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + clearcoatRoughnessTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + clearcoatRoughnessTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + clearcoatRoughnessTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + clearcoatRoughnessTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + clearcoatRoughnessTexture_offset: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + clearcoatRoughnessTexture_rotation: + typeIdx: 1 + value: 1.000000 + clearcoatRoughnessTexture_scale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + clearcoatTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + clearcoatTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + clearcoatTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + clearcoatTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + clearcoatTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + clearcoatTexture_offset: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + clearcoatTexture_rotation: + typeIdx: 1 + value: 1.000000 + clearcoatTexture_scale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + colorMultiplier: + typeIdx: 1 + value: 0.000000 + emissiveFactor: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + emissiveTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + emissiveTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + emissiveTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + emissiveTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + emissiveTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + emissiveTexture_offset: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + emissiveTexture_rotation: + typeIdx: 1 + value: 1.000000 + emissiveTexture_scale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + metallicFactor: + typeIdx: 1 + value: 0.000000 + metallicRoughnessTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + metallicRoughnessTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + metallicRoughnessTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + metallicRoughnessTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + metallicRoughnessTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + metallicRoughnessTexture_offset: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + metallicRoughnessTexture_rotation: + typeIdx: 1 + value: 1.000000 + metallicRoughnessTexture_scale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + normalTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + normalTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexture_offset: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + normalTexture_rotation: + typeIdx: 1 + value: 1.000000 + normalTexture_scale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + roughnessFactor: + typeIdx: 1 + value: 0.600000 + screenTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + screenTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + screenTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + screenTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + screenTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + sheenColorFactor: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + sheenColorTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + sheenColorTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + sheenColorTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + sheenColorTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + sheenColorTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + sheenColorTexture_offset: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + sheenColorTexture_rotation: + typeIdx: 1 + value: 1.000000 + sheenColorTexture_scale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + sheenRoughnessFactor: + typeIdx: 1 + value: 1.000000 + sheenRoughnessTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + sheenRoughnessTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + sheenRoughnessTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + sheenRoughnessTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + sheenRoughnessTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + sheenRoughnessTexture_offset: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + sheenRoughnessTexture_rotation: + typeIdx: 1 + value: 1.000000 + sheenRoughnessTexture_scale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + transmissionFactor: + typeIdx: 1 + value: 0.000000 + transmissionTexture: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + transmissionTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + transmissionTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + transmissionTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + transmissionTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + transmissionTexture_offset: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + transmissionTexture_rotation: + typeIdx: 1 + value: 1.000000 + transmissionTexture_scale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Pass: ! dcde51ce-7880-40e6-8cea-1c0190718579 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOffIcon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOffIcon.mat.meta new file mode 100644 index 00000000..c762195f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOffIcon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + ImporterName: MaterialImporter + PrimaryAsset: ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnDefault.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnDefault.mat new file mode 100644 index 00000000..a010f0b1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnDefault.mat @@ -0,0 +1,131 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 1caaca25-4492-4c01-9061-e1dbd828c93d +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 1.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_NORMALMAP + - NODE_13_DROPLIST_ITEM 0 + - NODE_181_DROPLIST_ITEM 0 + - NODE_184_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_38_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_AO_N036: + typeIdx: 4 + value: {x: 1.000000, y: 0.999969, z: 0.999985} + Port_Default_N113: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Emissive_N036: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input2_N072: + typeIdx: 1 + value: 1.000000 + Port_Strength1_N200: + typeIdx: 1 + value: 1.000000 + Port_Strength2_N200: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + SecondGradient: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.039216, w: 1.000000} + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.039216, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 3979da00-6f82-42af-a577-c30df444e15e + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + colorMultiplier: + typeIdx: 1 + value: 0.750000 + normalTex: + typeIdx: 9 + value: + id: 449cee8a-1b47-4f1b-a31a-dfa6740f32ff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 29a74e83-c179-4b20-8abb-b6fff71cb08b + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnDefault.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnDefault.mat.meta new file mode 100644 index 00000000..8082829f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnDefault.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + ImporterName: MaterialImporter + PrimaryAsset: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnIcon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnIcon.mat new file mode 100644 index 00000000..c5796aa3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnIcon.mat @@ -0,0 +1,131 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 256531ed-c92a-4169-8724-983dea0efbf1 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 1.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_NORMALMAP + - NODE_13_DROPLIST_ITEM 0 + - NODE_181_DROPLIST_ITEM 0 + - NODE_184_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_38_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_AO_N036: + typeIdx: 4 + value: {x: 1.000000, y: 0.999969, z: 0.999985} + Port_Default_N113: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Emissive_N036: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input2_N072: + typeIdx: 1 + value: 1.000000 + Port_Strength1_N200: + typeIdx: 1 + value: 1.000000 + Port_Strength2_N200: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + SecondGradient: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 3979da00-6f82-42af-a577-c30df444e15e + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + colorMultiplier: + typeIdx: 1 + value: 0.000000 + normalTex: + typeIdx: 9 + value: + id: 449cee8a-1b47-4f1b-a31a-dfa6740f32ff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 29a74e83-c179-4b20-8abb-b6fff71cb08b + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnIcon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnIcon.mat.meta new file mode 100644 index 00000000..22df284e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnIcon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + ImporterName: MaterialImporter + PrimaryAsset: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnSelect.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnSelect.mat new file mode 100644 index 00000000..6a0a83de --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnSelect.mat @@ -0,0 +1,131 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 066913b6-986d-4bc6-88a2-ac383fd5a3c0 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 1.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_NORMALMAP + - NODE_13_DROPLIST_ITEM 0 + - NODE_181_DROPLIST_ITEM 0 + - NODE_184_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_38_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_AO_N036: + typeIdx: 4 + value: {x: 1.000000, y: 0.999969, z: 0.999985} + Port_Default_N113: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Emissive_N036: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input2_N072: + typeIdx: 1 + value: 1.000000 + Port_Strength1_N200: + typeIdx: 1 + value: 1.000000 + Port_Strength2_N200: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + SecondGradient: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.039216, w: 1.000000} + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.039216, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 3979da00-6f82-42af-a577-c30df444e15e + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + colorMultiplier: + typeIdx: 1 + value: 2.000000 + normalTex: + typeIdx: 9 + value: + id: 449cee8a-1b47-4f1b-a31a-dfa6740f32ff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! cda905fe-9d9e-4ca3-b7e9-30ae90dd980c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnSelect.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnSelect.mat.meta new file mode 100644 index 00000000..42fa7bb8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PinchButtonToggleOnSelect.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + ImporterName: MaterialImporter + PrimaryAsset: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 1.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 1.mat new file mode 100644 index 00000000..453d5965 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 1.mat @@ -0,0 +1,131 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! ce7783f2-957f-4fe7-a771-1d9ae5b78556 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N062: + typeIdx: 1 + value: 0.500000 + Port_Import_N068: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N009: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Input1_N073: + typeIdx: 1 + value: 0.500000 + Port_Input2_N003: + typeIdx: 1 + value: 0.000000 + Port_Input2_N009: + typeIdx: 3 + value: {x: -0.500000, y: -0.500000} + Port_Input2_N073: + typeIdx: 1 + value: 0.500000 + Port_Position1_N014: + typeIdx: 1 + value: 0.210000 + Port_Position2_N014: + typeIdx: 1 + value: 0.450000 + Port_Scale_N002: + typeIdx: 3 + value: {x: 1.900000, y: 1.900000} + Port_Value0_N014: + typeIdx: 5 + value: {x: 0.282689, y: 0.180087, z: 0.111696, w: 1.000000} + Port_Value1_N014: + typeIdx: 5 + value: {x: 0.614878, y: 0.498238, z: 0.148318, w: 1.000000} + Port_Value2_N014: + typeIdx: 5 + value: {x: 0.943191, y: 0.798566, z: 0.075456, w: 1.000000} + Port_Value3_N014: + typeIdx: 5 + value: {x: 0.976471, y: 0.825116, z: 0.371054, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + additional_settings_btn_refl_tex: + typeIdx: 9 + value: + id: bf1666aa-7785-445d-9ba4-3e41d6472446 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + additional_settings_btn_refl_texBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + additional_settings_btn_refl_texUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + icon: + typeIdx: 9 + value: + id: 26d9d10e-0b53-4ffc-b516-b290c54fcd35 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToBorderColor + wrapModeV: ClampToBorderColor + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + iconBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconEnabled: + typeIdx: 2 + value: false + iconTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + iconUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! ef904425-39fe-4376-9657-20bb7aa3bab8 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 1.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 1.mat.meta new file mode 100644 index 00000000..faec4c49 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 1.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + ImporterName: MaterialImporter + PrimaryAsset: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 10.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 10.mat new file mode 100644 index 00000000..722799c3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 10.mat @@ -0,0 +1,212 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! 298c3605-17f2-4bbf-9a4f-b7fa1419a10d +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Import_N027: + typeIdx: 1 + value: 0.700000 + Port_Import_N041: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N101: + typeIdx: 1 + value: 0.600000 + Port_Import_N111: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N028: + typeIdx: 3 + value: {x: 1.000000, y: 2.350000} + Port_Input1_N045: + typeIdx: 1 + value: 0.500000 + Port_Input1_N115: + typeIdx: 1 + value: 0.500000 + Port_Input2_N028: + typeIdx: 3 + value: {x: -0.500000, y: -1.180000} + Port_Input2_N045: + typeIdx: 1 + value: 0.500000 + Port_Input2_N115: + typeIdx: 1 + value: 0.500000 + Port_Position1_N007: + typeIdx: 1 + value: 0.330000 + Port_Position1_N011: + typeIdx: 1 + value: 1.000000 + Port_Position1_N031: + typeIdx: 1 + value: 0.330000 + Port_Position2_N007: + typeIdx: 1 + value: 0.660000 + Port_Position2_N011: + typeIdx: 1 + value: 0.550000 + Port_Position2_N031: + typeIdx: 1 + value: 0.580000 + Port_Position3_N007: + typeIdx: 1 + value: 0.510000 + Port_Position3_N011: + typeIdx: 1 + value: 1.000000 + Port_Position3_N031: + typeIdx: 1 + value: 0.800000 + Port_Value0_N007: + typeIdx: 5 + value: {x: 0.149996, y: 0.149996, z: 0.149996, w: 1.000000} + Port_Value0_N011: + typeIdx: 1 + value: 0.100000 + Port_Value0_N031: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N007: + typeIdx: 5 + value: {x: 0.050004, y: 0.048997, z: 0.050004, w: 1.000000} + Port_Value1_N011: + typeIdx: 1 + value: 1.000000 + Port_Value1_N031: + typeIdx: 5 + value: {x: 0.309804, y: 0.309804, z: 0.309804, w: 1.000000} + Port_Value2_N007: + typeIdx: 5 + value: {x: 0.549996, y: 0.526299, z: 0.505989, w: 1.000000} + Port_Value2_N011: + typeIdx: 1 + value: 0.000000 + Port_Value2_N031: + typeIdx: 5 + value: {x: 0.949996, y: 0.949996, z: 0.949996, w: 1.000000} + Port_Value3_N007: + typeIdx: 5 + value: {x: 0.663355, y: 0.635569, z: 0.597360, w: 1.000000} + Port_Value3_N011: + typeIdx: 1 + value: 1.000000 + Port_Value3_N031: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value4_N007: + typeIdx: 5 + value: {x: 0.298039, y: 0.286275, z: 0.294118, w: 1.000000} + Port_Value4_N011: + typeIdx: 1 + value: 0.000000 + Port_Value4_N031: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + capsule_btn_refl_tex_1: + typeIdx: 9 + value: + id: aa5ac2d5-2844-4a73-a2a2-ca671eb71e09 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + capsule_btn_refl_tex_1BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_1UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2: + typeIdx: 9 + value: + id: 825f641e-3daf-441b-9f64-03923bc7bb4b + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + capsule_btn_refl_tex_2BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_2UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3: + typeIdx: 9 + value: + id: 816f16c5-007d-4d7f-937c-192b15901cdc + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + capsule_btn_refl_tex_3BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_3UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! c6c08f7c-2a01-4ad2-be2f-19b95217f619 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 10.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 10.mat.meta new file mode 100644 index 00000000..76a0137c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 10.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! 271b74cf-8459-4dd1-83a4-91af22fc6f5f + ImporterName: MaterialImporter + PrimaryAsset: ! 271b74cf-8459-4dd1-83a4-91af22fc6f5f + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 2.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 2.mat new file mode 100644 index 00000000..22cbfc0e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 2.mat @@ -0,0 +1,153 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! 26df3ea2-122a-4f7d-a68f-7d4486a6ae90 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N006: + typeIdx: 1 + value: 0.500000 + Port_Import_N049: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N062: + typeIdx: 1 + value: 0.400000 + Port_Import_N068: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N009: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Input1_N053: + typeIdx: 1 + value: 0.500000 + Port_Input1_N073: + typeIdx: 1 + value: 0.500000 + Port_Input2_N005: + typeIdx: 1 + value: 0.600000 + Port_Input2_N007: + typeIdx: 1 + value: 0.000000 + Port_Input2_N009: + typeIdx: 3 + value: {x: -0.500000, y: -0.500000} + Port_Input2_N053: + typeIdx: 1 + value: 0.500000 + Port_Input2_N073: + typeIdx: 1 + value: 0.500000 + Port_Position1_N003: + typeIdx: 1 + value: 0.000000 + Port_Position2_N003: + typeIdx: 1 + value: 0.370000 + Port_Position3_N003: + typeIdx: 1 + value: 0.750000 + Port_Scale_N002: + typeIdx: 3 + value: {x: 1.900000, y: 1.900000} + Port_Value0_N003: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N003: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Value2_N003: + typeIdx: 5 + value: {x: 0.597208, y: 0.562066, z: 0.544503, w: 1.000000} + Port_Value3_N003: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value4_N003: + typeIdx: 5 + value: {x: 0.192782, y: 0.192782, z: 0.192782, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + additional_settings_btn_refl_tex: + typeIdx: 9 + value: + id: bf1666aa-7785-445d-9ba4-3e41d6472446 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + additional_settings_btn_refl_texBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + additional_settings_btn_refl_texUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + icon: + typeIdx: 9 + value: + id: 5112d79b-d07a-4bb1-baaa-686e1b308311 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToBorderColor + wrapModeV: ClampToBorderColor + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + iconBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconEnabled: + typeIdx: 2 + value: false + iconTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + iconUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! d78b8125-853c-40af-9579-f108b34a0fed + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 2.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 2.mat.meta new file mode 100644 index 00000000..1f4156da --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 2.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! 7567f7b4-b4fe-4f1f-9691-27bc68573cc7 + ImporterName: MaterialImporter + PrimaryAsset: ! 7567f7b4-b4fe-4f1f-9691-27bc68573cc7 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 3.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 3.mat new file mode 100644 index 00000000..6726df4f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 3.mat @@ -0,0 +1,185 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! 21847f1e-c9a3-412c-b11a-095c7ab8eb7d +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Exponent_N031: + typeIdx: 1 + value: 1.000000 + Port_Import_N006: + typeIdx: 1 + value: 0.500000 + Port_Import_N049: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N062: + typeIdx: 1 + value: 0.400000 + Port_Import_N068: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N009: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Input1_N034: + typeIdx: 5 + value: {x: 1.000000, y: 0.873198, z: 0.239216, w: 1.000000} + Port_Input1_N053: + typeIdx: 1 + value: 0.500000 + Port_Input1_N073: + typeIdx: 1 + value: 0.500000 + Port_Input2_N003: + typeIdx: 1 + value: 0.000000 + Port_Input2_N005: + typeIdx: 1 + value: 0.200000 + Port_Input2_N009: + typeIdx: 3 + value: {x: -0.500000, y: -0.500000} + Port_Input2_N053: + typeIdx: 1 + value: 0.500000 + Port_Input2_N073: + typeIdx: 1 + value: 0.500000 + Port_Intensity_N031: + typeIdx: 1 + value: 1.000000 + Port_Normal_N031: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N007: + typeIdx: 1 + value: 0.240000 + Port_Position1_N018: + typeIdx: 1 + value: 0.000000 + Port_Position2_N007: + typeIdx: 1 + value: 0.700000 + Port_Position2_N018: + typeIdx: 1 + value: 0.270000 + Port_Position3_N018: + typeIdx: 1 + value: 0.340000 + Port_Scale_N002: + typeIdx: 3 + value: {x: 1.900000, y: 1.900000} + Port_Value0_N007: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value0_N018: + typeIdx: 1 + value: 1.000000 + Port_Value1_N007: + typeIdx: 5 + value: {x: 0.050004, y: 0.050004, z: 0.050004, w: 1.000000} + Port_Value1_N018: + typeIdx: 1 + value: 0.000000 + Port_Value2_N007: + typeIdx: 5 + value: {x: 0.504799, y: 0.520943, z: 0.545144, w: 1.000000} + Port_Value2_N018: + typeIdx: 1 + value: 0.500000 + Port_Value3_N007: + typeIdx: 5 + value: {x: 0.212497, y: 0.220005, z: 0.250004, w: 1.000000} + Port_Value3_N018: + typeIdx: 1 + value: 1.000000 + Port_Value4_N018: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + additional_settings_btn_refl_tex: + typeIdx: 9 + value: + id: bf1666aa-7785-445d-9ba4-3e41d6472446 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + additional_settings_btn_refl_texBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + additional_settings_btn_refl_texUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + icon: + typeIdx: 9 + value: + id: 26d9d10e-0b53-4ffc-b516-b290c54fcd35 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToBorderColor + wrapModeV: ClampToBorderColor + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + iconBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconEnabled: + typeIdx: 2 + value: false + iconTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + iconUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! 9d3b32be-cf41-459c-9f37-9b34c96b2f5b + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 3.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 3.mat.meta new file mode 100644 index 00000000..f0fd5cf1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 3.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + ImporterName: MaterialImporter + PrimaryAsset: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 4.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 4.mat new file mode 100644 index 00000000..36923689 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 4.mat @@ -0,0 +1,215 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! 370cf410-f1fd-4f59-87ae-64ce7a57c138 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N019: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Center_N035: + typeIdx: 3 + value: {x: 0.400000, y: 0.500000} + Port_Exponent_N023: + typeIdx: 1 + value: 1.000000 + Port_Import_N027: + typeIdx: 1 + value: 0.700000 + Port_Import_N041: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N101: + typeIdx: 1 + value: 0.600000 + Port_Import_N111: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input0_N020: + typeIdx: 5 + value: {x: 0.470588, y: 0.470588, z: 0.470588, w: 0.000000} + Port_Input0_N048: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Input1_N020: + typeIdx: 5 + value: {x: 0.239216, y: 0.239216, z: 0.239216, w: 0.000000} + Port_Input1_N045: + typeIdx: 1 + value: 0.500000 + Port_Input1_N050: + typeIdx: 5 + value: {x: 1.000000, y: 0.809812, z: 0.239216, w: 1.000000} + Port_Input1_N115: + typeIdx: 1 + value: 0.500000 + Port_Input2_N045: + typeIdx: 1 + value: 0.500000 + Port_Input2_N115: + typeIdx: 1 + value: 0.500000 + Port_Intensity_N023: + typeIdx: 1 + value: 1.000000 + Port_Normal_N023: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N016: + typeIdx: 1 + value: 0.000000 + Port_Position1_N030: + typeIdx: 1 + value: 0.000000 + Port_Position2_N016: + typeIdx: 1 + value: 0.310000 + Port_Position2_N030: + typeIdx: 1 + value: 0.330000 + Port_Position3_N016: + typeIdx: 1 + value: 0.540000 + Port_Position3_N030: + typeIdx: 1 + value: 1.000000 + Port_Rotation_N035: + typeIdx: 1 + value: -90.000000 + Port_Scale_N019: + typeIdx: 3 + value: {x: 1.000000, y: 2.000000} + Port_Value0_N016: + typeIdx: 5 + value: {x: 0.807843, y: 0.796078, z: 0.498039, w: 1.000000} + Port_Value0_N030: + typeIdx: 1 + value: 1.000000 + Port_Value1_N016: + typeIdx: 5 + value: {x: 0.464378, y: 0.446357, z: 0.286290, w: 1.000000} + Port_Value1_N030: + typeIdx: 1 + value: 0.000000 + Port_Value2_N016: + typeIdx: 5 + value: {x: 0.050004, y: 0.050004, z: 0.050004, w: 1.000000} + Port_Value2_N030: + typeIdx: 1 + value: 0.200000 + Port_Value3_N016: + typeIdx: 5 + value: {x: 0.289998, y: 0.289998, z: 0.289998, w: 1.000000} + Port_Value3_N030: + typeIdx: 1 + value: 1.000000 + Port_Value4_N016: + typeIdx: 5 + value: {x: 0.480003, y: 0.480003, z: 0.480003, w: 1.000000} + Port_Value4_N030: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + capsule_btn_refl_tex_1: + typeIdx: 9 + value: + id: aa5ac2d5-2844-4a73-a2a2-ca671eb71e09 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + capsule_btn_refl_tex_1BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_1UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2: + typeIdx: 9 + value: + id: 825f641e-3daf-441b-9f64-03923bc7bb4b + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + capsule_btn_refl_tex_2BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_2UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3: + typeIdx: 9 + value: + id: 816f16c5-007d-4d7f-937c-192b15901cdc + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + capsule_btn_refl_tex_3BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_3UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! ee5ae376-9d34-426a-9816-ef6e95887a4b + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 4.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 4.mat.meta new file mode 100644 index 00000000..1f757102 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 4.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! 74679e29-9817-463b-9427-ffff4cccb602 + ImporterName: MaterialImporter + PrimaryAsset: ! 74679e29-9817-463b-9427-ffff4cccb602 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 5.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 5.mat new file mode 100644 index 00000000..dbb4e51c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 5.mat @@ -0,0 +1,185 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! e2130032-a8c4-45e9-acc4-9c2939a2c7b7 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Exponent_N031: + typeIdx: 1 + value: 1.000000 + Port_Import_N006: + typeIdx: 1 + value: 0.500000 + Port_Import_N049: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N062: + typeIdx: 1 + value: 0.400000 + Port_Import_N068: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N009: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Input1_N034: + typeIdx: 5 + value: {x: 1.000000, y: 0.873198, z: 0.239216, w: 1.000000} + Port_Input1_N053: + typeIdx: 1 + value: 0.500000 + Port_Input1_N073: + typeIdx: 1 + value: 0.500000 + Port_Input2_N003: + typeIdx: 1 + value: 0.000000 + Port_Input2_N005: + typeIdx: 1 + value: 0.200000 + Port_Input2_N009: + typeIdx: 3 + value: {x: -0.500000, y: -0.500000} + Port_Input2_N053: + typeIdx: 1 + value: 0.500000 + Port_Input2_N073: + typeIdx: 1 + value: 0.500000 + Port_Intensity_N031: + typeIdx: 1 + value: 1.000000 + Port_Normal_N031: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N007: + typeIdx: 1 + value: 0.240000 + Port_Position1_N018: + typeIdx: 1 + value: 0.000000 + Port_Position2_N007: + typeIdx: 1 + value: 0.700000 + Port_Position2_N018: + typeIdx: 1 + value: 0.270000 + Port_Position3_N018: + typeIdx: 1 + value: 0.340000 + Port_Scale_N002: + typeIdx: 3 + value: {x: 1.900000, y: 1.900000} + Port_Value0_N007: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value0_N018: + typeIdx: 1 + value: 1.000000 + Port_Value1_N007: + typeIdx: 5 + value: {x: 0.050004, y: 0.050004, z: 0.050004, w: 1.000000} + Port_Value1_N018: + typeIdx: 1 + value: 0.000000 + Port_Value2_N007: + typeIdx: 5 + value: {x: 0.504799, y: 0.520943, z: 0.545144, w: 1.000000} + Port_Value2_N018: + typeIdx: 1 + value: 0.500000 + Port_Value3_N007: + typeIdx: 5 + value: {x: 0.212497, y: 0.220005, z: 0.250004, w: 1.000000} + Port_Value3_N018: + typeIdx: 1 + value: 1.000000 + Port_Value4_N018: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + additional_settings_btn_refl_tex: + typeIdx: 9 + value: + id: bf1666aa-7785-445d-9ba4-3e41d6472446 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + additional_settings_btn_refl_texBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + additional_settings_btn_refl_texUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + icon: + typeIdx: 9 + value: + id: 08e7c6e6-8dbe-40fa-bf02-ebd5c9660ca1 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToBorderColor + wrapModeV: ClampToBorderColor + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + iconBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconEnabled: + typeIdx: 2 + value: false + iconTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + iconUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! 9d3b32be-cf41-459c-9f37-9b34c96b2f5b + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 5.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 5.mat.meta new file mode 100644 index 00000000..72b92084 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 5.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! bfb514bb-32ed-4bf6-8838-1d4b52a8878e + ImporterName: MaterialImporter + PrimaryAsset: ! bfb514bb-32ed-4bf6-8838-1d4b52a8878e + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 6.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 6.mat new file mode 100644 index 00000000..f21581aa --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 6.mat @@ -0,0 +1,131 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! ac5c8eaf-083d-4ddf-b1b2-6f69626190ba +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N062: + typeIdx: 1 + value: 0.500000 + Port_Import_N068: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N009: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Input1_N073: + typeIdx: 1 + value: 0.500000 + Port_Input2_N003: + typeIdx: 1 + value: 0.000000 + Port_Input2_N009: + typeIdx: 3 + value: {x: -0.500000, y: -0.500000} + Port_Input2_N073: + typeIdx: 1 + value: 0.500000 + Port_Position1_N014: + typeIdx: 1 + value: 0.210000 + Port_Position2_N014: + typeIdx: 1 + value: 0.450000 + Port_Scale_N002: + typeIdx: 3 + value: {x: 1.900000, y: 1.900000} + Port_Value0_N014: + typeIdx: 5 + value: {x: 0.282689, y: 0.180087, z: 0.111696, w: 1.000000} + Port_Value1_N014: + typeIdx: 5 + value: {x: 0.614878, y: 0.498238, z: 0.148318, w: 1.000000} + Port_Value2_N014: + typeIdx: 5 + value: {x: 0.943191, y: 0.798566, z: 0.075456, w: 1.000000} + Port_Value3_N014: + typeIdx: 5 + value: {x: 0.976471, y: 0.825116, z: 0.371054, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + additional_settings_btn_refl_tex: + typeIdx: 9 + value: + id: bf1666aa-7785-445d-9ba4-3e41d6472446 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + additional_settings_btn_refl_texBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + additional_settings_btn_refl_texUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + icon: + typeIdx: 9 + value: + id: 08e7c6e6-8dbe-40fa-bf02-ebd5c9660ca1 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToBorderColor + wrapModeV: ClampToBorderColor + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + iconBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconEnabled: + typeIdx: 2 + value: false + iconTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + iconUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! ef904425-39fe-4376-9657-20bb7aa3bab8 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 6.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 6.mat.meta new file mode 100644 index 00000000..b0fad0a8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 6.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! 6b4d1ad8-50d3-4889-9613-534d1419b60b + ImporterName: MaterialImporter + PrimaryAsset: ! 6b4d1ad8-50d3-4889-9613-534d1419b60b + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 7.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 7.mat new file mode 100644 index 00000000..30eab822 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 7.mat @@ -0,0 +1,158 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! cf14f2df-60a6-4f4e-a29c-b12b63cd16ad +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N006: + typeIdx: 1 + value: 0.500000 + Port_Import_N049: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N009: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Input1_N053: + typeIdx: 1 + value: 0.500000 + Port_Input2_N003: + typeIdx: 1 + value: 0.000000 + Port_Input2_N009: + typeIdx: 3 + value: {x: -0.500000, y: -0.500000} + Port_Input2_N053: + typeIdx: 1 + value: 0.500000 + Port_Position1_N007: + typeIdx: 1 + value: 0.240000 + Port_Position1_N018: + typeIdx: 1 + value: 0.000000 + Port_Position2_N007: + typeIdx: 1 + value: 0.700000 + Port_Position2_N018: + typeIdx: 1 + value: 0.270000 + Port_Position3_N018: + typeIdx: 1 + value: 0.340000 + Port_Scale_N002: + typeIdx: 3 + value: {x: 1.900000, y: 1.900000} + Port_Value0_N007: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value0_N018: + typeIdx: 1 + value: 1.000000 + Port_Value1_N007: + typeIdx: 5 + value: {x: 0.050004, y: 0.050004, z: 0.050004, w: 1.000000} + Port_Value1_N018: + typeIdx: 1 + value: 0.000000 + Port_Value2_N007: + typeIdx: 5 + value: {x: 0.504799, y: 0.520943, z: 0.545144, w: 1.000000} + Port_Value2_N018: + typeIdx: 1 + value: 0.500000 + Port_Value3_N007: + typeIdx: 5 + value: {x: 0.212497, y: 0.220005, z: 0.250004, w: 1.000000} + Port_Value3_N018: + typeIdx: 1 + value: 1.000000 + Port_Value4_N018: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + additional_settings_btn_refl_tex: + typeIdx: 9 + value: + id: bf1666aa-7785-445d-9ba4-3e41d6472446 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + additional_settings_btn_refl_texBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + additional_settings_btn_refl_texUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + icon: + typeIdx: 9 + value: + id: 26d9d10e-0b53-4ffc-b516-b290c54fcd35 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToBorderColor + wrapModeV: ClampToBorderColor + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + iconBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconEnabled: + typeIdx: 2 + value: false + iconTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + iconUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! 7d80fe73-0251-489d-87a7-57e3796e1fef + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 7.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 7.mat.meta new file mode 100644 index 00000000..4bb2bc7f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 7.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + ImporterName: MaterialImporter + PrimaryAsset: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 8.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 8.mat new file mode 100644 index 00000000..8fbfeb1e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 8.mat @@ -0,0 +1,170 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! 3b6ae869-71a8-4a19-b2dd-fff72409255f +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Exponent_N023: + typeIdx: 1 + value: 1.000000 + Port_Import_N027: + typeIdx: 1 + value: 0.700000 + Port_Import_N041: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N101: + typeIdx: 1 + value: 0.600000 + Port_Import_N111: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N034: + typeIdx: 5 + value: {x: 1.000000, y: 0.890196, z: 0.349020, w: 1.000000} + Port_Input1_N045: + typeIdx: 1 + value: 0.500000 + Port_Input1_N115: + typeIdx: 1 + value: 0.500000 + Port_Input2_N045: + typeIdx: 1 + value: 0.500000 + Port_Input2_N115: + typeIdx: 1 + value: 0.500000 + Port_Intensity_N023: + typeIdx: 1 + value: 1.000000 + Port_Normal_N023: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N067: + typeIdx: 1 + value: 0.180000 + Port_Position2_N067: + typeIdx: 1 + value: 0.340000 + Port_Position3_N067: + typeIdx: 1 + value: 0.580000 + Port_Value0_N067: + typeIdx: 5 + value: {x: 1.000000, y: 0.866148, z: 0.196918, w: 1.000000} + Port_Value1_N067: + typeIdx: 5 + value: {x: 0.200000, y: 0.133333, z: 0.039994, w: 1.000000} + Port_Value2_N067: + typeIdx: 5 + value: {x: 0.533684, y: 0.444739, z: 0.177905, w: 1.000000} + Port_Value3_N067: + typeIdx: 5 + value: {x: 0.976471, y: 0.893019, z: 0.475761, w: 1.000000} + Port_Value4_N067: + typeIdx: 5 + value: {x: 1.000000, y: 0.916335, z: 0.498039, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + capsule_btn_refl_tex_1: + typeIdx: 9 + value: + id: aa5ac2d5-2844-4a73-a2a2-ca671eb71e09 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + capsule_btn_refl_tex_1BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_1UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2: + typeIdx: 9 + value: + id: 825f641e-3daf-441b-9f64-03923bc7bb4b + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + capsule_btn_refl_tex_2BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_2UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3: + typeIdx: 9 + value: + id: 816f16c5-007d-4d7f-937c-192b15901cdc + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + capsule_btn_refl_tex_3BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_3UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! 602967c5-1750-4ffe-ad13-97e48a247107 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 8.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 8.mat.meta new file mode 100644 index 00000000..91afb8d5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 8.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! 43cbc95f-b089-4e59-a639-ca3950ebd1b5 + ImporterName: MaterialImporter + PrimaryAsset: ! 43cbc95f-b089-4e59-a639-ca3950ebd1b5 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 9.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 9.mat new file mode 100644 index 00000000..598062ca --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 9.mat @@ -0,0 +1,158 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! 21d92435-af15-4756-bf64-ea17d13c0e83 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N006: + typeIdx: 1 + value: 0.500000 + Port_Import_N049: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N009: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Input1_N053: + typeIdx: 1 + value: 0.500000 + Port_Input2_N003: + typeIdx: 1 + value: 0.000000 + Port_Input2_N009: + typeIdx: 3 + value: {x: -0.500000, y: -0.500000} + Port_Input2_N053: + typeIdx: 1 + value: 0.500000 + Port_Position1_N007: + typeIdx: 1 + value: 0.240000 + Port_Position1_N018: + typeIdx: 1 + value: 0.000000 + Port_Position2_N007: + typeIdx: 1 + value: 0.700000 + Port_Position2_N018: + typeIdx: 1 + value: 0.270000 + Port_Position3_N018: + typeIdx: 1 + value: 0.340000 + Port_Scale_N002: + typeIdx: 3 + value: {x: 1.900000, y: 1.900000} + Port_Value0_N007: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value0_N018: + typeIdx: 1 + value: 1.000000 + Port_Value1_N007: + typeIdx: 5 + value: {x: 0.050004, y: 0.050004, z: 0.050004, w: 1.000000} + Port_Value1_N018: + typeIdx: 1 + value: 0.000000 + Port_Value2_N007: + typeIdx: 5 + value: {x: 0.504799, y: 0.520943, z: 0.545144, w: 1.000000} + Port_Value2_N018: + typeIdx: 1 + value: 0.500000 + Port_Value3_N007: + typeIdx: 5 + value: {x: 0.212497, y: 0.220005, z: 0.250004, w: 1.000000} + Port_Value3_N018: + typeIdx: 1 + value: 1.000000 + Port_Value4_N018: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + additional_settings_btn_refl_tex: + typeIdx: 9 + value: + id: bf1666aa-7785-445d-9ba4-3e41d6472446 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + additional_settings_btn_refl_texBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + additional_settings_btn_refl_texUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + icon: + typeIdx: 9 + value: + id: 08e7c6e6-8dbe-40fa-bf02-ebd5c9660ca1 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToBorderColor + wrapModeV: ClampToBorderColor + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + iconBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconEnabled: + typeIdx: 2 + value: false + iconTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + iconUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! 7d80fe73-0251-489d-87a7-57e3796e1fef + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 9.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 9.mat.meta new file mode 100644 index 00000000..e5c85fd9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close 9.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! 51d47a79-fa9a-457f-a979-7b3c7756d6be + ImporterName: MaterialImporter + PrimaryAsset: ! 51d47a79-fa9a-457f-a979-7b3c7756d6be + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close.mat new file mode 100644 index 00000000..5f0d4ffc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close.mat @@ -0,0 +1,165 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_close + PassesInfo: + - ! d24a27f5-8901-4fa6-9bca-34dc4169da4d +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Exponent_N031: + typeIdx: 1 + value: 1.000000 + Port_Import_N006: + typeIdx: 1 + value: 0.500000 + Port_Import_N049: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N062: + typeIdx: 1 + value: 0.400000 + Port_Import_N068: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N009: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Input1_N024: + typeIdx: 5 + value: {x: 1.000000, y: 0.873198, z: 0.239216, w: 1.000000} + Port_Input1_N053: + typeIdx: 1 + value: 0.500000 + Port_Input1_N073: + typeIdx: 1 + value: 0.500000 + Port_Input2_N005: + typeIdx: 1 + value: 0.800000 + Port_Input2_N007: + typeIdx: 1 + value: 0.000000 + Port_Input2_N009: + typeIdx: 3 + value: {x: -0.500000, y: -0.500000} + Port_Input2_N053: + typeIdx: 1 + value: 0.500000 + Port_Input2_N073: + typeIdx: 1 + value: 0.500000 + Port_Intensity_N031: + typeIdx: 1 + value: 1.000000 + Port_Normal_N031: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N003: + typeIdx: 1 + value: 0.000000 + Port_Position2_N003: + typeIdx: 1 + value: 0.370000 + Port_Position3_N003: + typeIdx: 1 + value: 0.750000 + Port_Scale_N002: + typeIdx: 3 + value: {x: 1.900000, y: 1.900000} + Port_Value0_N003: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N003: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Value2_N003: + typeIdx: 5 + value: {x: 0.597208, y: 0.562066, z: 0.544503, w: 1.000000} + Port_Value3_N003: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value4_N003: + typeIdx: 5 + value: {x: 0.192782, y: 0.192782, z: 0.192782, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + additional_settings_btn_refl_tex: + typeIdx: 9 + value: + id: bf1666aa-7785-445d-9ba4-3e41d6472446 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + additional_settings_btn_refl_texBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + additional_settings_btn_refl_texUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + icon: + typeIdx: 9 + value: + id: 5112d79b-d07a-4bb1-baaa-686e1b308311 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToBorderColor + wrapModeV: ClampToBorderColor + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + iconBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconEnabled: + typeIdx: 2 + value: false + iconTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + iconUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! e8b3d4cf-9228-44fd-aca7-acf238987d10 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close.mat.meta new file mode 100644 index 00000000..dc431802 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_close.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! 0851cb07-d250-4d5e-8ad0-5bdab8807cd7 + ImporterName: MaterialImporter + PrimaryAsset: ! 0851cb07-d250-4d5e-8ad0-5bdab8807cd7 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 1.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 1.mat new file mode 100644 index 00000000..baf54dae --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 1.mat @@ -0,0 +1,83 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_glow + PassesInfo: + - ! ee3dfe20-9f27-4c32-a51d-290bd9801ea6 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Screen + Properties: + Port_Input1_N003: + typeIdx: 1 + value: 0.005000 + Port_Offset_N009: + typeIdx: 3 + value: {x: 0.020000, y: 0.000000} + Port_Position1_N007: + typeIdx: 1 + value: 0.000000 + Port_Position2_N007: + typeIdx: 1 + value: 0.760000 + Port_Value0_N007: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Value1_N007: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value2_N007: + typeIdx: 5 + value: {x: 1.000000, y: 0.854902, z: 0.270588, w: 1.000000} + Port_Value3_N007: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + glow_map: + typeIdx: 9 + value: + id: 482f2ef4-e496-4cf0-933d-dd9d94b3c901 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + glow_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + glow_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + glow_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + glow_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! 29ced12e-5dc6-4e30-85c0-2155e5b3cf0f + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 1.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 1.mat.meta new file mode 100644 index 00000000..123bfb61 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 1.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 26502ad9-ffd5-43fb-bafd-0fab0bdc8296 + ImporterName: MaterialImporter + PrimaryAsset: ! 26502ad9-ffd5-43fb-bafd-0fab0bdc8296 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 2.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 2.mat new file mode 100644 index 00000000..41cd218a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 2.mat @@ -0,0 +1,35 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_glow + PassesInfo: + - ! aeec99ed-8e53-4426-880a-201e93a96e0a +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Screen + Properties: + Port_Input1_N003: + typeIdx: 1 + value: 0.005000 + Port_Value_N010: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + Pass: ! de214192-97c6-4beb-9f85-a0690bf913c3 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 2.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 2.mat.meta new file mode 100644 index 00000000..340780b7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow 2.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + ImporterName: MaterialImporter + PrimaryAsset: ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow.mat new file mode 100644 index 00000000..908f84f1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow.mat @@ -0,0 +1,83 @@ +- ! + PackagePath: 3D resources/Materials/SystemSettings/SysSet_round_button_glow + PassesInfo: + - ! 0b062e0e-2f58-4ec0-aef5-5e408fffe1bb +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Screen + Properties: + Port_Input1_N003: + typeIdx: 1 + value: 0.005000 + Port_Offset_N009: + typeIdx: 3 + value: {x: 0.020000, y: 0.000000} + Port_Position1_N005: + typeIdx: 1 + value: 0.000000 + Port_Position2_N005: + typeIdx: 1 + value: 0.760000 + Port_Value0_N005: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Value1_N005: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value2_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.960784, z: 0.537255, w: 1.000000} + Port_Value3_N005: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + glow_map: + typeIdx: 9 + value: + id: 482f2ef4-e496-4cf0-933d-dd9d94b3c901 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + glow_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + glow_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + glow_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + glow_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! d466d02c-9a9b-4da4-b16f-df10edd8689b + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow.mat.meta new file mode 100644 index 00000000..4e572610 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/3D resources/Materials/SystemSettings/SysSet_round_button_glow.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 1bc3a484-fa8d-4dfa-a3e3-94a725e80c3a + ImporterName: MaterialImporter + PrimaryAsset: ! 1bc3a484-fa8d-4dfa-a3e3-94a725e80c3a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonHover.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonHover.mat new file mode 100644 index 00000000..af757fb6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonHover.mat @@ -0,0 +1,113 @@ +- ! + PackagePath: "" + PassesInfo: + - ! ae490bed-bf3b-4b1a-af85-8db034caca44 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Exponent_N031: + typeIdx: 1 + value: 0.600000 + Port_Import_N027: + typeIdx: 1 + value: 0.400000 + Port_Import_N089: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N002: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input1_N010: + typeIdx: 3 + value: {x: 0.800000, y: 1.000000} + Port_Input1_N035: + typeIdx: 5 + value: {x: 1.000000, y: 0.890852, z: 0.345098, w: 1.000000} + Port_Input1_N037: + typeIdx: 1 + value: 0.500000 + Port_Input2_N010: + typeIdx: 3 + value: {x: -0.350000, y: -0.500000} + Port_Input2_N037: + typeIdx: 1 + value: 0.500000 + Port_Intensity_N031: + typeIdx: 1 + value: 1.000000 + Port_Normal_N031: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N007: + typeIdx: 1 + value: 0.450000 + Port_Position2_N007: + typeIdx: 1 + value: 0.450000 + Port_Position3_N007: + typeIdx: 1 + value: 0.000000 + Port_Value0_N007: + typeIdx: 5 + value: {x: 0.749996, y: 0.749996, z: 0.749996, w: 1.000000} + Port_Value1_N007: + typeIdx: 5 + value: {x: 0.200000, y: 0.200000, z: 0.200000, w: 1.000000} + Port_Value2_N007: + typeIdx: 5 + value: {x: 0.450004, y: 0.432456, z: 0.420737, w: 1.000000} + Port_Value3_N007: + typeIdx: 5 + value: {x: 0.500008, y: 0.482765, z: 0.451728, w: 1.000000} + Port_Value4_N007: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + simple_round_button: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + simple_round_buttonBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + simple_round_buttonDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + simple_round_buttonTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + simple_round_buttonUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! f7c880b8-6124-4361-a6a7-5c1e2dfbd1e8 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonHover.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonHover.mat.meta new file mode 100644 index 00000000..452c7fa3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonHover.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + ImporterName: MaterialImporter + PrimaryAsset: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonPinched.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonPinched.mat new file mode 100644 index 00000000..3ebc4a31 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonPinched.mat @@ -0,0 +1,101 @@ +- ! + PackagePath: "" + PassesInfo: + - ! d14f88d4-7c1a-4a31-bf35-2be294751e1a +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Exponent_N031: + typeIdx: 1 + value: 0.600000 + Port_Import_N027: + typeIdx: 1 + value: 0.400000 + Port_Import_N089: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N002: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input1_N010: + typeIdx: 3 + value: {x: 0.800000, y: 1.000000} + Port_Input1_N034: + typeIdx: 5 + value: {x: 1.000000, y: 0.890852, z: 0.345098, w: 1.000000} + Port_Input1_N037: + typeIdx: 1 + value: 0.500000 + Port_Input2_N010: + typeIdx: 3 + value: {x: -0.350000, y: -0.500000} + Port_Input2_N037: + typeIdx: 1 + value: 0.500000 + Port_Intensity_N031: + typeIdx: 1 + value: 1.000000 + Port_Normal_N031: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N030: + typeIdx: 1 + value: 0.000000 + Port_Value0_N030: + typeIdx: 5 + value: {x: 1.000000, y: 0.879988, z: 0.400000, w: 1.000000} + Port_Value1_N030: + typeIdx: 5 + value: {x: 0.500008, y: 0.437507, z: 0.250004, w: 1.000000} + Port_Value2_N030: + typeIdx: 5 + value: {x: 0.500008, y: 0.450004, z: 0.200000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + simple_round_button: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + simple_round_buttonBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + simple_round_buttonDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + simple_round_buttonTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + simple_round_buttonUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! 522617ab-a079-411e-86a0-59735e63628f + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonPinched.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonPinched.mat.meta new file mode 100644 index 00000000..c7ccc1d7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButtonPinched.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + ImporterName: MaterialImporter + PrimaryAsset: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButton_Idle.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButton_Idle.mat new file mode 100644 index 00000000..b2d5279b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButton_Idle.mat @@ -0,0 +1,101 @@ +- ! + PackagePath: "" + PassesInfo: + - ! a879a856-bed7-4427-9835-5d1dc5273097 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Import_N027: + typeIdx: 1 + value: 0.400000 + Port_Import_N089: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N002: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input1_N010: + typeIdx: 3 + value: {x: 0.800000, y: 1.000000} + Port_Input1_N037: + typeIdx: 1 + value: 0.500000 + Port_Input2_N010: + typeIdx: 3 + value: {x: -0.350000, y: -0.500000} + Port_Input2_N037: + typeIdx: 1 + value: 0.500000 + Port_Position1_N007: + typeIdx: 1 + value: 0.450000 + Port_Position2_N007: + typeIdx: 1 + value: 0.450000 + Port_Position3_N007: + typeIdx: 1 + value: 0.000000 + Port_Value0_N007: + typeIdx: 5 + value: {x: 0.749996, y: 0.749996, z: 0.749996, w: 1.000000} + Port_Value1_N007: + typeIdx: 5 + value: {x: 0.200000, y: 0.200000, z: 0.200000, w: 1.000000} + Port_Value2_N007: + typeIdx: 5 + value: {x: 0.450004, y: 0.432456, z: 0.420737, w: 1.000000} + Port_Value3_N007: + typeIdx: 5 + value: {x: 0.500008, y: 0.482765, z: 0.451728, w: 1.000000} + Port_Value4_N007: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + simple_round_button: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + simple_round_buttonBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + simple_round_buttonDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + simple_round_buttonTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + simple_round_buttonUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! a025bbf8-b6d5-486a-b898-297484fc420a + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButton_Idle.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButton_Idle.mat.meta new file mode 100644 index 00000000..c2260dfe --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/RoundButton_Idle.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + ImporterName: MaterialImporter + PrimaryAsset: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 1.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 1.mat new file mode 100644 index 00000000..c66ed28b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 1.mat @@ -0,0 +1,222 @@ +- ! + PackagePath: SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll + PassesInfo: + - ! ab8c7bad-17d8-4bcd-8e89-02df3daabcb3 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Exponent_N064: + typeIdx: 1 + value: 2.000000 + Port_Import_N027: + typeIdx: 1 + value: 0.900000 + Port_Import_N041: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N101: + typeIdx: 1 + value: 0.100000 + Port_Import_N111: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N008: + typeIdx: 3 + value: {x: 2.000000, y: 1.000000} + Port_Input1_N028: + typeIdx: 3 + value: {x: 0.500000, y: 0.600000} + Port_Input1_N045: + typeIdx: 1 + value: 0.500000 + Port_Input1_N065: + typeIdx: 5 + value: {x: 0.552941, y: 0.552941, z: 0.552941, w: 1.000000} + Port_Input1_N115: + typeIdx: 1 + value: 0.500000 + Port_Input2_N008: + typeIdx: 3 + value: {x: -0.550000, y: 0.000000} + Port_Input2_N028: + typeIdx: 3 + value: {x: -0.250000, y: -0.540000} + Port_Input2_N045: + typeIdx: 1 + value: 0.500000 + Port_Input2_N115: + typeIdx: 1 + value: 0.500000 + Port_Intensity_N064: + typeIdx: 1 + value: 0.450000 + Port_Normal_N064: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N005: + typeIdx: 1 + value: 0.710000 + Port_Position1_N016: + typeIdx: 1 + value: 0.080000 + Port_Position1_N031: + typeIdx: 1 + value: 0.180000 + Port_Position2_N005: + typeIdx: 1 + value: 1.000000 + Port_Position2_N016: + typeIdx: 1 + value: 0.230000 + Port_Position2_N031: + typeIdx: 1 + value: 0.430000 + Port_Position3_N016: + typeIdx: 1 + value: 0.560000 + Port_Position3_N031: + typeIdx: 1 + value: 0.720000 + Port_Value0_N005: + typeIdx: 5 + value: {x: 0.050004, y: 0.050004, z: 0.050004, w: 1.000000} + Port_Value0_N016: + typeIdx: 1 + value: 0.500000 + Port_Value0_N031: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N005: + typeIdx: 5 + value: {x: 0.517647, y: 0.517647, z: 0.517647, w: 1.000000} + Port_Value1_N016: + typeIdx: 1 + value: 0.600000 + Port_Value1_N031: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value2_N005: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value2_N016: + typeIdx: 1 + value: 0.800000 + Port_Value2_N031: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value3_N005: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value3_N016: + typeIdx: 1 + value: 0.900000 + Port_Value3_N031: + typeIdx: 5 + value: {x: 0.658824, y: 0.658824, z: 0.658824, w: 1.000000} + Port_Value4_N016: + typeIdx: 1 + value: 0.000000 + Port_Value4_N031: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + capsule_btn_refl_tex_1: + typeIdx: 9 + value: + id: aa5ac2d5-2844-4a73-a2a2-ca671eb71e09 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + capsule_btn_refl_tex_1BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_1UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2: + typeIdx: 9 + value: + id: 825f641e-3daf-441b-9f64-03923bc7bb4b + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + capsule_btn_refl_tex_2BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_2UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3: + typeIdx: 9 + value: + id: 816f16c5-007d-4d7f-937c-192b15901cdc + sampler: + filteringMode: Trilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + capsule_btn_refl_tex_3BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_3UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! 22dbfba0-6fbd-4400-a9ed-3bbf920cbf9f + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 1.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 1.mat.meta new file mode 100644 index 00000000..db7a8bee --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 1.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! bf23557f-e639-48f1-aff2-aafc4d92fe11 + ImporterName: MaterialImporter + PrimaryAsset: ! bf23557f-e639-48f1-aff2-aafc4d92fe11 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 2.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 2.mat new file mode 100644 index 00000000..015e192a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 2.mat @@ -0,0 +1,294 @@ +- ! + PackagePath: SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll + PassesInfo: + - ! 94b3f6c8-3d5a-460a-816a-ebcf221f0ebb +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N078: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Center_N090: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_CoordsIn_N090: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Exponent_N064: + typeIdx: 1 + value: 2.000000 + Port_Exponent_N091: + typeIdx: 1 + value: 1.000000 + Port_Import_N027: + typeIdx: 1 + value: 0.900000 + Port_Import_N041: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N074: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Import_N075: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Import_N079: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N081: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Import_N101: + typeIdx: 1 + value: 0.100000 + Port_Import_N111: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input0_N087: + typeIdx: 1 + value: 0.000000 + Port_Input0_N092: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Input1_N008: + typeIdx: 3 + value: {x: 2.000000, y: 1.000000} + Port_Input1_N028: + typeIdx: 3 + value: {x: 0.500000, y: 0.600000} + Port_Input1_N045: + typeIdx: 1 + value: 0.500000 + Port_Input1_N065: + typeIdx: 5 + value: {x: 0.552941, y: 0.552941, z: 0.552941, w: 1.000000} + Port_Input1_N067: + typeIdx: 3 + value: {x: 0.000000, y: 0.250000} + Port_Input1_N086: + typeIdx: 1 + value: 0.000000 + Port_Input1_N087: + typeIdx: 1 + value: 1.000000 + Port_Input1_N092: + typeIdx: 5 + value: {x: 1.000000, y: 0.866667, z: 0.000000, w: 1.000000} + Port_Input1_N093: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Input1_N115: + typeIdx: 1 + value: 0.500000 + Port_Input2_N008: + typeIdx: 3 + value: {x: -0.550000, y: 0.000000} + Port_Input2_N028: + typeIdx: 3 + value: {x: -0.250000, y: -0.540000} + Port_Input2_N045: + typeIdx: 1 + value: 0.500000 + Port_Input2_N067: + typeIdx: 3 + value: {x: 0.000000, y: -0.400000} + Port_Input2_N086: + typeIdx: 1 + value: 1.000000 + Port_Input2_N115: + typeIdx: 1 + value: 0.500000 + Port_Intensity_N064: + typeIdx: 1 + value: 0.450000 + Port_Intensity_N091: + typeIdx: 1 + value: 0.450000 + Port_Normal_N064: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Normal_N091: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.900000} + Port_Position1_N005: + typeIdx: 1 + value: 0.710000 + Port_Position1_N016: + typeIdx: 1 + value: 0.080000 + Port_Position1_N069: + typeIdx: 1 + value: 0.000000 + Port_Position2_N005: + typeIdx: 1 + value: 1.000000 + Port_Position2_N016: + typeIdx: 1 + value: 0.230000 + Port_Position2_N069: + typeIdx: 1 + value: 0.310000 + Port_Position3_N016: + typeIdx: 1 + value: 0.560000 + Port_Position3_N069: + typeIdx: 1 + value: 0.660000 + Port_RangeMaxA_N076: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N076: + typeIdx: 1 + value: 1.000000 + Port_RangeMinA_N076: + typeIdx: 1 + value: 0.000000 + Port_RangeMinB_N076: + typeIdx: 1 + value: -1.000000 + Port_Rotation_N090: + typeIdx: 1 + value: 90.000000 + Port_Value0_N005: + typeIdx: 5 + value: {x: 0.050004, y: 0.050004, z: 0.050004, w: 1.000000} + Port_Value0_N016: + typeIdx: 1 + value: 0.500000 + Port_Value0_N069: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N005: + typeIdx: 5 + value: {x: 0.517647, y: 0.517647, z: 0.517647, w: 1.000000} + Port_Value1_N016: + typeIdx: 1 + value: 0.600000 + Port_Value1_N069: + typeIdx: 5 + value: {x: 0.094118, y: 0.094118, z: 0.094118, w: 1.000000} + Port_Value2_N005: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value2_N016: + typeIdx: 1 + value: 0.800000 + Port_Value2_N069: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value3_N005: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value3_N016: + typeIdx: 1 + value: 0.900000 + Port_Value3_N069: + typeIdx: 5 + value: {x: 1.000000, y: 0.835294, z: 0.000000, w: 1.000000} + Port_Value4_N016: + typeIdx: 1 + value: 0.000000 + Port_Value4_N069: + typeIdx: 5 + value: {x: 1.000000, y: 0.835294, z: 0.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + capsule_btn_refl_tex_1: + typeIdx: 9 + value: + id: aa5ac2d5-2844-4a73-a2a2-ca671eb71e09 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + capsule_btn_refl_tex_1BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_1UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2: + typeIdx: 9 + value: + id: 825f641e-3daf-441b-9f64-03923bc7bb4b + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + capsule_btn_refl_tex_2BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_2UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3: + typeIdx: 9 + value: + id: 816f16c5-007d-4d7f-937c-192b15901cdc + sampler: + filteringMode: Trilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + capsule_btn_refl_tex_3BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_3UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! fb70ffa2-0778-4a0a-8a24-08e0b06a1411 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 2.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 2.mat.meta new file mode 100644 index 00000000..5ca4c150 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll 2.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 386f728b-6a31-4633-b176-f92cd5bc60ce + ImporterName: MaterialImporter + PrimaryAsset: ! 386f728b-6a31-4633-b176-f92cd5bc60ce + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll.mat new file mode 100644 index 00000000..ec8f6393 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll.mat @@ -0,0 +1,174 @@ +- ! + PackagePath: SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll + PassesInfo: + - ! 4ab82e95-b958-40dd-bf6d-dc1d3e6f631c +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Exponent_N001: + typeIdx: 1 + value: 1.000000 + Port_Import_N027: + typeIdx: 1 + value: 0.900000 + Port_Import_N041: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N101: + typeIdx: 1 + value: 0.100000 + Port_Import_N111: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Input1_N000: + typeIdx: 5 + value: {x: 1.000000, y: 0.890196, z: 0.349020, w: 1.000000} + Port_Input1_N045: + typeIdx: 1 + value: 0.500000 + Port_Input1_N115: + typeIdx: 1 + value: 0.500000 + Port_Input2_N045: + typeIdx: 1 + value: 0.500000 + Port_Input2_N115: + typeIdx: 1 + value: 0.500000 + Port_Intensity_N001: + typeIdx: 1 + value: 1.000000 + Port_Normal_N001: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N030: + typeIdx: 1 + value: 0.300000 + Port_Position2_N030: + typeIdx: 1 + value: 0.500000 + Port_Position3_N030: + typeIdx: 1 + value: 0.600000 + Port_Position4_N030: + typeIdx: 1 + value: 0.700000 + Port_Value0_N030: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N030: + typeIdx: 5 + value: {x: 0.290196, y: 0.240192, z: 0.113725, w: 1.000000} + Port_Value2_N030: + typeIdx: 5 + value: {x: 0.658824, y: 0.549020, z: 0.219608, w: 1.000000} + Port_Value3_N030: + typeIdx: 5 + value: {x: 0.976471, y: 0.804898, z: 0.290196, w: 1.000000} + Port_Value4_N030: + typeIdx: 5 + value: {x: 1.000000, y: 0.874510, z: 0.498039, w: 1.000000} + Port_Value5_N030: + typeIdx: 5 + value: {x: 0.495079, y: 0.454398, z: 0.093355, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + capsule_btn_refl_tex_1: + typeIdx: 9 + value: + id: aa5ac2d5-2844-4a73-a2a2-ca671eb71e09 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + capsule_btn_refl_tex_1BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_1Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_1UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2: + typeIdx: 9 + value: + id: 825f641e-3daf-441b-9f64-03923bc7bb4b + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + capsule_btn_refl_tex_2BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_2Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_2UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3: + typeIdx: 9 + value: + id: 816f16c5-007d-4d7f-937c-192b15901cdc + sampler: + filteringMode: Trilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + capsule_btn_refl_tex_3BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + capsule_btn_refl_tex_3Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + capsule_btn_refl_tex_3UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! e6422c40-50fe-4742-abc2-7b0b120b3af8 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll.mat.meta new file mode 100644 index 00000000..20f2cb71 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 92c09c9d-bf66-4313-9fbd-9c191887a5d4 + ImporterName: MaterialImporter + PrimaryAsset: ! 92c09c9d-bf66-4313-9fbd-9c191887a5d4 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll_bg.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll_bg.mat new file mode 100644 index 00000000..c94b4fbd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll_bg.mat @@ -0,0 +1,129 @@ +- ! + PackagePath: SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll_bg + PassesInfo: + - ! 60e5d6c8-559c-44f3-810f-9c36037feabe +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N039: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Input1_N049: + typeIdx: 1 + value: 0.120000 + Port_Position1_N040: + typeIdx: 1 + value: 0.300000 + Port_Position2_N040: + typeIdx: 1 + value: 0.400000 + Port_Position3_N040: + typeIdx: 1 + value: 0.500000 + Port_Position4_N040: + typeIdx: 1 + value: 0.600000 + Port_Position5_N040: + typeIdx: 1 + value: 0.700000 + Port_RangeMaxA_N035: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N046: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N048: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N050: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N046: + typeIdx: 1 + value: 0.250000 + Port_RangeMaxB_N048: + typeIdx: 1 + value: 3.500000 + Port_RangeMaxB_N050: + typeIdx: 1 + value: -2.500000 + Port_RangeMinA_N035: + typeIdx: 1 + value: 0.000000 + Port_RangeMinA_N046: + typeIdx: 1 + value: -1.000000 + Port_RangeMinA_N048: + typeIdx: 1 + value: 0.000000 + Port_RangeMinA_N050: + typeIdx: 1 + value: 0.000000 + Port_RangeMinB_N046: + typeIdx: 1 + value: 2.000000 + Port_RangeMinB_N048: + typeIdx: 1 + value: 2.000000 + Port_RangeMinB_N050: + typeIdx: 1 + value: -1.000000 + Port_Value0_N040: + typeIdx: 5 + value: {x: 0.149020, y: 0.149020, z: 0.149020, w: 1.000000} + Port_Value1_N040: + typeIdx: 5 + value: {x: 0.149020, y: 0.149020, z: 0.149020, w: 1.000000} + Port_Value2_N040: + typeIdx: 5 + value: {x: 0.298039, y: 0.274510, z: 0.121569, w: 1.000000} + Port_Value3_N040: + typeIdx: 5 + value: {x: 0.588235, y: 0.517647, z: 0.054902, w: 1.000000} + Port_Value4_N040: + typeIdx: 5 + value: {x: 0.298039, y: 0.274510, z: 0.121569, w: 1.000000} + Port_Value5_N040: + typeIdx: 5 + value: {x: 0.149020, y: 0.149020, z: 0.149020, w: 1.000000} + Port_Value6_N040: + typeIdx: 5 + value: {x: 0.149020, y: 0.149020, z: 0.149020, w: 1.000000} + Port_Value_N005: + typeIdx: 5 + value: {x: 0.149020, y: 0.149020, z: 0.149020, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + offset: + typeIdx: 1 + value: 0.320000 + scale: + typeIdx: 1 + value: 1.000000 + size: + typeIdx: 1 + value: 1.000000 + status: + typeIdx: 1 + value: 0.000000 + Pass: ! e0b42284-7c64-43ce-a8ce-4dbea7265103 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll_bg.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll_bg.mat.meta new file mode 100644 index 00000000..b2f4167c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/SWIS/SWIS/3D resources/Materials/LensExplorer/LensExp_scroll_bg.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 400016ba-897b-4f06-8668-db883d28f9a9 + ImporterName: MaterialImporter + PrimaryAsset: ! 400016ba-897b-4f06-8668-db883d28f9a9 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/Slider_Platform.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/Slider_Platform.mat new file mode 100644 index 00000000..02fe2b47 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/Slider_Platform.mat @@ -0,0 +1,66 @@ +- ! + PackagePath: "" + PassesInfo: + - ! d653547b-622e-4efd-b3cf-304275b69ce0 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Input0_N005: + typeIdx: 1 + value: 0.005000 + Port_Offset_N009: + typeIdx: 3 + value: {x: 0.020000, y: 0.000000} + Port_Position1_N010: + typeIdx: 1 + value: 0.700000 + Port_Position1_N011: + typeIdx: 1 + value: 0.000000 + Port_Position2_N011: + typeIdx: 1 + value: 0.620000 + Port_Value0_N011: + typeIdx: 5 + value: {x: 0.700008, y: 0.700008, z: 0.700008, w: 1.000000} + Port_Value1_N011: + typeIdx: 5 + value: {x: 0.549996, y: 0.549996, z: 0.549996, w: 1.000000} + Port_Value2_N011: + typeIdx: 5 + value: {x: 1.000000, y: 0.900008, z: 0.500008, w: 1.000000} + Port_Value3_N011: + typeIdx: 5 + value: {x: 0.770001, y: 0.596750, z: 0.076997, w: 1.000000} + Port_Value_N013: + typeIdx: 5 + value: {x: 0.549996, y: 0.549996, z: 0.549996, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + level: + typeIdx: 1 + value: 1.000000 + pinch: + typeIdx: 1 + value: 0.000000 + Pass: ! 1fc0b4e0-d98d-4292-b562-e490cf8dd56c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/Slider_Platform.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/Slider_Platform.mat.meta new file mode 100644 index 00000000..6fbe6a15 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/PlatformUI/Slider_Platform.mat.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + Material: ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + ImporterName: MaterialImporter + PrimaryAsset: ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScaleBasedTargetOutline.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScaleBasedTargetOutline.mat new file mode 100644 index 00000000..1c7e3463 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScaleBasedTargetOutline.mat @@ -0,0 +1,36 @@ +- ! + PackagePath: "" + PassesInfo: + - ! a5f5cc0f-57f6-45c5-b56a-c8f145c886d8 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Front + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Input2_N008: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + lineColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + lineWeight: + typeIdx: 1 + value: 0.000000 + Pass: ! 1daef860-620d-4476-b637-b1d381b1f510 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScaleBasedTargetOutline.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScaleBasedTargetOutline.mat.meta new file mode 100644 index 00000000..664e4892 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScaleBasedTargetOutline.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + ImporterName: MaterialImporter + PrimaryAsset: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarButton.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarButton.mat new file mode 100644 index 00000000..40de0aad --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarButton.mat @@ -0,0 +1,74 @@ +- ! + PackagePath: "" + PassesInfo: + - ! b9b5928b-8832-48ea-9df4-2ed07ab68866 +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 1.000000 + InstanceCount: 1 + Defines: + - NODE_13_DROPLIST_ITEM 0 + - NODE_181_DROPLIST_ITEM 0 + - NODE_184_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_38_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_AO_N036: + typeIdx: 4 + value: {x: 1.000000, y: 0.999969, z: 0.999985} + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Emissive_N036: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input2_N072: + typeIdx: 1 + value: 1.000000 + Port_Position1_N078: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 78 + Tweak_N81: + typeIdx: 5 + value: {x: 0.078431, y: 0.078431, z: 0.078431, w: 1.000000} + baseColor: + typeIdx: 5 + value: {x: 0.274510, y: 0.274510, z: 0.274510, w: 1.000000} + colorMultiplier: + typeIdx: 1 + value: 1.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 00f14031-5da3-41ae-9b33-273f1600bbfc + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarButton.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarButton.mat.meta new file mode 100644 index 00000000..3cd842a3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarButton.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 0607447c-e8df-4721-9c51-777e973d74eb + ImporterName: MaterialImporter + PrimaryAsset: ! 0607447c-e8df-4721-9c51-777e973d74eb + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarSlider.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarSlider.mat new file mode 100644 index 00000000..581c7166 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarSlider.mat @@ -0,0 +1,57 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 634cf1b7-b5e7-4202-88c8-58228ec2e8a4 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + PreviewEnabled: + typeIdx: 0 + value: 0 + Tweak_N1: + typeIdx: 9 + value: + id: 76b2ec40-1edc-487a-af2c-371af82118ae + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N1BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N1Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N1Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N1UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N5: + typeIdx: 5 + value: {x: 0.749996, y: 0.749996, z: 0.749996, w: 1.000000} + Pass: ! 5883c506-6f6a-48d3-9b83-12200015dc65 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarSlider.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarSlider.mat.meta new file mode 100644 index 00000000..92ae1499 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/ScrollBarSlider.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 182db9f2-4d62-49ff-8cfe-55c29488a2e8 + ImporterName: MaterialImporter + PrimaryAsset: ! 182db9f2-4d62-49ff-8cfe-55c29488a2e8 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SimplePBRMaterial.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SimplePBRMaterial.mat new file mode 100644 index 00000000..cca54a6b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SimplePBRMaterial.mat @@ -0,0 +1,72 @@ +- ! + PackagePath: "" + PassesInfo: + - ! f0daf2c8-0a1f-4dec-9bc0-4f93074eb407 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + BlendMode: PremultipliedAlphaAuto + Properties: + Port_AO_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + Port_Emissive_N006: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_SpecularAO_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 3979da00-6f82-42af-a577-c30df444e15e + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + metallic: + typeIdx: 1 + value: 0.000000 + roughness: + typeIdx: 1 + value: 0.000000 + Pass: ! 5ecbacc7-af69-4b4c-99e8-8a06fd7376e4 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SimplePBRMaterial.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SimplePBRMaterial.mat.meta new file mode 100644 index 00000000..184e72a2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SimplePBRMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + ImporterName: MaterialImporter + PrimaryAsset: ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonDarkDefault.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonDarkDefault.mat new file mode 100644 index 00000000..2e6451bf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonDarkDefault.mat @@ -0,0 +1,131 @@ +- ! + PackagePath: "" + PassesInfo: + - ! b53b7b0f-1d04-4204-9461-7760c2ad59d8 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 1.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_NORMALMAP + - NODE_13_DROPLIST_ITEM 0 + - NODE_181_DROPLIST_ITEM 0 + - NODE_184_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_38_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_AO_N036: + typeIdx: 4 + value: {x: 1.000000, y: 0.999969, z: 0.999985} + Port_Default_N113: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Emissive_N036: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input2_N072: + typeIdx: 1 + value: 1.000000 + Port_Strength1_N200: + typeIdx: 1 + value: 1.000000 + Port_Strength2_N200: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + SecondGradient: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseColor: + typeIdx: 5 + value: {x: 0.066667, y: 0.097627, z: 0.097383, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 3979da00-6f82-42af-a577-c30df444e15e + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + colorMultiplier: + typeIdx: 1 + value: 0.000000 + normalTex: + typeIdx: 9 + value: + id: 449cee8a-1b47-4f1b-a31a-dfa6740f32ff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 18eae901-de97-4937-8f54-2dd833b60d64 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonDarkDefault.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonDarkDefault.mat.meta new file mode 100644 index 00000000..a1c029eb --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonDarkDefault.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 8325b443-2277-45c6-a0ab-49cddc938168 + ImporterName: MaterialImporter + PrimaryAsset: ! 8325b443-2277-45c6-a0ab-49cddc938168 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonOnSelect.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonOnSelect.mat new file mode 100644 index 00000000..7668de6b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonOnSelect.mat @@ -0,0 +1,131 @@ +- ! + PackagePath: "" + PassesInfo: + - ! d93b5402-be8c-451d-8bba-d457feab0fba +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 1.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_NORMALMAP + - NODE_13_DROPLIST_ITEM 0 + - NODE_181_DROPLIST_ITEM 0 + - NODE_184_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_38_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_AO_N036: + typeIdx: 4 + value: {x: 1.000000, y: 0.999969, z: 0.999985} + Port_Default_N113: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Emissive_N036: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input2_N072: + typeIdx: 1 + value: 1.000000 + Port_Strength1_N200: + typeIdx: 1 + value: 1.000000 + Port_Strength2_N200: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + SecondGradient: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseColor: + typeIdx: 5 + value: {x: 0.066468, y: 0.097627, z: 0.097383, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 3979da00-6f82-42af-a577-c30df444e15e + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + colorMultiplier: + typeIdx: 1 + value: 0.550000 + normalTex: + typeIdx: 9 + value: + id: 449cee8a-1b47-4f1b-a31a-dfa6740f32ff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 18eae901-de97-4937-8f54-2dd833b60d64 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonOnSelect.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonOnSelect.mat.meta new file mode 100644 index 00000000..6c7ca982 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/PinchButtonOnSelect.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 9680b686-ffbd-41d7-95f8-8d0e1e9abf0f + ImporterName: MaterialImporter + PrimaryAsset: ! 9680b686-ffbd-41d7-95f8-8d0e1e9abf0f + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/SliderMat.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/SliderMat.mat new file mode 100644 index 00000000..5e81bd39 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/SliderMat.mat @@ -0,0 +1,143 @@ +- ! + PackagePath: "" + PassesInfo: + - ! f272014e-097e-438f-affe-c81efeecd72d +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 1.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_NORMALMAP + - NODE_13_DROPLIST_ITEM 0 + - NODE_181_DROPLIST_ITEM 0 + - NODE_184_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_38_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Level: + typeIdx: 1 + value: 0.500000 + Port_AO_N036: + typeIdx: 4 + value: {x: 1.000000, y: 0.999969, z: 0.999985} + Port_Default_N113: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Emissive_N036: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input2_N072: + typeIdx: 1 + value: 1.000000 + Port_Strength1_N200: + typeIdx: 1 + value: 1.000000 + Port_Strength2_N200: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseTex: + typeIdx: 9 + value: + id: 3979da00-6f82-42af-a577-c30df444e15e + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + innerColor1: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.000000, w: 1.000000} + innerColor2: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.039216, w: 1.000000} + innerColorMultiplier: + typeIdx: 1 + value: 0.750000 + normalTex: + typeIdx: 9 + value: + id: 449cee8a-1b47-4f1b-a31a-dfa6740f32ff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outerColor1: + typeIdx: 5 + value: {x: 0.066468, y: 0.097627, z: 0.097383, w: 1.000000} + outerColor2: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outerColorMultiplier: + typeIdx: 1 + value: 0.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 61657298-e494-4718-8624-6c13724fba5a + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/SliderMat.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/SliderMat.mat.meta new file mode 100644 index 00000000..6c06fa56 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/SliderMat.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 34182700-aaf0-4e85-b6d4-c7ae22436182 + ImporterName: MaterialImporter + PrimaryAsset: ! 34182700-aaf0-4e85-b6d4-c7ae22436182 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/TargetOutlineMaterial.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/TargetOutlineMaterial.mat new file mode 100644 index 00000000..22c2d05b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/TargetOutlineMaterial.mat @@ -0,0 +1,65 @@ +- ! + PackagePath: "" + PassesInfo: + - ! ccb01889-df1b-42cc-a36b-f05e13be750a +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Front + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 2 + Defines: + [] + BlendMode: AlphaTest + Properties: + Port_Input1_N013: + typeIdx: 1 + value: 0.000000 + Port_Input1_N016: + typeIdx: 1 + value: 0.000000 + Port_Input1_N017: + typeIdx: 1 + value: 0.500000 + Port_Input1_N024: + typeIdx: 1 + value: 0.000000 + Port_Value1_N015: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N022: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + alphaTestThreshold: + typeIdx: 1 + value: 0.500000 + lineColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.039216, w: 1.000000} + lineWeight: + typeIdx: 1 + value: 0.250000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! ec569494-ce6b-47f9-8d51-46c18573e6b2 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/TargetOutlineMaterial.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/TargetOutlineMaterial.mat.meta new file mode 100644 index 00000000..1f0cc183 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SliderMat/TargetOutlineMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! ede8a803-51a1-4781-a7f5-406481a14224 + ImporterName: MaterialImporter + PrimaryAsset: ! ede8a803-51a1-4781-a7f5-406481a14224 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SpritePreset.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SpritePreset.mat new file mode 100644 index 00000000..09f42264 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SpritePreset.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 567f9327-178d-4a36-b758-a0ca7c91cd8b +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 611e2abb-fb0f-4e2f-8c27-57f7a83eef9d + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SpritePreset.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SpritePreset.mat.meta new file mode 100644 index 00000000..d61a2383 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/SpritePreset.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 409f5a96-3322-429c-8a4b-43d6f203c994 + ImporterName: MaterialImporter + PrimaryAsset: ! 409f5a96-3322-429c-8a4b-43d6f203c994 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/TargetOutlineMaterial.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/TargetOutlineMaterial.mat new file mode 100644 index 00000000..0bb4bdb6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/TargetOutlineMaterial.mat @@ -0,0 +1,65 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 6acc73df-709b-435f-8bdc-71aa63ad5bef +- ! + CachedProperties: + - mainColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Front + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 2 + Defines: + [] + BlendMode: AlphaTest + Properties: + Port_Input1_N013: + typeIdx: 1 + value: 0.000000 + Port_Input1_N016: + typeIdx: 1 + value: 0.000000 + Port_Input1_N017: + typeIdx: 1 + value: 0.500000 + Port_Input1_N024: + typeIdx: 1 + value: 0.000000 + Port_Value1_N015: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N022: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + alphaTestThreshold: + typeIdx: 1 + value: 0.500000 + lineColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.039216, w: 1.000000} + lineWeight: + typeIdx: 1 + value: 0.250000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! ec569494-ce6b-47f9-8d51-46c18573e6b2 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/TargetOutlineMaterial.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/TargetOutlineMaterial.mat.meta new file mode 100644 index 00000000..dc4d0ba0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/TargetOutlineMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + ImporterName: MaterialImporter + PrimaryAsset: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/Text3DDefault.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/Text3DDefault.mat new file mode 100644 index 00000000..a2c6b933 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/Text3DDefault.mat @@ -0,0 +1,178 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 9e696858-3aaa-4c7a-8b16-3175e859a466 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - DROPLIST_BACK_CAP_MODE 2 + - DROPLIST_FRONT_CAP_MODE 2 + - DROPLIST_INNER_EDGE_MODE 1 + - DROPLIST_OUTER_EDGE_MODE 1 + - NODE_11_DROPLIST_ITEM 0 + - NODE_151_DROPLIST_ITEM 0 + - NODE_41_DROPLIST_ITEM 0 + - NODE_9_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + InnerEdgeEndingColor: + typeIdx: 5 + value: {x: 0.990000, y: 0.820000, z: 0.100000, w: 1.000000} + InnerEdgeGradientRamp: + typeIdx: 1 + value: 0.000000 + InnerEdgeStartingColor: + typeIdx: 5 + value: {x: 0.130000, y: 1.000000, z: 0.820000, w: 1.000000} + Port_Center_N025: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Center_N047: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Default_N010: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Default_N046: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Default_N077: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Default_N146: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Import_N017: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Import_N024: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Import_N026: + typeIdx: 3 + value: {x: 0.000000, y: -0.500000} + Port_Import_N058: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Input0_N035: + typeIdx: 1 + value: 0.000000 + Port_Input0_N066: + typeIdx: 1 + value: 0.000000 + Port_Input1_N014: + typeIdx: 1 + value: 0.500000 + Port_Input1_N034: + typeIdx: 1 + value: 0.000000 + Port_Input1_N035: + typeIdx: 1 + value: 1.000000 + Port_Input1_N043: + typeIdx: 1 + value: 0.250000 + Port_Input1_N054: + typeIdx: 1 + value: 0.500000 + Port_Input1_N065: + typeIdx: 1 + value: 0.000000 + Port_Input1_N066: + typeIdx: 1 + value: 1.000000 + Port_Input2_N034: + typeIdx: 1 + value: 1.000000 + Port_Input2_N065: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N023: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N033: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N153: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N155: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N023: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N033: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N153: + typeIdx: 1 + value: -1.010000 + Port_RangeMaxB_N155: + typeIdx: 1 + value: -1.510000 + Port_RangeMinA_N023: + typeIdx: 1 + value: 0.000000 + Port_RangeMinA_N033: + typeIdx: 1 + value: 0.000000 + Port_RangeMinA_N153: + typeIdx: 1 + value: -1.000000 + Port_RangeMinA_N155: + typeIdx: 1 + value: -1.000000 + Port_RangeMinB_N023: + typeIdx: 1 + value: -1.000000 + Port_RangeMinB_N033: + typeIdx: 1 + value: -1.000000 + Port_RangeMinB_N153: + typeIdx: 1 + value: -0.010000 + Port_RangeMinB_N155: + typeIdx: 1 + value: -0.510000 + PreviewEnabled: + typeIdx: 0 + value: 0 + backCapStartingColor: + typeIdx: 5 + value: {x: 0.990000, y: 0.820000, z: 0.100000, w: 1.000000} + frontCapStartingColor: + typeIdx: 5 + value: {x: 0.130000, y: 1.000000, z: 0.820000, w: 1.000000} + outerEdgeEndingColor: + typeIdx: 5 + value: {x: 0.990000, y: 0.820000, z: 0.100000, w: 1.000000} + outerEdgeGradientRamp: + typeIdx: 1 + value: 0.000000 + outerEdgeStartingColor: + typeIdx: 5 + value: {x: 0.130000, y: 1.000000, z: 0.820000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 667ea4a8-7c44-4bbb-8441-7a19d9c824f5 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/Text3DDefault.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/Text3DDefault.mat.meta new file mode 100644 index 00000000..8fbc9302 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Materials/Text3DDefault.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! e6189357-b3eb-4ed5-8a07-593c3328fc24 + ImporterName: MaterialImporter + PrimaryAsset: ! e6189357-b3eb-4ed5-8a07-593c3328fc24 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/BoxMesh.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/BoxMesh.mesh new file mode 100644 index 00000000..bd94ee8b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/BoxMesh.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c65bdf9dad5695ddcfd20a86f52c013a03c85e99de6217746dba1ee23fd6fff +size 2352 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/BoxMesh.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/BoxMesh.mesh.meta new file mode 100644 index 00000000..6fe179bc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/BoxMesh.mesh.meta @@ -0,0 +1,28 @@ +- ! + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + ImportedAssetIds: + FileMesh: ! b6e0f29f-f6a2-4cab-97c7-b0b7475b0cdc + ImporterName: FileMeshImporter + PrimaryAsset: ! b6e0f29f-f6a2-4cab-97c7-b0b7475b0cdc + PackageType: NotAPackage + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonCapsuleMesh.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonCapsuleMesh.mesh new file mode 100644 index 00000000..151d648c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonCapsuleMesh.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:948b3acc75b2e3d2cc70a462007d9292a5704f456707425e2b80b96f15a63d55 +size 26144 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonCapsuleMesh.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonCapsuleMesh.mesh.meta new file mode 100644 index 00000000..f314f244 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonCapsuleMesh.mesh.meta @@ -0,0 +1,27 @@ +- ! + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + texture0: Float + ImportedAssetIds: + FileMesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + ImporterName: FileMeshImporter + PrimaryAsset: ! a6361dc2-6074-45f7-b985-3924776714f4 + PackageType: NotAPackage + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonSphereMesh.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonSphereMesh.mesh new file mode 100644 index 00000000..a79a13a1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonSphereMesh.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68f6317782e59dc24091bf648f54844141715fdcdef4afd166b1cffd6309e23a +size 24672 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonSphereMesh.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonSphereMesh.mesh.meta new file mode 100644 index 00000000..cc7e836d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ButtonSphereMesh.mesh.meta @@ -0,0 +1,27 @@ +- ! + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + texture0: Float + ImportedAssetIds: + FileMesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + ImporterName: FileMeshImporter + PrimaryAsset: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + PackageType: NotAPackage + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Check.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Check.mesh new file mode 100644 index 00000000..2a5ce410 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Check.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b24feee8ccaea0ed22077dfc9bb6f66a8f1cdf28df96a1d1702df8c2afa3ebd +size 283248 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Check.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Check.mesh.meta new file mode 100644 index 00000000..eeebcfa1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Check.mesh.meta @@ -0,0 +1,28 @@ +- ! + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + ImportedAssetIds: + FileMesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + ImporterName: FileMeshImporter + PrimaryAsset: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + PackageType: NotAPackage + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/LeftHandMesh.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/LeftHandMesh.mesh new file mode 100644 index 00000000..320732d1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/LeftHandMesh.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a680b7074bc619e1e14a8eed383ee5a8b6fa1ec2cf6d62153dec2c27b80eb39 +size 185103 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/LeftHandMesh.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/LeftHandMesh.mesh.meta new file mode 100644 index 00000000..fc2823ae --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/LeftHandMesh.mesh.meta @@ -0,0 +1,29 @@ +- ! + ImporterSettings: ! + ModifiedVertexFormats: + boneData: Float + normal: Float + position: Float + tangent: Float + texture0: Float + ImportedAssetIds: + FileMesh: ! b2d2360c-44b0-4f99-a5ad-3651706e0e4b + ImporterName: FileMeshImporter + PrimaryAsset: ! b2d2360c-44b0-4f99-a5ad-3651706e0e4b + PackageType: NotAPackage + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlaneMesh.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlaneMesh.mesh new file mode 100644 index 00000000..861851fc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlaneMesh.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9385db440b20fced91ff6a93efa38d2fb30d0c7ea60377e4b25e346df83838c +size 1450 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlaneMesh.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlaneMesh.mesh.meta new file mode 100644 index 00000000..071b57a9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlaneMesh.mesh.meta @@ -0,0 +1,29 @@ +- ! + ImportedAssetIds: + FileMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + ImporterName: FileMeshImporter + PrimaryAsset: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + PackageType: NotAPackage + ImporterSettings: ! + ModifiedVertexFormats: + color: UNorm Byte + normal: Float + position: Float + tangent: Float + texture0: Float + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformCapsuleButton.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformCapsuleButton.mesh new file mode 100644 index 00000000..ddff1d62 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformCapsuleButton.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d6f2e918b7878a4a77f1662166ee6b6116917fca3c5dba4d495209819226243 +size 62389 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformCapsuleButton.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformCapsuleButton.mesh.meta new file mode 100644 index 00000000..ed1837d4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformCapsuleButton.mesh.meta @@ -0,0 +1,29 @@ +- ! + ImportedAssetIds: + FileMesh: ! 27665dcf-a50f-4925-b8cd-994e028b53ee + ImporterName: FileMeshImporter + PrimaryAsset: ! 27665dcf-a50f-4925-b8cd-994e028b53ee + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + texture1: Float + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformSphereButton.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformSphereButton.mesh new file mode 100644 index 00000000..770ff143 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformSphereButton.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:301d0e7dc9f2bfa29856cb67ef5d19df10610bb6c0a54bfd86127bfbb11110a3 +size 52755 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformSphereButton.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformSphereButton.mesh.meta new file mode 100644 index 00000000..dc11fb34 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/PlatformSphereButton.mesh.meta @@ -0,0 +1,29 @@ +- ! + ImportedAssetIds: + FileMesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + ImporterName: FileMeshImporter + PrimaryAsset: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + texture1: Float + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButton.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButton.mesh new file mode 100644 index 00000000..a2a5b50c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButton.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f70db46e6ca196a22100b252f69bca95c3c623c223d44069c7afcab403503c02 +size 23312 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButton.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButton.mesh.meta new file mode 100644 index 00000000..94e0b4d5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButton.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + ImporterName: FileMeshImporter + PrimaryAsset: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButtonGlow.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButtonGlow.mesh new file mode 100644 index 00000000..ad0b0bcf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButtonGlow.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3da2d2df231c3daf3ee674443715a6c3d137e09f32193859b03588dc7adc2b87 +size 5843 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButtonGlow.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButtonGlow.mesh.meta new file mode 100644 index 00000000..e69c4351 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/RoundButtonGlow.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + ImporterName: FileMeshImporter + PrimaryAsset: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarKnobMesh.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarKnobMesh.mesh new file mode 100644 index 00000000..ef49bee9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarKnobMesh.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ba7dc6984cc80609119a10b5040eeaf5587916b97bed56a3e66ec12e6bfcf24 +size 27447 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarKnobMesh.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarKnobMesh.mesh.meta new file mode 100644 index 00000000..29c6909c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarKnobMesh.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 2a58608b-008d-40f8-9627-d339311f2e1d + ImporterName: FileMeshImporter + PrimaryAsset: ! 2a58608b-008d-40f8-9627-d339311f2e1d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarMesh.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarMesh.mesh new file mode 100644 index 00000000..ac1f3c18 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarMesh.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fa7d72a634b2d34b1a963f9ae693d3424bef1e1aaef62a0ef0b147b14b7dbf4 +size 4315 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarMesh.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarMesh.mesh.meta new file mode 100644 index 00000000..facdb1d5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/ScrollBarMesh.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! e773364b-808e-4165-96b2-285eb99a10bb + ImporterName: FileMeshImporter + PrimaryAsset: ! e773364b-808e-4165-96b2-285eb99a10bb + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/Slider.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/Slider.mesh new file mode 100644 index 00000000..cedd9faa --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/Slider.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d153c535853a62d5b380b61edefb17eadd1df683d28e14391b2dfdeb6391022 +size 3168 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/Slider.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/Slider.mesh.meta new file mode 100644 index 00000000..908e896a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/PlatformUI/Slider.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! cf044647-787d-4060-835c-e324061093c6 + ImporterName: FileMeshImporter + PrimaryAsset: ! cf044647-787d-4060-835c-e324061093c6 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/RightHandMesh.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/RightHandMesh.mesh new file mode 100644 index 00000000..975fef37 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/RightHandMesh.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbd7618c6ff9a878f4eaeb717ceac55b6e70e1e3d001497f305ee0b2fa718672 +size 186717 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/RightHandMesh.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/RightHandMesh.mesh.meta new file mode 100644 index 00000000..0bfcc12f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/RightHandMesh.mesh.meta @@ -0,0 +1,29 @@ +- ! + ImporterSettings: ! + ModifiedVertexFormats: + boneData: Float + normal: Float + position: Float + tangent: Float + texture0: Float + ImportedAssetIds: + FileMesh: ! 735f7248-824f-40d5-8573-c0cfbbd03abf + ImporterName: FileMeshImporter + PrimaryAsset: ! 735f7248-824f-40d5-8573-c0cfbbd03abf + PackageType: NotAPackage + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ScrollBarSlider.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ScrollBarSlider.mesh new file mode 100644 index 00000000..621010be --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ScrollBarSlider.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c9706cb41978116909d546f051f3f8aeaf6e18b986b14120fe46071b580ea30 +size 1332 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ScrollBarSlider.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ScrollBarSlider.mesh.meta new file mode 100644 index 00000000..d3ca6555 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/ScrollBarSlider.mesh.meta @@ -0,0 +1,28 @@ +- ! + ImportedAssetIds: + FileMesh: ! 45bdf724-f7f0-4a8b-b6c9-191da2777f09 + ImporterName: FileMeshImporter + PrimaryAsset: ! 45bdf724-f7f0-4a8b-b6c9-191da2777f09 + PackageType: NotAPackage + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderSphereKnob.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderSphereKnob.mesh new file mode 100644 index 00000000..7710e7a2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderSphereKnob.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18aa8eaec76f1b6eb2d00b3940cba74b4e1f13ec640f420c08ce1edfbaa438b3 +size 24672 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderSphereKnob.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderSphereKnob.mesh.meta new file mode 100644 index 00000000..5ee54536 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderSphereKnob.mesh.meta @@ -0,0 +1,27 @@ +- ! + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + texture0: Float + ImportedAssetIds: + FileMesh: ! 653f78f0-69a4-44e6-89c0-28f443246019 + ImporterName: FileMeshImporter + PrimaryAsset: ! 653f78f0-69a4-44e6-89c0-28f443246019 + PackageType: NotAPackage + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderTrack.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderTrack.mesh new file mode 100644 index 00000000..4d7bf49d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderTrack.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b7d30649ac05f0d9ef69757c2c7fc33cab4a1a1f8cc79671d41679b4783c964 +size 29870 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderTrack.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderTrack.mesh.meta new file mode 100644 index 00000000..3adf2b2e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SliderTrack.mesh.meta @@ -0,0 +1,28 @@ +- ! + ImporterSettings: ! + ModifiedVertexFormats: + color: UNorm Short + normal: Float + position: Float + texture0: Float + ImportedAssetIds: + FileMesh: ! 7161c35c-04db-4586-834a-ad5ea015ddc2 + ImporterName: FileMeshImporter + PrimaryAsset: ! 7161c35c-04db-4586-834a-ad5ea015ddc2 + PackageType: NotAPackage + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SnapGhost_Mesh.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SnapGhost_Mesh.mesh new file mode 100644 index 00000000..7db9be0c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SnapGhost_Mesh.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dab94ae26eb33ae12f11aa53f877dbe10fc01260de6fd83fffd3a848c8afa27c +size 335911 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SnapGhost_Mesh.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SnapGhost_Mesh.mesh.meta new file mode 100644 index 00000000..2f22b46a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SnapGhost_Mesh.mesh.meta @@ -0,0 +1,26 @@ +- ! + ImportedAssetIds: + FileMesh: ! 19b05bf9-336a-4446-8bae-3900ec681e19 + ImporterName: FileMeshImporter + PrimaryAsset: ! 19b05bf9-336a-4446-8bae-3900ec681e19 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SphereMesh.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SphereMesh.mesh new file mode 100644 index 00000000..86f1f76f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SphereMesh.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a48c69a5c658d4fe453bf530f1aeb025e9333ef888b03684790eac043c584802 +size 33720 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SphereMesh.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SphereMesh.mesh.meta new file mode 100644 index 00000000..a3874a6e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/SphereMesh.mesh.meta @@ -0,0 +1,28 @@ +- ! + ImportedAssetIds: + FileMesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + ImporterName: FileMeshImporter + PrimaryAsset: ! be44ec86-6509-4953-8e7d-046468e6b199 + PackageType: NotAPackage + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Uncheck.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Uncheck.mesh new file mode 100644 index 00000000..2e3e749f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Uncheck.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3655bcada6282bbabe17e3867c5d1550e086e5dab6ba5912795621a511787e13 +size 96264 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Uncheck.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Uncheck.mesh.meta new file mode 100644 index 00000000..42063316 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Meshes/Uncheck.mesh.meta @@ -0,0 +1,28 @@ +- ! + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + ImportedAssetIds: + FileMesh: ! cc68878f-b960-4016-868f-3516db30e67c + ImporterName: FileMeshImporter + PrimaryAsset: ! cc68878f-b960-4016-868f-3516db30e67c + PackageType: NotAPackage + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerHighlight.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerHighlight.ss_graph new file mode 100644 index 00000000..a27650b5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerHighlight.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5101d4003eb317055a9a48bbf5b206c0231fc3afca3de4571da6f9b288f7fb21 +size 111132 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerHighlight.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerHighlight.ss_graph.meta new file mode 100644 index 00000000..86429047 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerHighlight.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! de1aadf5-822b-4f69-87cb-6a9cdd0297f4 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! de1aadf5-822b-4f69-87cb-6a9cdd0297f4 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerTipGlow.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerTipGlow.ss_graph new file mode 100644 index 00000000..e228b5da --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerTipGlow.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d996cb353bcd1b899378c7461bd32be21980155421f532b79acf411c6ee5b53 +size 96172 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerTipGlow.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerTipGlow.ss_graph.meta new file mode 100644 index 00000000..36c5e31a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/FingerTipGlow.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 96e91192-4b1d-43d4-9bfa-430910e799cf + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 96e91192-4b1d-43d4-9bfa-430910e799cf + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/HandOccluder.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/HandOccluder.ss_graph new file mode 100644 index 00000000..34bd5fc9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/HandOccluder.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4641f1b794fb2e59a9878089f1c07e343fbcfe89aaef9835ab7aaf67afd43ff +size 34082 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/HandOccluder.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/HandOccluder.ss_graph.meta new file mode 100644 index 00000000..e765898e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/HandOccluder.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! c5214352-c697-42bc-83ed-99cfc5efb1de + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! c5214352-c697-42bc-83ed-99cfc5efb1de + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/RadialGradientOcclusion.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/RadialGradientOcclusion.ss_graph new file mode 100644 index 00000000..f63089f1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/RadialGradientOcclusion.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25b7bd847106ffd0dd5a06a67c9cee255d31b253fff324c25cd8fe93cd4ac1c2 +size 526316 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/RadialGradientOcclusion.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/RadialGradientOcclusion.ss_graph.meta new file mode 100644 index 00000000..17054a2c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/BaseHandVisualsShaders/RadialGradientOcclusion.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! d078f682-530c-42dd-9988-3f029ffdf6e6 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! d078f682-530c-42dd-9988-3f029ffdf6e6 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/NormalBasedTargetOutline.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/NormalBasedTargetOutline.ss_graph new file mode 100644 index 00000000..20240bcd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/NormalBasedTargetOutline.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf58538c816dc977b4bd8f0d048ee1d43b347fe6b3d682b380c7546940b10e46 +size 126086 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/NormalBasedTargetOutline.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/NormalBasedTargetOutline.ss_graph.meta new file mode 100644 index 00000000..05bc0f42 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/NormalBasedTargetOutline.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 982bf177-d80f-4e3a-a455-7746b0fac73a + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 982bf177-d80f-4e3a-a455-7746b0fac73a + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchButton-ActiveOrInActive.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchButton-ActiveOrInActive.ss_graph new file mode 100644 index 00000000..771cf5f8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchButton-ActiveOrInActive.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bb0dfa67267dbd2e33f27aa36e06f23f4426704e9a8c5884d4c41d1e71175bd +size 936467 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchButton-ActiveOrInActive.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchButton-ActiveOrInActive.ss_graph.meta new file mode 100644 index 00000000..3d8c454b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchButton-ActiveOrInActive.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! bc0911b7-5cde-41ff-8801-7fb992bab649 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! bc0911b7-5cde-41ff-8801-7fb992bab649 + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchDarkRadial.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchDarkRadial.ss_graph new file mode 100644 index 00000000..28c25e20 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchDarkRadial.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:899ed578b2add620a7dc6f22dc26e065f49cacea1d9431c0a1730e1056ebc073 +size 960425 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchDarkRadial.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchDarkRadial.ss_graph.meta new file mode 100644 index 00000000..ffddf8ba --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PinchDarkRadial.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! 00f14031-5da3-41ae-9b33-273f1600bbfc + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 00f14031-5da3-41ae-9b33-273f1600bbfc + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonHover.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonHover.ss_graph new file mode 100644 index 00000000..e3bfeb3e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonHover.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:211bec92515ffa16af7961a726aedb82fede24ad1ad9279259c917874f6b0cbf +size 285737 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonHover.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonHover.ss_graph.meta new file mode 100644 index 00000000..b31d177e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonHover.ss_graph.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 9d3b32be-cf41-459c-9f37-9b34c96b2f5b + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 9d3b32be-cf41-459c-9f37-9b34c96b2f5b + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonIdle.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonIdle.ss_graph new file mode 100644 index 00000000..b0a704d1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonIdle.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2c8347214817fe3da94ed216e690f3ac76097b1efbab26276ed113ce5013a9c +size 191083 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonIdle.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonIdle.ss_graph.meta new file mode 100644 index 00000000..e23eb3d0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonIdle.ss_graph.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 7d80fe73-0251-489d-87a7-57e3796e1fef + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 7d80fe73-0251-489d-87a7-57e3796e1fef + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonPinched.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonPinched.ss_graph new file mode 100644 index 00000000..035b8260 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonPinched.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c48e2b5f3d7160ad4b2fdf74e91039e82c1d6cd120de1193e1bed42f5103118e +size 168579 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonPinched.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonPinched.ss_graph.meta new file mode 100644 index 00000000..9e13100d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ButtonPinched.ss_graph.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! ef904425-39fe-4376-9657-20bb7aa3bab8 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! ef904425-39fe-4376-9657-20bb7aa3bab8 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonHover.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonHover.ss_graph new file mode 100644 index 00000000..710d1016 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonHover.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7821f9abdc8b4ee6ae2c491c722df5b4dc72d50235f3654e24b2ceb03663165 +size 283763 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonHover.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonHover.ss_graph.meta new file mode 100644 index 00000000..97820663 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonHover.ss_graph.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! ee5ae376-9d34-426a-9816-ef6e95887a4b + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! ee5ae376-9d34-426a-9816-ef6e95887a4b + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonIdle.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonIdle.ss_graph new file mode 100644 index 00000000..ce5cb0fa --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonIdle.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b397d123cade41ebd0582f2df8468d999e6f4eac1542ed2c6cde6363f2ffa8e1 +size 275368 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonIdle.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonIdle.ss_graph.meta new file mode 100644 index 00000000..eb09f36a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonIdle.ss_graph.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! c6c08f7c-2a01-4ad2-be2f-19b95217f619 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! c6c08f7c-2a01-4ad2-be2f-19b95217f619 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonPinched.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonPinched.ss_graph new file mode 100644 index 00000000..e104951d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonPinched.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6ea33e48d5edd22c0ea40101807a809d8770e8611ceee4dd41de2241d03b76a +size 236584 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonPinched.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonPinched.ss_graph.meta new file mode 100644 index 00000000..2f654f89 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/CapsuleButtonPinched.ss_graph.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 602967c5-1750-4ffe-ad13-97e48a247107 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 602967c5-1750-4ffe-ad13-97e48a247107 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowHover.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowHover.ss_graph new file mode 100644 index 00000000..b9d9ca09 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowHover.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02fdc506930d1d40044300339decae3e4e0746a48fad4284e049357f82d93166 +size 48978 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowHover.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowHover.ss_graph.meta new file mode 100644 index 00000000..a9751729 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowHover.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! d466d02c-9a9b-4da4-b16f-df10edd8689b + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! d466d02c-9a9b-4da4-b16f-df10edd8689b + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowIdle.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowIdle.ss_graph new file mode 100644 index 00000000..eb128682 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowIdle.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62e25ac31ec67cac5499bd315e738c3bd6ba7037daaa70d4d608ec22f81836c5 +size 29247 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowIdle.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowIdle.ss_graph.meta new file mode 100644 index 00000000..65185fd2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowIdle.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! de214192-97c6-4beb-9f85-a0690bf913c3 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! de214192-97c6-4beb-9f85-a0690bf913c3 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowPinched.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowPinched.ss_graph new file mode 100644 index 00000000..8d3d37b3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowPinched.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c83c6ea6746e4780031e71f29f81ddb720322fed9c7714754e0d5302ccc7740 +size 48978 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowPinched.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowPinched.ss_graph.meta new file mode 100644 index 00000000..644db9b3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonGlowPinched.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 29ced12e-5dc6-4e30-85c0-2155e5b3cf0f + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 29ced12e-5dc6-4e30-85c0-2155e5b3cf0f + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonHover.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonHover.ss_graph new file mode 100644 index 00000000..6c4470a0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonHover.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:430653cd3fb23f1147703b582b5ab225b5cc441ac724ae503d149b1fa5ea9b89 +size 156164 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonHover.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonHover.ss_graph.meta new file mode 100644 index 00000000..6152712d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonHover.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! f7c880b8-6124-4361-a6a7-5c1e2dfbd1e8 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! f7c880b8-6124-4361-a6a7-5c1e2dfbd1e8 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonPinched.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonPinched.ss_graph new file mode 100644 index 00000000..1940e382 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonPinched.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54fa6a823672588f9b499875c5db07de5286304595c828ed218706b3e4213a53 +size 154022 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonPinched.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonPinched.ss_graph.meta new file mode 100644 index 00000000..7c4bd618 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButtonPinched.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 522617ab-a079-411e-86a0-59735e63628f + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 522617ab-a079-411e-86a0-59735e63628f + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButton_Idle.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButton_Idle.ss_graph new file mode 100644 index 00000000..61db75f0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButton_Idle.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8147cc50fc6c60a360127b3eef5dac0d6daf464bdd8f19d0a987df604f310382 +size 144664 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButton_Idle.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButton_Idle.ss_graph.meta new file mode 100644 index 00000000..f33404fa --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/RoundButton_Idle.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! a025bbf8-b6d5-486a-b898-297484fc420a + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! a025bbf8-b6d5-486a-b898-297484fc420a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollBackground.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollBackground.ss_graph new file mode 100644 index 00000000..fee7a979 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollBackground.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edddc6972fc0cc487139148c87e95f75e24cabfc8c45332c5252a6301c307ee9 +size 124356 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollBackground.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollBackground.ss_graph.meta new file mode 100644 index 00000000..c3b11414 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollBackground.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! e0b42284-7c64-43ce-a8ce-4dbea7265103 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! e0b42284-7c64-43ce-a8ce-4dbea7265103 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonHover.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonHover.ss_graph new file mode 100644 index 00000000..5cb4f3ff --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonHover.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f785165a690b7be6b2a703c851fbf3ebd34b9451cf6af4e321ef57495c144d0 +size 438622 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonHover.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonHover.ss_graph.meta new file mode 100644 index 00000000..c91bd478 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonHover.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! fb70ffa2-0778-4a0a-8a24-08e0b06a1411 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! fb70ffa2-0778-4a0a-8a24-08e0b06a1411 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonIdle.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonIdle.ss_graph new file mode 100644 index 00000000..eeb23cf5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonIdle.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ed0d506f5140ecf30dfe01aefbaddb3da6e09e3bc34e34dbea1b1014d080c6c +size 294417 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonIdle.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonIdle.ss_graph.meta new file mode 100644 index 00000000..9fb37ac1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonIdle.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 22dbfba0-6fbd-4400-a9ed-3bbf920cbf9f + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 22dbfba0-6fbd-4400-a9ed-3bbf920cbf9f + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonPinched.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonPinched.ss_graph new file mode 100644 index 00000000..092aeb76 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonPinched.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fa12972c0e6d676f120589819cd469b0c97e8d7e1dc88c7f85c8008d00b7f93 +size 240643 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonPinched.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonPinched.ss_graph.meta new file mode 100644 index 00000000..7a0374ce --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/ScrollButtonPinched.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! e6422c40-50fe-4742-abc2-7b0b120b3af8 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! e6422c40-50fe-4742-abc2-7b0b120b3af8 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/Slider_Platform.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/Slider_Platform.ss_graph new file mode 100644 index 00000000..9d24f08e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/Slider_Platform.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72e79354f3538c6ee9f97ae42c5b5efab83d73fcdb5460890c40994356cc1282 +size 78631 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/Slider_Platform.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/Slider_Platform.ss_graph.meta new file mode 100644 index 00000000..c786b9a2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/Slider_Platform.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 1fc0b4e0-d98d-4292-b562-e490cf8dd56c + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 1fc0b4e0-d98d-4292-b562-e490cf8dd56c + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledHover.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledHover.ss_graph new file mode 100644 index 00000000..d2f46a1e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledHover.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16022c306f1df7dcc0c59a9745b62b78c48012c792a7c4a2d07a87e015c6d3fc +size 268459 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledHover.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledHover.ss_graph.meta new file mode 100644 index 00000000..9be6ac9c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledHover.ss_graph.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! e8b3d4cf-9228-44fd-aca7-acf238987d10 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! e8b3d4cf-9228-44fd-aca7-acf238987d10 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledPinched.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledPinched.ss_graph new file mode 100644 index 00000000..ca4c7aab --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledPinched.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27f47076a5e080db2e70601e33f8f44ae66839b417f1e7f6d93741e6d5811b04 +size 256959 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledPinched.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledPinched.ss_graph.meta new file mode 100644 index 00000000..f1ad913d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/PlatformUI/StateButtonToggledPinched.ss_graph.meta @@ -0,0 +1,17 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! d78b8125-853c-40af-9579-f108b34a0fed + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! d78b8125-853c-40af-9579-f108b34a0fed + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScaleBasedTargetOutline.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScaleBasedTargetOutline.ss_graph new file mode 100644 index 00000000..589c6909 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScaleBasedTargetOutline.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdfe5fc6ff41239f71a8b6ed4e1b5256441d9e8a2c16b6707874afb437afffb1 +size 44171 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScaleBasedTargetOutline.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScaleBasedTargetOutline.ss_graph.meta new file mode 100644 index 00000000..a845bcfe --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScaleBasedTargetOutline.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 1daef860-620d-4476-b637-b1d381b1f510 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 1daef860-620d-4476-b637-b1d381b1f510 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScrollBarSlider.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScrollBarSlider.ss_graph new file mode 100644 index 00000000..edee36ac --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScrollBarSlider.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d1242f9c7bb5eb0e132e01b7c6135c676e163052a9c54e4ce543341f4b62ea7 +size 37823 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScrollBarSlider.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScrollBarSlider.ss_graph.meta new file mode 100644 index 00000000..d1803daf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ScrollBarSlider.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 5883c506-6f6a-48d3-9b83-12200015dc65 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 5883c506-6f6a-48d3-9b83-12200015dc65 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/PinchButton-Default.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/PinchButton-Default.ss_graph new file mode 100644 index 00000000..dae1b5d0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/PinchButton-Default.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:087f05c738a8e72724d444e9b3da0f8fd5985964590f7f7a71a550ab1e90ac72 +size 958588 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/PinchButton-Default.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/PinchButton-Default.ss_graph.meta new file mode 100644 index 00000000..a42daf9d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/PinchButton-Default.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! 18eae901-de97-4937-8f54-2dd833b60d64 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 18eae901-de97-4937-8f54-2dd833b60d64 + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/Slider.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/Slider.ss_graph new file mode 100644 index 00000000..c344bafa --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/Slider.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebd1387f370a679e213e73f2a6bf945f1df9fed5e8b309be586b0c07763e5c04 +size 1004566 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/Slider.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/Slider.ss_graph.meta new file mode 100644 index 00000000..570b9b03 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SliderShaders/Slider.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! 61657298-e494-4718-8624-6c13724fba5a + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 61657298-e494-4718-8624-6c13724fba5a + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SpritePreset.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SpritePreset.ss_graph new file mode 100644 index 00000000..90b1283f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SpritePreset.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2822a574174679230e64213eadcc87794821bc75a83c817321b072d4e9e5d3e7 +size 513589 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SpritePreset.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SpritePreset.ss_graph.meta new file mode 100644 index 00000000..141085b6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/SpritePreset.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! c4329789-0e5d-4149-a72a-f94c1c89157c + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! c4329789-0e5d-4149-a72a-f94c1c89157c + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/TargetOutline.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/TargetOutline.ss_graph new file mode 100644 index 00000000..8ec62a65 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/TargetOutline.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2805df02b851292a637dbb92ed03efe876535a1e2ce165be007bac3fc0c336dc +size 121920 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/TargetOutline.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/TargetOutline.ss_graph.meta new file mode 100644 index 00000000..43567c3b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/TargetOutline.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! ec569494-ce6b-47f9-8d51-46c18573e6b2 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! ec569494-ce6b-47f9-8d51-46c18573e6b2 + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/Text3DDefault.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/Text3DDefault.ss_graph new file mode 100644 index 00000000..3dd67cd2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/Text3DDefault.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1e1c87111000ffa579c143f266221faa14c779b5b09db90a8f82e7b6a2daeba +size 961934 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/Text3DDefault.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/Text3DDefault.ss_graph.meta new file mode 100644 index 00000000..c857db15 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/Text3DDefault.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! 667ea4a8-7c44-4bbb-8441-7a19d9c824f5 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 667ea4a8-7c44-4bbb-8441-7a19d9c824f5 + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOff.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOff.ss_graph new file mode 100644 index 00000000..206a7990 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOff.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78ed8d332ad0ee9bb166239c0ad0431be52404c3b9847e028a6a5c181619118f +size 884031 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOff.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOff.ss_graph.meta new file mode 100644 index 00000000..069519d8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOff.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! dcde51ce-7880-40e6-8cea-1c0190718579 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! dcde51ce-7880-40e6-8cea-1c0190718579 + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOn.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOn.ss_graph new file mode 100644 index 00000000..dae1b5d0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOn.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:087f05c738a8e72724d444e9b3da0f8fd5985964590f7f7a71a550ab1e90ac72 +size 958588 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOn.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOn.ss_graph.meta new file mode 100644 index 00000000..082800d1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOn.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! 29a74e83-c179-4b20-8abb-b6fff71cb08b + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 29a74e83-c179-4b20-8abb-b6fff71cb08b + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOnSelect.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOnSelect.ss_graph new file mode 100644 index 00000000..44a94e77 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOnSelect.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:776814e11593e72134306f349b22f94a753d6013d34602edcb85259d73b23fbf +size 961575 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOnSelect.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOnSelect.ss_graph.meta new file mode 100644 index 00000000..2102c4a6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/ToggleOnSelect.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! cda905fe-9d9e-4ca3-b7e9-30ae90dd980c + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! cda905fe-9d9e-4ca3-b7e9-30ae90dd980c + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/simple_pbr.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/simple_pbr.ss_graph new file mode 100644 index 00000000..0fa96916 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/simple_pbr.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ad8a48dd47f2422082cab388d4995a3627717468f0edbaff93fb855417c9d6d +size 63254 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/simple_pbr.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/simple_pbr.ss_graph.meta new file mode 100644 index 00000000..5040082a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Shaders/simple_pbr.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! 5ecbacc7-af69-4b4c-99e8-8a06fd7376e4 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 5ecbacc7-af69-4b4c-99e8-8a06fd7376e4 + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/2DBitmojiAvatar.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/2DBitmojiAvatar.png new file mode 100644 index 00000000..e0d19a73 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/2DBitmojiAvatar.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad27df296c428af4dfc793f06cee018b04ff0c1d8d192ae47bfd828fe783f9de +size 19073 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/2DBitmojiAvatar.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/2DBitmojiAvatar.png.meta new file mode 100644 index 00000000..c7807faf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/2DBitmojiAvatar.png.meta @@ -0,0 +1,19 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Texture: ! b906a729-a545-43d2-a7d4-7e8c8e9acfb1 + ImporterName: FileTextureImporter + PrimaryAsset: ! b906a729-a545-43d2-a7d4-7e8c8e9acfb1 + PackageType: NotAPackage + AssetDataMap: + Texture: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + Level: None + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Base.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Base.png new file mode 100644 index 00000000..6e1f3c6e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Base.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:315749b2dbb79d2e23504598a4fd86498cbd46c67e63607bd9b7037f99ace7bf +size 85 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Base.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Base.png.meta new file mode 100644 index 00000000..24b658cb --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Base.png.meta @@ -0,0 +1,19 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Texture: ! 3979da00-6f82-42af-a577-c30df444e15e + ImporterName: FileTextureImporter + PrimaryAsset: ! 3979da00-6f82-42af-a577-c30df444e15e + PackageType: NotAPackage + AssetDataMap: + Texture: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + Level: None + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/Glow.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/Glow.png new file mode 100644 index 00000000..8cc3e12b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/Glow.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edb43408842f9687d4f26e5bbaddc66b0553d3d85547061623641521f424d9a2 +size 9174 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/Glow.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/Glow.png.meta new file mode 100644 index 00000000..c2b199a5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/Glow.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 434234ae-e5c8-4178-b873-f1ad496fc142 + ImporterName: FileTextureImporter + PrimaryAsset: ! 434234ae-e5c8-4178-b873-f1ad496fc142 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Texture: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + Level: None + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMask.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMask.png new file mode 100644 index 00000000..ff95a83e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMask.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dafe5742f1c8abd24b2a53eb401b5f4a0cfee16b55973e2a5e0030f1a354a32 +size 36006 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMask.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMask.png.meta new file mode 100644 index 00000000..8722eb79 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMask.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 6d65d910-e491-4ed9-ab91-c187bdb1baa4 + ImporterName: FileTextureImporter + PrimaryAsset: ! 6d65d910-e491-4ed9-ab91-c187bdb1baa4 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMaskColored.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMaskColored.png new file mode 100644 index 00000000..fa159592 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMaskColored.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:559dce1a6b9ed5401e2b1c2ba3d99f876617d2f906aa9f4777fb99b2b307e169 +size 20991 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMaskColored.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMaskColored.png.meta new file mode 100644 index 00000000..586ced97 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshNewMaskColored.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 7b7a2bf5-e391-465f-aa24-aba1d2b4b8d5 + ImporterName: FileTextureImporter + PrimaryAsset: ! 7b7a2bf5-e391-465f-aa24-aba1d2b4b8d5 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshPinchTexture.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshPinchTexture.png new file mode 100644 index 00000000..5d7c55fc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshPinchTexture.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0eaf57fbd93cdc0a10e55d0dc1a42566a6f5d510d3119c460c15096c1a2e05bd +size 9061 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshPinchTexture.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshPinchTexture.png.meta new file mode 100644 index 00000000..e5961f67 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshPinchTexture.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! e0a110ae-6b49-431f-9924-e602351e9a0c + ImporterName: FileTextureImporter + PrimaryAsset: ! e0a110ae-6b49-431f-9924-e602351e9a0c + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Texture: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + Level: None + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshTapTexture.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshTapTexture.png new file mode 100644 index 00000000..63bc4d6c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshTapTexture.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11b83a2c5fc89395a327306a824fd82334260b6fe3e68887fef79f91f26c0635 +size 2980 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshTapTexture.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshTapTexture.png.meta new file mode 100644 index 00000000..602d923c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/handMeshTapTexture.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! f5355afd-bcbc-4434-bcf9-9ff4c341eb87 + ImporterName: FileTextureImporter + PrimaryAsset: ! f5355afd-bcbc-4434-bcf9-9ff4c341eb87 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Texture: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + Level: None + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/occlusionGradient.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/occlusionGradient.png new file mode 100644 index 00000000..61382c7e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/occlusionGradient.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc4735ed49fdcdcf8a73db23af6ee5f0a9ed83203ff4388844e501050b82b31f +size 7759 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/occlusionGradient.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/occlusionGradient.png.meta new file mode 100644 index 00000000..a6e4584a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/BaseHandVisualsTextures/occlusionGradient.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 738d604c-2468-45f6-b1a3-e787daaf9704 + ImporterName: FileTextureImporter + PrimaryAsset: ! 738d604c-2468-45f6-b1a3-e787daaf9704 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Texture: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + Level: None + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/MaterialParams.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/MaterialParams.png new file mode 100644 index 00000000..aab80b6c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/MaterialParams.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43e88364ab1579e9befcf66472f2dc4ee13615737bb65bf807854a1c030f2e3f +size 605 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/MaterialParams.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/MaterialParams.png.meta new file mode 100644 index 00000000..0e038951 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/MaterialParams.png.meta @@ -0,0 +1,19 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Texture: ! a17dab59-a405-45d9-966e-8e432da382e4 + ImporterName: FileTextureImporter + PrimaryAsset: ! a17dab59-a405-45d9-966e-8e432da382e4 + PackageType: NotAPackage + AssetDataMap: + Texture: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + Level: None + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Normal.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Normal.png new file mode 100644 index 00000000..3dd0618e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Normal.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34aabdfd6bfc654303f61e85a0bf9b6e64236783d5c8ee3b47b07665e2278f1d +size 85 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Normal.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Normal.png.meta new file mode 100644 index 00000000..cfa5574d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Normal.png.meta @@ -0,0 +1,19 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Texture: ! 449cee8a-1b47-4f1b-a31a-dfa6740f32ff + ImporterName: FileTextureImporter + PrimaryAsset: ! 449cee8a-1b47-4f1b-a31a-dfa6740f32ff + PackageType: NotAPackage + AssetDataMap: + Texture: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + Level: None + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowDown.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowDown.png new file mode 100644 index 00000000..1ff0e998 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowDown.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97de283583c06ab34921f0962685d78252b9c655e3b157cf035fe344c7979db4 +size 828 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowDown.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowDown.png.meta new file mode 100644 index 00000000..fa211ef5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowDown.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 26d9d10e-0b53-4ffc-b516-b290c54fcd35 + ImporterName: FileTextureImporter + PrimaryAsset: ! 26d9d10e-0b53-4ffc-b516-b290c54fcd35 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + CompressorName: None + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowUp.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowUp.png new file mode 100644 index 00000000..0c8c3ea6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowUp.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d73e3bab89cada7803f3674b262f8186f62909645771a44ab3944f9b0d17b957 +size 2087 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowUp.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowUp.png.meta new file mode 100644 index 00000000..acdb107e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/ArrowUp.png.meta @@ -0,0 +1,18 @@ +- ! + ImportedAssetIds: + Texture: ! 08e7c6e6-8dbe-40fa-bf02-ebd5c9660ca1 + ImporterName: FileTextureImporter + PrimaryAsset: ! 08e7c6e6-8dbe-40fa-bf02-ebd5c9660ca1 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Close.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Close.png new file mode 100644 index 00000000..d6564542 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Close.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ae322e8d086ce80f55de405433f17f7aea94898f3c59cd79f2d4168c6ae3c87 +size 4481 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Close.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Close.png.meta new file mode 100644 index 00000000..8e21f7fe --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Close.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 30e860be-6510-4921-9f0e-af80eb8844cb + ImporterName: FileTextureImporter + PrimaryAsset: ! 30e860be-6510-4921-9f0e-af80eb8844cb + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + CompressorName: None + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconBlack.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconBlack.png new file mode 100644 index 00000000..702f805b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconBlack.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91cbdad7cfc6b685dfa3dd98752c6de2b01bce379a699f3c79d93b2dded2f8d2 +size 5841 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconBlack.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconBlack.png.meta new file mode 100644 index 00000000..8292bda0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconBlack.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 5112d79b-d07a-4bb1-baaa-686e1b308311 + ImporterName: FileTextureImporter + PrimaryAsset: ! 5112d79b-d07a-4bb1-baaa-686e1b308311 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconWhite.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconWhite.png new file mode 100644 index 00000000..d1b25100 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconWhite.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfd8e3bd90d28b7f908c256b2296cd92bbb0027423fe49cd6622b2625df13e4a +size 6095 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconWhite.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconWhite.png.meta new file mode 100644 index 00000000..d7767537 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/FollowIconWhite.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 022ed882-751f-432f-8120-bb3d40959a20 + ImporterName: FileTextureImporter + PrimaryAsset: ! 022ed882-751f-432f-8120-bb3d40959a20 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Image.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Image.png new file mode 100644 index 00000000..58a6f6f3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Image.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1acb4632dfb6321095d5d89cf6bc1809d0a7f22892617ff09fb95d483563e68 +size 6363 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Image.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Image.png.meta new file mode 100644 index 00000000..e2b51eea --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Image.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 919ebe17-d82b-4214-9c3f-52365488f43d + ImporterName: FileTextureImporter + PrimaryAsset: ! 919ebe17-d82b-4214-9c3f-52365488f43d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Size + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Mask_simple_reflection_ellipse.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Mask_simple_reflection_ellipse.png new file mode 100644 index 00000000..7126bf0e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Mask_simple_reflection_ellipse.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d0a9192c6950bc74ec00cf94b76773f8230a7b40c375e2eb8595ad3e754e8bc +size 12863 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Mask_simple_reflection_ellipse.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Mask_simple_reflection_ellipse.png.meta new file mode 100644 index 00000000..29f9771d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/Mask_simple_reflection_ellipse.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 816f16c5-007d-4d7f-937c-192b15901cdc + ImporterName: FileTextureImporter + PrimaryAsset: ! 816f16c5-007d-4d7f-937c-192b15901cdc + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + CompressorName: None + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle.jpg new file mode 100644 index 00000000..bb5c1a52 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98589b58ff5d117e6e898f49d0b5505203bff6951668bc4bf110986d6287f27c +size 60024 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle.jpg.meta new file mode 100644 index 00000000..ef3103dd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle.jpg.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! bf1666aa-7785-445d-9ba4-3e41d6472446 + ImporterName: FileTextureImporter + PrimaryAsset: ! bf1666aa-7785-445d-9ba4-3e41d6472446 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + CompressorName: None + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle_05.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle_05.jpg new file mode 100644 index 00000000..94152464 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle_05.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:484b807e838e0993ba65607621b2d553b1eae082857c8a6ba7a82055d005ac83 +size 7786 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle_05.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle_05.jpg.meta new file mode 100644 index 00000000..90f19b24 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleIdle_05.jpg.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! a003dca6-fa76-4dc4-b33e-4a38fc750db9 + ImporterName: FileTextureImporter + PrimaryAsset: ! a003dca6-fa76-4dc4-b33e-4a38fc750db9 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_02.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_02.jpg new file mode 100644 index 00000000..cc732bdc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_02.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:355bc35c7f1a736d523f700717983d46d8618ded5c41a03e68cce7a5ec6b3ff2 +size 21966 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_02.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_02.jpg.meta new file mode 100644 index 00000000..83c0338a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_02.jpg.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! ac2798fc-6df2-44d0-8d4e-871d24cccc4d + ImporterName: FileTextureImporter + PrimaryAsset: ! ac2798fc-6df2-44d0-8d4e-871d24cccc4d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_05.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_05.jpg new file mode 100644 index 00000000..90dd24e5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_05.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b4997e66b963e51a9674dbcec27917028c7511494bd8de98a2e6fa6c979e71b +size 13418 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_05.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_05.jpg.meta new file mode 100644 index 00000000..06f1e02c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_05.jpg.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 825f641e-3daf-441b-9f64-03923bc7bb4b + ImporterName: FileTextureImporter + PrimaryAsset: ! 825f641e-3daf-441b-9f64-03923bc7bb4b + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + CompressorName: None + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_06.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_06.jpg new file mode 100644 index 00000000..34b04f30 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_06.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4145e4073030e4c9108e14d5af2ada2aa784b55acb3e9bb60602b3d3d331aead +size 5638 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_06.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_06.jpg.meta new file mode 100644 index 00000000..85a23e06 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/SimpleRefl_06.jpg.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! aa5ac2d5-2844-4a73-a2a2-ca671eb71e09 + ImporterName: FileTextureImporter + PrimaryAsset: ! aa5ac2d5-2844-4a73-a2a2-ca671eb71e09 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + CompressorName: None + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + NativePackageRoot: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/UI_glow.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/UI_glow.jpg new file mode 100644 index 00000000..98fd48ef --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/UI_glow.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a2058d9550cd4a9b7b884aeba1f3f9352f3b5f596dc678d3b3eb3e117dcc78a +size 15703 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/UI_glow.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/UI_glow.jpg.meta new file mode 100644 index 00000000..a9ce4188 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/PlatformUI/UI_glow.jpg.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 482f2ef4-e496-4cf0-933d-dd9d94b3c901 + ImporterName: FileTextureImporter + PrimaryAsset: ! 482f2ef4-e496-4cf0-933d-dd9d94b3c901 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Active.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Active.png new file mode 100644 index 00000000..211ab4e0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Active.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:feb5fbe4dee1662976ac2621368fcf9d02dc4f612e8fafc2c09c239321bad3a1 +size 6080 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Active.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Active.png.meta new file mode 100644 index 00000000..6fc267ac --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Active.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! ede79e05-2456-4fe6-895b-518ddb32ee0a + ImporterName: FileTextureImporter + PrimaryAsset: ! ede79e05-2456-4fe6-895b-518ddb32ee0a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Inactive.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Inactive.png new file mode 100644 index 00000000..36335b57 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Inactive.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9eb1ffec2e1b064d1ffee805fa9d0d40dad55bdcc637c6afb908fb563082a658 +size 1398 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Inactive.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Inactive.png.meta new file mode 100644 index 00000000..0587e7ac --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle-Inactive.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 611e2abb-fb0f-4e2f-8c27-57f7a83eef9d + ImporterName: FileTextureImporter + PrimaryAsset: ! 611e2abb-fb0f-4e2f-8c27-57f7a83eef9d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle.png new file mode 100644 index 00000000..e5d65328 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1dd688ae5a172dac4a0fa8cd3dc5b1686c02bcf9725a76d9af51299b883ff32 +size 436 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle.png.meta new file mode 100644 index 00000000..8f9af31a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/Rectangle.png.meta @@ -0,0 +1,19 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Texture: ! 6f2697ee-39f9-4372-b974-11338f2534f3 + ImporterName: FileTextureImporter + PrimaryAsset: ! 6f2697ee-39f9-4372-b974-11338f2534f3 + PackageType: NotAPackage + AssetDataMap: + Texture: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + Level: None + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKContainerExampleImage.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKContainerExampleImage.jpg new file mode 100644 index 00000000..3d6bed88 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKContainerExampleImage.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4d3ede05da00933ed4301b21002db303921ed13a557f500efc3b2824444c223 +size 12547 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKContainerExampleImage.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKContainerExampleImage.jpg.meta new file mode 100644 index 00000000..8655efca --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKContainerExampleImage.jpg.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 0f94ff6a-ac94-4341-9937-de5a562687da + ImporterName: FileTextureImporter + PrimaryAsset: ! 0f94ff6a-ac94-4341-9937-de5a562687da + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKLogo.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKLogo.png new file mode 100644 index 00000000..d986791f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKLogo.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e2f0da760d047968444bbf2b55f8cf68ae7c4d268d73ce2617055924f780ad9 +size 116159 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKLogo.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKLogo.png.meta new file mode 100644 index 00000000..482e3056 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/SIKLogo.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! b104c4df-91ff-4a59-8bb8-71a02a096038 + ImporterName: FileTextureImporter + PrimaryAsset: ! b104c4df-91ff-4a59-8bb8-71a02a096038 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! + Level: Medium + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/ScrollBarRectangle.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/ScrollBarRectangle.png new file mode 100644 index 00000000..36b25458 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/ScrollBarRectangle.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74876ede3ae8bd9bebf16936ba726f734caef8cab960d93028d5db6ad2feecfa +size 10002 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/ScrollBarRectangle.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/ScrollBarRectangle.png.meta new file mode 100644 index 00000000..10df165e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Assets/Textures/ScrollBarRectangle.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 76b2ec40-1edc-487a-af2c-371af82118ae + ImporterName: FileTextureImporter + PrimaryAsset: ! 76b2ec40-1edc-487a-af2c-371af82118ae + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Texture: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + Level: None + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ButtonFeedback.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ButtonFeedback.ts new file mode 100644 index 00000000..d7fce366 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ButtonFeedback.ts @@ -0,0 +1,544 @@ +import {Interactable} from "../Interaction/Interactable/Interactable" +import {SIK} from "../../SIK" +import {ToggleButton} from "../UI/ToggleButton/ToggleButton" +import {validate} from "../../Utils/validate" + +const PINCH_BUTTON: number = 0 +const TOGGLE_BUTTON: number = 1 +const STATE_BUTTON: number = 2 + +/** + * This class provides visual feedback for different types of buttons, such as Pinch Button, Toggle Button, and State Button. It allows customization of the button's appearance and behavior based on its state. + */ +@component +export class ButtonFeedback extends BaseScriptComponent { + @input("int") + @widget( + new ComboBoxWidget([ + new ComboBoxItem("Pinch Button", 0), + new ComboBoxItem("Toggle Button", 1), + new ComboBoxItem("State Button", 2), + ]), + ) + buttonType: number = 0 + @ui.separator + @input + renderMeshVisual!: RenderMeshVisual + @input + @showIf("buttonType", 0) + useGlowMesh: boolean = false + @input + @allowUndefined + @showIf("useGlowMesh", true) + glowRenderMeshVisual?: RenderMeshVisual + @input + maxBlendShapeWeight: number = 1.0 + @ui.separator + @input + meshBlendShapeName: string = "Pinch" + @input + meshIdleMaterial!: Material + @input + meshHoverMaterial!: Material + @input + meshPinchedMaterial!: Material + @ui.separator + @input + @allowUndefined + @showIf("useGlowMesh", true) + glowBlendShapeName: string = "Pinch" + @input("Asset.Material") + @allowUndefined + @showIf("useGlowMesh", true) + glowIdleMaterial: Material | undefined + @input("Asset.Material") + @allowUndefined + @showIf("useGlowMesh", true) + glowHoverMaterial: Material | undefined + @input("Asset.Material") + @allowUndefined + @showIf("useGlowMesh", true) + glowPinchedMaterial: Material | undefined + @input("Asset.Material") + @showIf("buttonType", 1) + @allowUndefined + meshToggledPinchedMaterial: Material | undefined + @input("Asset.Material") + @showIf("buttonType", 1) + @allowUndefined + meshToggledHoverMaterial: Material | undefined + @input("Asset.Material") + @showIf("buttonType", 1) + @allowUndefined + meshToggledIdleMaterial: Material | undefined + @input("Asset.Material") + @showIf("buttonType", 2) + @allowUndefined + meshStatePinchedMaterial: Material | undefined + @input("Asset.Material") + @showIf("buttonType", 2) + @allowUndefined + meshStateHoverMaterial: Material | undefined + @input("Asset.Material") + @showIf("buttonType", 2) + @allowUndefined + meshStateIdleMaterial: Material | undefined + @input + @showIf("buttonType", 2) + persistentPinchedState: boolean = false + @ui.separator + @input("Asset.Texture") + @allowUndefined + defaultIcon: Texture | undefined + @input("Asset.Texture") + @allowUndefined + onIcon: Texture | undefined + + private interactable: Interactable | null = null + private toggleButton: ToggleButton | null = null + private initialMaxInteractionStrength: number = 0.0 + private squishEnabled: boolean = true + + onAwake(): void { + this.init() + } + + private init = (): void => { + if (isNull(this.renderMeshVisual)) { + throw new Error("No RenderMeshVisual component attached to this entity!") + } + + this.renderMeshVisual.mainMaterial = this.renderMeshVisual + .getMaterial(0) + .clone() + + if (this.useGlowMesh) { + if (this.glowRenderMeshVisual !== undefined) { + this.glowRenderMeshVisual.mainMaterial = this.glowRenderMeshVisual + .getMaterial(0) + .clone() + } else { + this.useGlowMesh = false + print("No Glow RenderMeshVisual component attached to this entity.") + } + } + + this.interactable = this.getSceneObject().getComponent( + Interactable.getTypeName(), + ) + if (isNull(this.interactable)) { + throw new Error("Interactable component not found in this entity!") + } + + if (this.buttonType === TOGGLE_BUTTON || this.buttonType === STATE_BUTTON) { + this.toggleButton = this.getSceneObject().getComponent( + ToggleButton.getTypeName(), + ) + if (isNull(this.toggleButton)) { + throw new Error("ToggleButton component not found in this entity!") + } + } + + this.setupInteractableCallbacks() + + this.createEvent("OnEnableEvent").bind(() => { + this.squishEnabled = true + }) + + this.createEvent("OnDisableEvent").bind(() => { + this.squishEnabled = false + }) + + this.createEvent("OnStartEvent").bind(() => { + if ( + this.meshIdleMaterial === undefined || + this.meshHoverMaterial === undefined || + this.meshPinchedMaterial === undefined + ) { + throw new Error( + "ButtonFeedback requires meshIdleMaterial, meshHoverMaterial, and meshPinchedMaterial to be set! SceneObject name: " + + this.getSceneObject().name, + ) + } + + if (this.buttonType === TOGGLE_BUTTON) { + if ( + this.meshToggledIdleMaterial === undefined || + this.meshToggledHoverMaterial === undefined || + this.meshToggledPinchedMaterial === undefined + ) { + throw new Error( + "ToggleButton requires meshToggledIdleMaterial, meshToggledHoverMaterial, and meshToggledPinchedMaterial to be set! SceneObject name: " + + this.getSceneObject().name, + ) + } + } else if (this.buttonType === STATE_BUTTON) { + if ( + this.meshStateIdleMaterial === undefined || + this.meshStateHoverMaterial === undefined || + this.meshStatePinchedMaterial === undefined + ) { + throw new Error( + "StateButton requires meshStateIdleMaterial, meshStateHoverMaterial, and meshStatePinchedMaterial to be set! SceneObject name: " + + this.getSceneObject().name, + ) + } + } + + this.meshIdleMaterial = this.meshIdleMaterial.clone() + this.meshHoverMaterial = this.meshHoverMaterial.clone() + this.meshPinchedMaterial = this.meshPinchedMaterial.clone() + + this.changeButtonState(this.meshIdleMaterial) + + if (this.defaultIcon !== undefined) { + this.meshIdleMaterial.mainPass.iconEnabled = true + this.meshHoverMaterial.mainPass.iconEnabled = true + this.meshPinchedMaterial.mainPass.iconEnabled = true + this.meshIdleMaterial.mainPass.icon = this.defaultIcon + this.meshHoverMaterial.mainPass.icon = this.defaultIcon + this.meshPinchedMaterial.mainPass.icon = this.defaultIcon + } + + if (this.onIcon !== undefined) { + if (this.buttonType === TOGGLE_BUTTON) { + if ( + this.meshToggledIdleMaterial !== undefined && + this.meshToggledHoverMaterial !== undefined && + this.meshToggledPinchedMaterial !== undefined + ) { + this.meshToggledIdleMaterial = this.meshToggledIdleMaterial.clone() + this.meshToggledHoverMaterial = + this.meshToggledHoverMaterial.clone() + this.meshToggledPinchedMaterial = + this.meshToggledPinchedMaterial.clone() + + this.meshToggledIdleMaterial.mainPass.iconEnabled = true + this.meshToggledHoverMaterial.mainPass.iconEnabled = true + this.meshToggledPinchedMaterial.mainPass.iconEnabled = true + + this.meshToggledIdleMaterial.mainPass.icon = this.onIcon + this.meshToggledHoverMaterial.mainPass.icon = this.onIcon + this.meshToggledPinchedMaterial.mainPass.icon = this.onIcon + } + } else if (this.buttonType === STATE_BUTTON) { + if ( + this.meshStateIdleMaterial !== undefined && + this.meshStateHoverMaterial !== undefined && + this.meshStatePinchedMaterial !== undefined + ) { + this.meshStateIdleMaterial = this.meshStateIdleMaterial.clone() + this.meshStateHoverMaterial = this.meshStateHoverMaterial.clone() + this.meshStatePinchedMaterial = + this.meshStatePinchedMaterial.clone() + + this.meshStateIdleMaterial.mainPass.iconEnabled = true + this.meshStateHoverMaterial.mainPass.iconEnabled = true + this.meshStatePinchedMaterial.mainPass.iconEnabled = true + + this.meshStateIdleMaterial.mainPass.icon = this.onIcon + this.meshStateHoverMaterial.mainPass.icon = this.onIcon + this.meshStatePinchedMaterial.mainPass.icon = this.onIcon + } + } + } + + if (this.onIcon !== undefined && this.defaultIcon !== undefined) { + this.meshIdleMaterial.mainPass.iconEnabled = false + this.meshHoverMaterial.mainPass.iconEnabled = false + this.meshPinchedMaterial.mainPass.iconEnabled = false + + if (this.buttonType === TOGGLE_BUTTON) { + if ( + this.meshToggledIdleMaterial !== undefined && + this.meshToggledHoverMaterial !== undefined && + this.meshToggledPinchedMaterial !== undefined + ) { + this.meshToggledIdleMaterial = this.meshToggledIdleMaterial.clone() + this.meshToggledHoverMaterial = + this.meshToggledHoverMaterial.clone() + this.meshToggledPinchedMaterial = + this.meshToggledPinchedMaterial.clone() + + this.meshToggledIdleMaterial.mainPass.iconEnabled = false + this.meshToggledHoverMaterial.mainPass.iconEnabled = false + this.meshToggledPinchedMaterial.mainPass.iconEnabled = false + } + } else if (this.buttonType === STATE_BUTTON) { + if ( + this.meshStateIdleMaterial !== undefined && + this.meshStateHoverMaterial !== undefined && + this.meshStatePinchedMaterial !== undefined + ) { + this.meshStateIdleMaterial = this.meshStateIdleMaterial.clone() + this.meshStateHoverMaterial = this.meshStateHoverMaterial.clone() + this.meshStatePinchedMaterial = + this.meshStatePinchedMaterial.clone() + + this.meshStateIdleMaterial.mainPass.iconEnabled = false + this.meshStateHoverMaterial.mainPass.iconEnabled = false + this.meshStatePinchedMaterial.mainPass.iconEnabled = false + } + } + } + }) + } + + private setupInteractableCallbacks = (): void => { + validate(this.interactable) + this.interactable.onHoverUpdate.add(this.updateHoverState) + + switch (this.buttonType) { + case PINCH_BUTTON: + validate(this.interactable) + this.interactable.onHoverEnter.add( + this.initializeHoverState_PinchButton, + ) + this.interactable.onHoverExit.add(this.resetHoverState_PinchButton) + this.interactable.onTriggerCanceled.add( + this.resetHoverState_PinchButton, + ) + this.interactable.onTriggerStart.add( + this.initializeTriggeredState_PinchButton, + ) + this.interactable.onTriggerEnd.add(this.resetTriggeredState_PinchButton) + break + case TOGGLE_BUTTON: + validate(this.interactable) + this.interactable.onHoverEnter.add( + this.initializeHoverState_ToggleButton, + ) + this.interactable.onHoverExit.add(this.resetHoverState_ToggleButton) + this.interactable.onTriggerCanceled.add( + this.resetHoverState_ToggleButton, + ) + this.interactable.onTriggerStart.add( + this.initializeTriggeredState_ToggleButton, + ) + this.interactable.onTriggerEnd.add( + this.resetTriggeredState_ToggleButton, + ) + + validate(this.toggleButton) + this.toggleButton + .createEvent("OnEnableEvent") + .bind(this.onToggleButtonEnabled) + break + case STATE_BUTTON: + validate(this.interactable) + this.interactable.onHoverEnter.add( + this.initializeHoverState_StateButton, + ) + this.interactable.onHoverExit.add(this.resetHoverState_StateButton) + this.interactable.onTriggerCanceled.add( + this.resetHoverState_StateButton, + ) + this.interactable.onTriggerStart.add( + this.initializeTriggeredState_StateButton, + ) + this.interactable.onTriggerEnd.add(this.resetTriggeredState_StateButton) + validate(this.toggleButton) + this.toggleButton + .createEvent("OnEnableEvent") + .bind(this.onToggleButtonEnabled) + break + } + } + + private initializeHoverState_PinchButton = (): void => { + this.initialMaxInteractionStrength = this.getMaxInteractionStrength() + this.changeButtonState(this.meshHoverMaterial) + this.changeGlowState(this.glowHoverMaterial) + } + + private resetHoverState_PinchButton = (): void => { + this.initialMaxInteractionStrength = 0.0 + this.renderMeshVisual.setBlendShapeWeight(this.meshBlendShapeName, 0.0) + if (this.useGlowMesh) { + if (this.glowRenderMeshVisual !== undefined) { + this.glowRenderMeshVisual.setBlendShapeWeight( + this.glowBlendShapeName, + 0.0, + ) + } + } + this.changeButtonState(this.meshIdleMaterial) + this.changeGlowState(this.glowIdleMaterial) + } + + private updateHoverState = (): void => { + const maxInteractionStrength = this.getMaxInteractionStrength() + if (!this.squishEnabled) return + const interactionScale = + this.initialMaxInteractionStrength + + (maxInteractionStrength * (1.0 - this.initialMaxInteractionStrength)) / + 1.0 + this.renderMeshVisual.setBlendShapeWeight( + this.meshBlendShapeName, + interactionScale * this.maxBlendShapeWeight, + ) + if (this.useGlowMesh) { + if (this.glowRenderMeshVisual !== undefined) { + this.glowRenderMeshVisual.setBlendShapeWeight( + this.glowBlendShapeName, + interactionScale * this.maxBlendShapeWeight, + ) + } + } + } + + private initializeTriggeredState_PinchButton = (): void => { + this.changeButtonState(this.meshPinchedMaterial) + this.changeGlowState(this.glowPinchedMaterial) + } + + private resetTriggeredState_PinchButton = (): void => { + this.changeButtonState(this.meshHoverMaterial) + this.changeGlowState(this.glowHoverMaterial) + } + + private onToggleButtonEnabled = (): void => { + validate(this.toggleButton) + validate(this.meshToggledIdleMaterial) + validate(this.meshStateIdleMaterial) + this.changeButtonState( + this.toggleButton.isToggledOn + ? this.buttonType === TOGGLE_BUTTON + ? this.meshToggledIdleMaterial + : this.meshStateIdleMaterial + : this.meshIdleMaterial, + ) + } + + private initializeHoverState_ToggleButton = (): void => { + this.initialMaxInteractionStrength = this.getMaxInteractionStrength() + validate(this.toggleButton) + validate(this.meshToggledHoverMaterial) + this.changeButtonState( + this.toggleButton.isToggledOn + ? this.meshToggledHoverMaterial + : this.meshHoverMaterial, + ) + } + + private resetHoverState_ToggleButton = (): void => { + this.initialMaxInteractionStrength = 0.0 + this.renderMeshVisual.setBlendShapeWeight(this.meshBlendShapeName, 0.0) + validate(this.toggleButton) + validate(this.meshToggledIdleMaterial) + this.changeButtonState( + this.toggleButton.isToggledOn + ? this.meshToggledIdleMaterial + : this.meshIdleMaterial, + ) + } + + private initializeTriggeredState_ToggleButton = (): void => { + validate(this.toggleButton) + validate(this.meshToggledPinchedMaterial) + this.changeButtonState( + this.toggleButton.isToggledOn + ? this.meshToggledPinchedMaterial + : this.meshPinchedMaterial, + ) + } + + private resetTriggeredState_ToggleButton = (): void => { + validate(this.toggleButton) + validate(this.meshToggledHoverMaterial) + this.changeButtonState( + this.toggleButton.isToggledOn + ? this.meshHoverMaterial + : this.meshToggledHoverMaterial, + ) + } + + private initializeHoverState_StateButton = (): void => { + this.initialMaxInteractionStrength = this.getMaxInteractionStrength() + validate(this.toggleButton) + validate(this.meshStateHoverMaterial) + this.changeButtonState( + this.toggleButton.isToggledOn + ? this.meshStateHoverMaterial + : this.meshHoverMaterial, + ) + } + + private resetHoverState_StateButton = (): void => { + this.initialMaxInteractionStrength = 0.0 + this.renderMeshVisual.setBlendShapeWeight(this.meshBlendShapeName, 0.0) + validate(this.toggleButton) + validate(this.meshStatePinchedMaterial) + this.changeButtonState( + this.toggleButton.isToggledOn + ? this.meshStatePinchedMaterial + : this.meshIdleMaterial, + ) + } + + private initializeTriggeredState_StateButton = (): void => { + validate(this.toggleButton) + validate(this.meshStatePinchedMaterial) + this.changeButtonState( + this.toggleButton.isToggledOn + ? this.meshStatePinchedMaterial + : this.meshStatePinchedMaterial, + ) + } + + private resetTriggeredState_StateButton = (): void => { + validate(this.toggleButton) + validate(this.meshStatePinchedMaterial) + validate(this.meshStateHoverMaterial) + if (this.persistentPinchedState) { + this.changeButtonState( + this.toggleButton.isToggledOn + ? this.meshHoverMaterial + : this.meshStatePinchedMaterial, + ) + } else { + this.changeButtonState( + this.toggleButton.isToggledOn + ? this.meshHoverMaterial + : this.meshStateHoverMaterial, + ) + } + } + + private getMaxInteractionStrength = (): number => { + validate(this.interactable) + const interactors = SIK.InteractionManager.getInteractorsByType( + this.interactable.hoveringInteractor, + ) + + if (interactors.length === 0) { + return 0 + } + + /** + * At this point we know getInteractorsByType has returned some list of Interactors, each of which are hovering this Interactable + * This means that there are multiple Interactors which could be at various stages of interactionStrength. + * The behavior we want is to set the squish value of the Interactable based on the Max interactionStrength of all the Interactors currently + * hovering this Interactable. Use array reduce to find Max: + */ + return interactors.reduce((maxInteractionStrength, interactor) => { + validate(interactor) + return Math.max( + maxInteractionStrength, + interactor.interactionStrength ?? 0, + ) + }, -Infinity) + } + + private changeButtonState = (material: Material | undefined): void => { + if (material === undefined) return + this.renderMeshVisual.mainMaterial = material + } + + private changeGlowState = (material: Material | undefined): void => { + if (!this.useGlowMesh) return + if (material === undefined) return + validate(this.glowRenderMeshVisual) + this.glowRenderMeshVisual.mainMaterial = material + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ButtonFeedback.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ButtonFeedback.ts.meta new file mode 100644 index 00000000..ce4fab99 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ButtonFeedback.ts.meta @@ -0,0 +1,105 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 0c12c755-f42d-429b-bbb7-a9ce226d0a90 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + buttonType: false + defaultIcon: false + glowBlendShapeName: false + glowHoverMaterial: false + glowIdleMaterial: false + glowPinchedMaterial: false + glowRenderMeshVisual: false + maxBlendShapeWeight: false + meshBlendShapeName: false + meshHoverMaterial: false + meshIdleMaterial: false + meshPinchedMaterial: false + meshStateHoverMaterial: false + meshStateIdleMaterial: false + meshStatePinchedMaterial: false + meshToggledHoverMaterial: false + meshToggledIdleMaterial: false + meshToggledPinchedMaterial: false + onIcon: false + persistentPinchedState: false + renderMeshVisual: false + useGlowMesh: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - renderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + buttonType: 0 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - '// @input int buttonType {"widget":"combobox", "values":[{"label":"Pinch Button", "value":0}, {"label":"Toggle Button", "value":1}, {"label":"State Button", "value":2}]}' + - '// @ui {"widget":"separator"}' + - // @input Component.RenderMeshVisual renderMeshVisual + - '// @input bool useGlowMesh {"showIf":"buttonType", "showIfValue":0}' + - '// @input Component.RenderMeshVisual glowRenderMeshVisual {"showIf":"useGlowMesh", "showIfValue":true}' + - // @input float maxBlendShapeWeight = 1 + - '// @ui {"widget":"separator"}' + - '// @input string meshBlendShapeName = "Pinch"' + - // @input Asset.Material meshIdleMaterial + - // @input Asset.Material meshHoverMaterial + - // @input Asset.Material meshPinchedMaterial + - '// @ui {"widget":"separator"}' + - '// @input string glowBlendShapeName = "Pinch" {"showIf":"useGlowMesh", "showIfValue":true}' + - '// @input Asset.Material glowIdleMaterial {"showIf":"useGlowMesh", "showIfValue":true}' + - '// @input Asset.Material glowHoverMaterial {"showIf":"useGlowMesh", "showIfValue":true}' + - '// @input Asset.Material glowPinchedMaterial {"showIf":"useGlowMesh", "showIfValue":true}' + - '// @input Asset.Material meshToggledPinchedMaterial {"showIf":"buttonType", "showIfValue":1}' + - '// @input Asset.Material meshToggledHoverMaterial {"showIf":"buttonType", "showIfValue":1}' + - '// @input Asset.Material meshToggledIdleMaterial {"showIf":"buttonType", "showIfValue":1}' + - '// @input Asset.Material meshStatePinchedMaterial {"showIf":"buttonType", "showIfValue":2}' + - '// @input Asset.Material meshStateHoverMaterial {"showIf":"buttonType", "showIfValue":2}' + - '// @input Asset.Material meshStateIdleMaterial {"showIf":"buttonType", "showIfValue":2}' + - '// @input bool persistentPinchedState {"showIf":"buttonType", "showIfValue":2}' + - '// @ui {"widget":"separator"}' + - // @input Asset.Texture defaultIcon + - // @input Asset.Texture onIcon diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/CapsuleMeshCustomizer.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/CapsuleMeshCustomizer.ts new file mode 100644 index 00000000..c98d9c20 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/CapsuleMeshCustomizer.ts @@ -0,0 +1,317 @@ +/** + * This class customizes a mesh visual to create an extendable capsule shape. It allows configuration of the capsule's length, radius, and poly-count through various input properties. + */ +@component +export class CapsuleMeshCustomizer extends BaseScriptComponent { + @input + @hint("The mesh visual to modify into an extendable capsule.") + private meshVisual!: RenderMeshVisual + @input + @hint( + "The length of the cylindric section of the capsule (not including the end caps).", + ) + private capsuleLength: number = 10.0 + @input + @hint("The radius of the end caps and the radius of the cylindric section.") + private radius: number = 1.0 + @input("int") + @hint( + "The number of points per circle in the mesh. Increase for a higher poly-count mesh.", + ) + private radianStepCount: number = 16 + @input("int") + @hint( + "The number of circles in the cylinder of the mesh. Increase for a higher poly-count mesh.", + ) + private cylinderStepCount: number = 16 + @input("int") + @hint( + "The number of circles in the end cap of the capsule of the mesh. Increase for a higher poly-count mesh.", + ) + private endXStepCount: number = 32 + + private uLength: number = Math.PI * this.radius * this.radius + private endPointNormals: number[] = [1, 0, 0, -1, 0, 0] + private endPointUVs: number[] = [0, 0.5, 0.5, 0.5] + + private builder: MeshBuilder = new MeshBuilder([ + {name: "position", components: 3}, + {name: "normal", components: 3, normalized: true}, + {name: "texture0", components: 2}, + ]) + + onAwake(): void { + this.defineScriptEvents() + } + + private defineScriptEvents() { + this.createEvent("OnStartEvent").bind(() => { + this.init() + }) + } + + init(): void { + this.builder.topology = MeshTopology.Triangles + this.builder.indexType = MeshIndexType.UInt16 + + this.buildCapsule() + } + + private buildCircle(originX: number, radius: number, isEnd: boolean) { + let points: number[] = [] + let normals: number[] = [] + let uvs: number[] = [] + + let uProportion: number + + if (isEnd) { + let arcLength: number + if (originX < 0) { + arcLength = + (((this.radius + this.capsuleLength / 2 + originX) / this.radius) * + this.uLength) / + 4 + } else { + arcLength = + ((1 - + (this.radius + this.capsuleLength / 2 - originX) / this.radius) * + this.uLength) / + 4 + + this.uLength / 4 + } + uProportion = arcLength + } else { + uProportion = this.uLength / 4 + } + + for ( + let i = -Math.PI / 2; + i < 1.5 * Math.PI; + i += Math.PI / this.radianStepCount + ) { + const point = [originX, radius * Math.sin(i), radius * Math.cos(i)] + const normal = [0, -radius * Math.sin(i), -radius * Math.cos(i)] + + const firstHalf = i <= Math.PI / 2 + + let u = uProportion / this.uLength + + if (!firstHalf) { + u = 1 - u + } + + const uv = [u, 0.5 + radius * Math.sin(i) * 0.5] + + points = points.concat(point) + normals = normals.concat(normal) + uvs = uvs.concat(uv) + } + return [points, normals, uvs] + } + + private buildCylinder(length: number, radius: number) { + let points: number[] = [] + let normals: number[] = [] + let uvs: number[] = [] + + for ( + let circleCount = 0; + circleCount < this.cylinderStepCount; + circleCount++ + ) { + const i = -length / 2 + (circleCount * length) / this.cylinderStepCount + const circleData = this.buildCircle(i, radius, false) + + points = points.concat(circleData[0]) + normals = normals.concat(circleData[1]) + uvs = uvs.concat(circleData[2]) + } + return [points, normals, uvs] + } + + private buildEndCap(originX: number, radius: number, isRight: boolean) { + let points: number[] = [] + let normals: number[] = [] + let uvs: number[] = [] + + const step = radius / this.endXStepCount + for ( + let i = isRight ? step : -radius + step; + i < (isRight ? radius : 0); + i += step + ) { + const crossSectionRadius = Math.sqrt(radius ** 2 - i ** 2) + const circleData = this.buildCircle(i + originX, crossSectionRadius, true) + + points = points.concat(circleData[0]) + + for (let j = 0; j < this.radianStepCount * 2; j++) { + circleData[1][j * 3] = -i + } + normals = normals.concat(circleData[1]) + uvs = uvs.concat(circleData[2]) + } + + return [points, normals, uvs] + } + + // TODO: Investigate, circleIndexB is never used. + private linkCircleIndices(circleIndexA: number, circleIndexB: number) { + let indices: number[] = [] + const numPoints = this.radianStepCount * 2 + + const firstIndex = circleIndexA * numPoints + for (let i = firstIndex; i < (circleIndexA + 1) * numPoints - 1; i++) { + indices = indices.concat([i + 1, i + numPoints, i]) + indices = indices.concat([i + 1, i + numPoints + 1, i + numPoints]) + } + const lastIndex = (circleIndexA + 1) * numPoints - 1 + indices = indices.concat([ + firstIndex, + lastIndex + numPoints, + lastIndex, + firstIndex, + firstIndex + numPoints, + lastIndex + numPoints, + ]) + + return indices + } + + private linkCapsuleIndices() { + let indices: number[] = [] + const numCircles = (this.endXStepCount - 1) * 2 + this.cylinderStepCount + + for (let i = 0; i < numCircles - 1; i++) { + indices = indices.concat(this.linkCircleIndices(i, i + 1)) + } + + return indices + } + + private linkEndIndices( + endIndex: number, + circleIndex: number, + isRight: boolean, + ) { + let indices: number[] = [] + const numPoints = this.radianStepCount * 2 + + const firstIndex = circleIndex * numPoints + for (let i = firstIndex; i < firstIndex + numPoints - 1; i++) { + if (isRight) { + indices = indices.concat([i + 1, endIndex, i]) + } else { + indices = indices.concat([endIndex, i + 1, i]) + } + } + const lastIndex = (circleIndex + 1) * numPoints - 1 + if (isRight) { + indices = indices.concat([firstIndex, endIndex, lastIndex]) + } else { + indices = indices.concat([endIndex, firstIndex, lastIndex]) + } + + return indices + } + + private checkValid() { + return ( + this.radius === 0 || + this.radianStepCount === 0 || + this.cylinderStepCount === 0 || + this.endXStepCount === 0 + ) + } + + private buildCapsule() { + if (this.checkValid()) { + throw new Error("Step counts and radius must be positive, whole numbers.") + } + + if (this.builder.getIndicesCount() !== 0) { + this.builder.eraseIndices(0, this.builder.getIndicesCount()) + } + if (this.builder.getVerticesCount() !== 0) { + this.builder.eraseVertices(0, this.builder.getVerticesCount()) + } + + const leftEndCap = this.buildEndCap( + -this.capsuleLength / 2, + this.radius, + false, + ) + const cylinder = this.buildCylinder(this.capsuleLength, this.radius) + const rightEndCap = this.buildEndCap( + this.capsuleLength / 2, + this.radius, + true, + ) + + const endPoints = [ + [ + -this.capsuleLength / 2 - this.radius, + 0, + 0, + this.capsuleLength / 2 + this.radius, + 0, + 0, + ], + this.endPointNormals, + this.endPointUVs, + ] + + this.builder.appendVertices(leftEndCap) + this.builder.appendVertices(cylinder) + this.builder.appendVertices(rightEndCap) + + this.builder.appendVertices(endPoints) + + this.builder.appendIndices(this.linkCapsuleIndices()) + + this.builder.appendIndices( + this.linkEndIndices( + this.builder.getVerticesCount() - 1, + (this.endXStepCount - 1) * 2 + this.cylinderStepCount - 1, + true, + ), + ) + this.builder.appendIndices( + this.linkEndIndices(this.builder.getVerticesCount() - 2, 0, false), + ) + + if (this.builder.isValid()) { + this.meshVisual.mesh = this.builder.getMesh() + this.builder.updateMesh() + } else { + throw new Error( + "Invalid mesh, check parameters to ensure positive whole numbers for vertex counts!", + ) + } + } + + setLength(newLength: number): void { + this.capsuleLength = newLength + this.buildCapsule() + } + + setRadius(newRadius: number): void { + this.radius = newRadius + this.buildCapsule() + } + + setRadianStepCount(newCount: number): void { + this.radianStepCount = newCount + this.buildCapsule() + } + + setCylinderStepCount(newCount: number): void { + this.cylinderStepCount = newCount + this.buildCapsule() + } + + setEndXStepCount(newCount: number): void { + this.endXStepCount = newCount + this.buildCapsule() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/CapsuleMeshCustomizer.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/CapsuleMeshCustomizer.ts.meta new file mode 100644 index 00000000..a9180ec3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/CapsuleMeshCustomizer.ts.meta @@ -0,0 +1,54 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 34ec9e1d-4d86-425e-9b7a-b6f2c130e4be + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 34ec9e1d-4d86-425e-9b7a-b6f2c130e4be + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! ed97fc35-ca6a-4980-bf6e-7f745d48b792 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + - '// @input Component.RenderMeshVisual meshVisual {"hint":"The mesh visual to modify into an extendable capsule."}' + - '// @input float capsuleLength = 10 {"hint":"The length of the cylindric section of the capsule (not including the end caps)."}' + - '// @input float radius = 1 {"hint":"The radius of the end caps and the radius of the cylindric section."}' + - '// @input int radianStepCount = 16 {"hint":"The number of points per circle in the mesh. Increase for a higher poly-count mesh."}' + - '// @input int cylinderStepCount = 16 {"hint":"The number of circles in the cylinder of the mesh. Increase for a higher poly-count mesh."}' + - '// @input int endXStepCount = 32 {"hint":"The number of circles in the end cap of the capsule of the mesh. Increase for a higher poly-count mesh."}' + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + capsuleLength: false + cylinderStepCount: false + endXStepCount: false + meshVisual: false + radianStepCount: false + radius: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - meshVisual: ! 00000000-0000-0000-0000-000000000000 + capsuleLength: ! 10.000000 + radius: ! 1.000000 + radianStepCount: ! 16.000000 + cylinderStepCount: ! 16.000000 + endXStepCount: ! 32.000000 + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableAudioFeedback.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableAudioFeedback.ts new file mode 100644 index 00000000..fa459d47 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableAudioFeedback.ts @@ -0,0 +1,151 @@ +import {Interactable} from "../Interaction/Interactable/Interactable" +import {validate} from "../../Utils/validate" +/** + * This class provides audio feedback for interactable objects. It allows configuration of audio tracks for hover, trigger start, and trigger end events. The class also provides access to the audio component for further customization. + */ +@component +export class InteractableAudioFeedback extends BaseScriptComponent { + @input("Asset.AudioTrackAsset") + @hint("This sound will play when the Interactable is hovered") + @allowUndefined + hoverAudioTrack: AudioTrackAsset | undefined + + @input("Asset.AudioTrackAsset") + @hint("This sound will play when starting the trigger the Interactable") + @allowUndefined + triggerStartAudioTrack: AudioTrackAsset | undefined + + @input("Asset.AudioTrackAsset") + @hint("This sound will play when ending the trigger of the Interactable") + @allowUndefined + triggerEndAudioTrack: AudioTrackAsset | undefined + + private _hoverAudioComponent: AudioComponent | undefined + private _triggerStartAudioComponent: AudioComponent | undefined + private _triggerEndAudioComponent: AudioComponent | undefined + private interactable: Interactable | null = null + + onAwake(): void { + this.defineScriptEvents() + } + + private defineScriptEvents() { + this.createEvent("OnStartEvent").bind(() => { + this.init() + }) + } + + /** + * Returns the AudioComponent used for hover feedback for further configuration (such as volume). + */ + get hoverAudioComponent(): AudioComponent | undefined { + return this._hoverAudioComponent + } + + /** + * Returns the AudioComponent used for trigger start feedback for further configuration (such as volume). + */ + get triggerStartAudioComponent(): AudioComponent | undefined { + return this._triggerStartAudioComponent + } + + /** + * Returns the AudioComponent used for trigger end feedback for further configuration (such as volume). + */ + get triggerEndAudioComponent(): AudioComponent | undefined { + return this._triggerEndAudioComponent + } + + private setupInteractableCallbacks() { + validate(this.interactable) + + this.interactable.onHoverEnter.add(() => { + try { + if (this._hoverAudioComponent) { + this._hoverAudioComponent.play(1) + } + } catch (e) { + print("Error playing hover audio: " + e) + } + }) + + this.interactable.onTriggerStart.add(() => { + try { + if (this._triggerStartAudioComponent) { + this._triggerStartAudioComponent.play(1) + } + } catch (e) { + print("Error playing trigger start audio: " + e) + } + }) + + this.interactable.onTriggerEnd.add(() => { + try { + if (this._triggerEndAudioComponent) { + this._triggerEndAudioComponent.play(1) + } + } catch (e) { + print("Error playing trigger end audio: " + e) + } + }) + } + + private init() { + if (this.hoverAudioTrack) { + this._hoverAudioComponent = this.getSceneObject().createComponent( + "Component.AudioComponent", + ) as AudioComponent + + this.setPlaybackMode( + this._hoverAudioComponent, + Audio.PlaybackMode?.LowLatency, + ) + this._hoverAudioComponent.audioTrack = this.hoverAudioTrack + } + + if (this.triggerStartAudioTrack) { + this._triggerStartAudioComponent = this.getSceneObject().createComponent( + "Component.AudioComponent", + ) as AudioComponent + + this.setPlaybackMode( + this._triggerStartAudioComponent, + Audio.PlaybackMode?.LowLatency, + ) + this._triggerStartAudioComponent.audioTrack = this.triggerStartAudioTrack + } + + if (this.triggerEndAudioTrack) { + this._triggerEndAudioComponent = this.getSceneObject().createComponent( + "Component.AudioComponent", + ) as AudioComponent + + this.setPlaybackMode( + this._triggerEndAudioComponent, + Audio.PlaybackMode?.LowLatency, + ) + this._triggerEndAudioComponent.audioTrack = this.triggerEndAudioTrack + } + + this.interactable = this.getSceneObject().getComponent( + Interactable.getTypeName(), + ) + + if (!this.interactable) { + throw new Error( + "Could not find Interactable component on this SceneObject.", + ) + } + + this.setupInteractableCallbacks() + } + + private setPlaybackMode( + target: AudioComponent, + playbackMode: Audio.PlaybackMode | undefined, + ) { + if (playbackMode !== undefined) { + target.playbackMode = playbackMode + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableAudioFeedback.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableAudioFeedback.ts.meta new file mode 100644 index 00000000..7d6df911 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableAudioFeedback.ts.meta @@ -0,0 +1,45 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! ac793208-0e86-4f7d-85b3-ea9c097c364b + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + hoverAudioTrack: false + triggerEndAudioTrack: false + triggerStartAudioTrack: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerEndAudioTrack: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - '// @input Asset.AudioTrackAsset hoverAudioTrack {"hint":"This sound will play when the Interactable is hovered"}' + - '// @input Asset.AudioTrackAsset triggerStartAudioTrack {"hint":"This sound will play when starting the trigger the Interactable"}' + - '// @input Asset.AudioTrackAsset triggerEndAudioTrack {"hint":"This sound will play when ending the trigger of the Interactable"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableColorFeedback.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableColorFeedback.ts new file mode 100644 index 00000000..9a7109d6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableColorFeedback.ts @@ -0,0 +1,96 @@ +import {Interactable} from "../Interaction/Interactable/Interactable" +import {validate} from "../../Utils/validate" + +/** + * This class provides visual feedback by changing the color of mesh visuals based on interaction events such as hover, pinch, and disable. It allows customization of colors for different interaction states. + */ +@component +export class InteractableColorFeedback extends BaseScriptComponent { + @input("vec4", "{0.28, 0.28, 0.28, 1}") + @widget(new ColorWidget()) + defaultColor: vec4 = new vec4(0.28, 0.28, 0.28, 1) + + @input("vec4", "{0.28, 0.28, 0.28, 1}") + @widget(new ColorWidget()) + hoverColor: vec4 = new vec4(0.28, 0.28, 0.28, 1) + + @input("vec4", "{0.46, 0.46, 0.46, 1}") + @widget(new ColorWidget()) + pinchedColor: vec4 = new vec4(0.46, 0.46, 0.46, 1) + + @input("vec4", "{1, 1, 1, 0}") + @widget(new ColorWidget()) + disabledColor: vec4 = new vec4(1, 1, 1, 0) + + @input + @hint( + "The meshes which will have their baseColor changed on pinch/hover events", + ) + meshVisuals: RenderMeshVisual[] = [] + + private interactable: Interactable | null = null + + private meshMaterials: Material[] = [] + + onAwake(): void { + this.defineScriptEvents() + } + + private defineScriptEvents(): void { + this.createEvent("OnStartEvent").bind(() => { + this.init() + }) + } + + init(): void { + this.interactable = this.getSceneObject().getComponent( + Interactable.getTypeName(), + ) + validate( + this.interactable, + "InteractableColorFeedback requires Interactable.", + ) + this.setupMaterials() + this.setupInteractableCallbacks(this.interactable) + } + + changeColor(color: vec4): void { + this.meshMaterials.forEach(function (material) { + material.mainPass.baseColor = color + }) + } + + setupInteractableCallbacks(interactable: Interactable): void { + validate(interactable) + interactable.onHoverEnter.add(() => { + this.changeColor(this.hoverColor) + }) + interactable.onHoverExit.add(() => { + this.changeColor(this.defaultColor) + }) + interactable.onTriggerStart.add(() => { + this.changeColor(this.pinchedColor) + }) + interactable.onTriggerEnd.add(() => { + this.changeColor(this.hoverColor) + }) + interactable.onTriggerCanceled.add(() => { + this.changeColor(this.defaultColor) + }) + interactable.createEvent("OnEnableEvent").bind(() => { + this.changeColor(this.defaultColor) + }) + interactable.createEvent("OnDisableEvent").bind(() => { + this.changeColor(this.disabledColor) + }) + } + + setupMaterials(): void { + for (var i = 0; i < this.meshVisuals.length; i++) { + let clonedMaterial = this.meshVisuals[i].mainMaterial.clone() + this.meshMaterials.push(clonedMaterial) + this.meshVisuals[i].mainMaterial = clonedMaterial + } + this.changeColor(this.defaultColor) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableColorFeedback.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableColorFeedback.ts.meta new file mode 100644 index 00000000..62004000 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableColorFeedback.ts.meta @@ -0,0 +1,52 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 8a3fa6e8-a0aa-49fc-9c2a-35e24f796b6d + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + defaultColor: false + disabledColor: false + hoverColor: false + meshVisuals: false + pinchedColor: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - meshVisuals: ! + [] + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + ScriptTypes: + - + {} + InputLines: + - '// @input vec4 defaultColor = "{0.28, 0.28, 0.28, 1}" {"widget":"color"}' + - '// @input vec4 hoverColor = "{0.28, 0.28, 0.28, 1}" {"widget":"color"}' + - '// @input vec4 pinchedColor = "{0.46, 0.46, 0.46, 1}" {"widget":"color"}' + - '// @input vec4 disabledColor = "{1, 1, 1, 0}" {"widget":"color"}' + - '// @input Component.RenderMeshVisual[] meshVisuals {"hint":"The meshes which will have their baseColor changed on pinch/hover events"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableOutlineFeedback.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableOutlineFeedback.ts new file mode 100644 index 00000000..6c560b2d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableOutlineFeedback.ts @@ -0,0 +1,158 @@ +import {Interactable} from "../Interaction/Interactable/Interactable" +import {validate} from "../../Utils/validate" + +/** + * This class provides visual feedback by adding an outline to mesh visuals when they are hovered or pinched. It allows customization of the outline color, thickness, and target meshes. + */ +@component +export class InteractableOutlineFeedback extends BaseScriptComponent { + @input + @hint("This is the material that will provide the mesh outline") + targetOutlineMaterial!: Material + + @input("vec4", "{1, 1, 0.04, 1}") + @hint("This is the colour of the outline when hovered") + @widget(new ColorWidget()) + hoveringColor: vec4 = new vec4(1, 1, 0.04, 1) + + @input("vec4", "{1, 1, 1, 1}") + @hint("This is the colour of the outline when pinched") + @widget(new ColorWidget()) + activatingColor: vec4 = new vec4(1, 1, 1, 1) + + @input + @hint("This is the thickness of the outline") + outlineWeight: number = 0.25 + + @input + @hint("These are the meshes that will be outlined on pinch/hover") + meshVisuals: RenderMeshVisual[] = [] + + private interactable: Interactable | null = null + private outlineEnabled: boolean = true + + private highlightMaterial: Material | undefined + + onAwake(): void { + this.defineScriptEvents() + } + + private defineScriptEvents() { + this.createEvent("OnStartEvent").bind(() => { + this.init() + + this.createEvent("OnEnableEvent").bind(() => { + this.outlineEnabled = true + }) + + this.createEvent("OnDisableEvent").bind(() => { + this.outlineEnabled = false + this.removeMaterialFromRenderMeshArray() + }) + }) + } + + init() { + this.highlightMaterial = this.targetOutlineMaterial.clone() + this.highlightMaterial.mainPass.lineWeight = this.outlineWeight + this.highlightMaterial.mainPass.lineColor = this.hoveringColor + + this.interactable = this.getSceneObject().getComponent( + Interactable.getTypeName(), + ) + if (!this.interactable) { + throw new Error( + "No interactable was found - please ensure that a component matching the Interactable typename provided was added to this SceneObject.", + ) + } + + this.setupInteractableCallbacks() + } + + addMaterialToRenderMeshArray(): void { + if (!this.outlineEnabled) { + return + } + + for (let i = 0; i < this.meshVisuals.length; i++) { + const matCount = this.meshVisuals[i].getMaterialsCount() + + let addMaterial = true + for (let k = 0; k < matCount; k++) { + const material = this.meshVisuals[i].getMaterial(k) + + if ( + this.highlightMaterial !== undefined && + material.isSame(this.highlightMaterial) + ) { + addMaterial = false + break + } + } + + if (this.highlightMaterial !== undefined && addMaterial) { + const materials = this.meshVisuals[i].materials + materials.unshift(this.highlightMaterial) + this.meshVisuals[i].materials = materials + } + } + } + + removeMaterialFromRenderMeshArray(): void { + for (let i = 0; i < this.meshVisuals.length; i++) { + let materials = [] + + const matCount = this.meshVisuals[i].getMaterialsCount() + + for (let k = 0; k < matCount; k++) { + const material = this.meshVisuals[i].getMaterial(k) + + if ( + this.highlightMaterial !== undefined && + material.isSame(this.highlightMaterial) + ) { + continue + } + + materials.push(material) + } + + this.meshVisuals[i].clearMaterials() + + for (var k = 0; k < materials.length; k++) { + this.meshVisuals[i].addMaterial(materials[k]) + } + } + } + + setupInteractableCallbacks(): void { + validate(this.interactable) + + this.interactable.onHoverEnter.add(() => { + this.addMaterialToRenderMeshArray() + }) + + this.interactable.onHoverExit.add(() => { + this.removeMaterialFromRenderMeshArray() + }) + + this.interactable.onTriggerStart.add(() => { + this.setHighlightColor(this.activatingColor) + }) + + this.interactable.onTriggerEnd.add(() => { + this.setHighlightColor(this.hoveringColor) + }) + + this.interactable.onTriggerCanceled.add(() => { + this.setHighlightColor(this.hoveringColor) + this.removeMaterialFromRenderMeshArray() + }) + } + + private setHighlightColor(color: vec4): void { + validate(this.highlightMaterial) + + this.highlightMaterial.mainPass.lineColor = color + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableOutlineFeedback.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableOutlineFeedback.ts.meta new file mode 100644 index 00000000..a407561e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableOutlineFeedback.ts.meta @@ -0,0 +1,52 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 30386ad1-9315-4d77-aa3c-06b8303f1788 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + activatingColor: false + hoveringColor: false + meshVisuals: false + outlineWeight: false + targetOutlineMaterial: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - targetOutlineMaterial: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + outlineWeight: -0.250000 + meshVisuals: ! + [] + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ScriptTypes: + - + {} + InputLines: + - '// @input Asset.Material targetOutlineMaterial {"hint":"This is the material that will provide the mesh outline"}' + - '// @input vec4 hoveringColor = "{1, 1, 0.04, 1}" {"hint":"This is the colour of the outline when hovered", "widget":"color"}' + - '// @input vec4 activatingColor = "{1, 1, 1, 1}" {"hint":"This is the colour of the outline when pinched", "widget":"color"}' + - '// @input float outlineWeight = 0.25 {"hint":"This is the thickness of the outline"}' + - '// @input Component.RenderMeshVisual[] meshVisuals {"hint":"These are the meshes that will be outlined on pinch/hover"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableSquishFeedback.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableSquishFeedback.ts new file mode 100644 index 00000000..561c9905 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableSquishFeedback.ts @@ -0,0 +1,105 @@ +import {Interactable} from "../Interaction/Interactable/Interactable" +import {InteractorEvent} from "../../Core/Interactor/InteractorEvent" +import {validate} from "../../Utils/validate" + +/** + * This class provides visual feedback by squishing a specified SceneObject when it is hovered or pinched. It allows customization of the squish amount along the x-axis and y-axis. + */ +@component +export class InteractableSquishFeedback extends BaseScriptComponent { + @input + @hint("This is the SceneObject that will be squished on hover/pinch") + squishObject!: SceneObject + @input + @hint("This is how much the squishObject will squish along the y-axis") + @widget(new SliderWidget(0, 1, 0.01)) + verticalSquish: number = 0.5 + @input + @hint("This is how much the squishObject will squish along the x-axis") + @widget(new SliderWidget(0, 1.5, 0.01)) + horizontalSquish: number = 0.5 + + private interactable: Interactable | null = null + private initialPinch: number | null = null + private initialScale: vec3 | undefined + private squishScale: vec3 | undefined + private squishEnabled: boolean = true + + onAwake(): void { + this.defineScriptEvents() + } + + private defineScriptEvents() { + this.createEvent("OnStartEvent").bind(() => { + this.init() + + this.createEvent("OnEnableEvent").bind(() => { + this.squishEnabled = true + }) + + this.createEvent("OnDisableEvent").bind(() => { + this.squishEnabled = false + }) + }) + } + + init(): void { + this.initialScale = this.squishObject.getTransform().getLocalScale() + this.squishScale = new vec3( + this.initialScale.x * this.horizontalSquish, + this.initialScale.y * this.verticalSquish, + this.initialScale.z, + ) + + this.interactable = this.getSceneObject().getComponent( + Interactable.getTypeName(), + ) + if (!this.interactable) { + throw new Error("PointerSquishVisual script requires an Interactable") + } + + this.setupInteractableCallbacks() + } + + resetScale(): void { + validate(this.initialScale) + this.squishObject.getTransform().setLocalScale(this.initialScale) + this.initialPinch = null + } + + updateSquish(event: InteractorEvent): void { + validate(this.initialScale) + validate(this.squishScale) + + const currentPinch = event.interactor.interactionStrength + if ( + currentPinch !== null && + this.initialPinch !== null && + this.squishEnabled + ) { + const pinchScale = MathUtils.remap( + Math.max(this.initialPinch, currentPinch), + Math.min(this.initialPinch, 0.95), + 1, + 0, + 1, + ) + this.squishObject + .getTransform() + .setLocalScale( + vec3.lerp(this.initialScale, this.squishScale, pinchScale), + ) + } + } + + setupInteractableCallbacks(): void { + validate(this.interactable) + + this.interactable.onHoverEnter.add((event) => { + this.initialPinch = event.interactor.interactionStrength + }) + this.interactable.onHoverUpdate.add(this.updateSquish.bind(this)) + this.interactable.onHoverExit.add(this.resetScale.bind(this)) + this.interactable.onTriggerCanceled.add(this.resetScale.bind(this)) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableSquishFeedback.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableSquishFeedback.ts.meta new file mode 100644 index 00000000..ecc5b5c7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/InteractableSquishFeedback.ts.meta @@ -0,0 +1,45 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 6ed73b72-7d5d-4687-903f-86235c78f430 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + horizontalSquish: false + squishObject: false + verticalSquish: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - squishObject: ! 00000000-0000-0000-0000-000000000000 + verticalSquish: 0.500000 + horizontalSquish: ! 1.000000 + ScriptTypes: + - + {} + InputLines: + - '// @input SceneObject squishObject {"hint":"This is the SceneObject that will be squished on hover/pinch"}' + - '// @input float verticalSquish = 0.5 {"hint":"This is how much the squishObject will squish along the y-axis", "widget":"slider", "min":0, "max":1, "step":0.01}' + - '// @input float horizontalSquish = 0.5 {"hint":"This is how much the squishObject will squish along the x-axis", "widget":"slider", "min":0, "max":1.5, "step":0.01}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScreenTransformAdapter.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScreenTransformAdapter.ts new file mode 100644 index 00000000..64f4c9a4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScreenTransformAdapter.ts @@ -0,0 +1,47 @@ +/** + * This class adapts a SceneObject's transform to a ScreenTransform if it is a child of a Canvas. It preserves the object's position and rotation during the transformation. + */ +@component +export class ScreenTransformAdapter extends BaseScriptComponent { + onAwake(): void { + this.defineScriptEvents() + } + + private defineScriptEvents() { + this.createEvent("OnStartEvent").bind(() => { + this.init() + }) + } + + init(): void { + const sceneObject = this.getSceneObject() + const transform = sceneObject.getTransform() + const parent = sceneObject.getParent() + + if ( + isNull(parent) || + isNull(parent!.getComponent("Component.Canvas")) || + isNull(parent!.getComponent("Component.ScreenTransform")) + ) { + return + } + + const canvas = sceneObject.getComponent("Component.Canvas") + + if (!isNull(canvas)) { + const perservedPosition = transform.getLocalPosition() + const perservedRotation = transform.getLocalRotation() + + const size = canvas.getSize() + canvas.destroy() + const screenTransform = sceneObject.createComponent( + "Component.ScreenTransform", + ) + screenTransform.anchors = Rect.create(0, 0, 0, 0) + screenTransform.offsets.setSize(size) + + screenTransform.position = perservedPosition + screenTransform.rotation = perservedRotation + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScreenTransformAdapter.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScreenTransformAdapter.ts.meta new file mode 100644 index 00000000..97ee1d03 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScreenTransformAdapter.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! dd77caed-15b6-42a7-82bc-14dc99147d28 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScrollBarFeedback.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScrollBarFeedback.ts new file mode 100644 index 00000000..ef56a129 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScrollBarFeedback.ts @@ -0,0 +1,137 @@ +import animate, {CancelSet} from "../../Utils/animate" + +import {Interactable} from "../Interaction/Interactable/Interactable" +import {ScrollBar} from "../UI/ScrollBar/ScrollBar" +import {lerp} from "../../Utils/mathUtils" +import {validate} from "../../Utils/validate" + +const BLENDSHAPE_NAME: string = "Size" +const SCALE_TWEEN_DURATION: number = 0.2 +const HOVER_SCALE: number = 0.75 + +/** + * This class provides visual feedback for a scrollbar by adjusting its size and scale based on interaction events such as hover. It uses animation utilities to smoothly transition between states. + */ +@component +export class ScrollBarFeedback extends BaseScriptComponent { + @input + scrollbarObject!: SceneObject + + private renderMeshVisual: RenderMeshVisual | undefined + private size: number = 0 + + private interactable: Interactable | null = null + private scrollbar: ScrollBar | null = null + private isHovering: boolean = false + + private scaleCancel = new CancelSet() + + onAwake(): void { + this.init() + } + + private init = (): void => { + this.interactable = this.scrollbarObject.getComponent( + Interactable.getTypeName(), + ) + if (isNull(this.interactable)) { + throw new Error("Interactable component not found in this entity!") + } + + this.scrollbar = this.scrollbarObject.getComponent(ScrollBar.getTypeName()) + if (isNull(this.scrollbar)) { + throw new Error("ScrollBar component not found in this entity!") + } + + this.renderMeshVisual = this.getSceneObject().getComponent( + "Component.RenderMeshVisual", + ) + if (this.renderMeshVisual === undefined) { + throw new Error("RenderMeshVisual component not found in this entity!") + } + + this.size = this.renderMeshVisual.getBlendShapeWeight(BLENDSHAPE_NAME) + this.renderMeshVisual.mainPass.size = this.size + + this.createEvent("OnStartEvent").bind(this.setupInteractableCallbacks) + } + + private setupInteractableCallbacks = () => { + validate(this.interactable) + this.interactable.onHoverEnter.add(this.initializeHoverState) + this.interactable.onHoverExit.add(this.resetHoverState) + this.interactable.onTriggerStart.add(this.initializeTriggerState) + this.interactable.onTriggerEnd.add(this.resetTriggerState) + this.interactable.onTriggerUpdate.add(this.onTriggerUpdate) + } + + private initializeHoverState = (): void => { + if (this.renderMeshVisual !== undefined) { + this.renderMeshVisual.mainPass.status = 1.0 + this.renderMeshVisual.mainPass.scale = HOVER_SCALE + this.renderMeshVisual.mainPass.offset = this.getPercentage() + this.isHovering = true + } + } + + private resetHoverState = (): void => { + if (this.renderMeshVisual !== undefined) { + this.renderMeshVisual.mainPass.status = 0.0 + this.renderMeshVisual.mainPass.scale = 0.0 + this.isHovering = false + } + } + + private initializeTriggerState = (): void => { + if (this.renderMeshVisual !== undefined) { + this.renderMeshVisual.mainPass.offset = this.getPercentage() + this.tweenScale(0.75, 1.0) + } + } + + private resetTriggerState = (): void => { + if (this.renderMeshVisual !== undefined) { + this.renderMeshVisual.mainPass.gradientScale = 0.03 + this.tweenScale(1.0, 0.75) + } + } + + private onTriggerUpdate = (): void => { + if (this.renderMeshVisual !== undefined) { + this.renderMeshVisual.mainPass.offset = this.getPercentage() + } + } + + private tweenScale = ( + currentScale: number, + targetScale: number, + endCallback = () => {}, + ): void => { + if (this.scaleCancel) this.scaleCancel.cancel() + animate({ + duration: SCALE_TWEEN_DURATION * Math.abs(targetScale - currentScale), + update: (t: number) => { + if (this.renderMeshVisual !== undefined) { + this.renderMeshVisual.mainPass.scale = lerp( + currentScale, + targetScale, + t, + ) + } + }, + ended: endCallback, + cancelSet: this.scaleCancel, + }) + } + + getPercentage = (): number => { + validate(this.scrollbar) + return MathUtils.remap( + this.scrollbar.scrollPercentage, + 0.0, + 1.0, + 0.03, + 0.97, + ) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScrollBarFeedback.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScrollBarFeedback.ts.meta new file mode 100644 index 00000000..8168d282 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ScrollBarFeedback.ts.meta @@ -0,0 +1,38 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 37bf0d33-fcd6-4d18-8150-19002357972e + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 37bf0d33-fcd6-4d18-8150-19002357972e + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 9f82af0d-11a1-414e-a2b1-e5c73b1a7566 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + scrollbarObject: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - scrollbarObject: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - // @input SceneObject scrollbarObject diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/SliderFeedback.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/SliderFeedback.ts new file mode 100644 index 00000000..5e64de78 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/SliderFeedback.ts @@ -0,0 +1,95 @@ +import {Interactable} from "../../Components/Interaction/Interactable/Interactable" +import {Slider} from "../../Components/UI/Slider/Slider" +import {validate} from "../../Utils/validate" + +const SLIDER_LEVEL_MIN: number = 0.1 +const SLIDER_LEVEL_MAX: number = 0.9 + +/** + * This class provides visual feedback for a slider component. It manages the appearance of the slider's knob and track based on interaction events and the slider's value. + */ +@component +export class SliderFeedback extends BaseScriptComponent { + @input + renderMeshVisual!: RenderMeshVisual + + @input + knobObject!: SceneObject + + private interactable: Interactable | null = null + private slider: Slider | null = null + private currentValue: number = 0 + + onAwake(): void { + this.init() + } + + private init = (): void => { + if (isNull(this.renderMeshVisual)) { + throw new Error("No RenderMeshVisual component attached to this entity!") + } + + if (isNull(this.knobObject)) { + throw new Error("No knobObject attached to this entity!") + } + + this.renderMeshVisual.mainMaterial = this.renderMeshVisual + .getMaterial(0) + .clone() + + this.interactable = this.knobObject.getComponent(Interactable.getTypeName()) + + if (isNull(this.interactable)) { + throw new Error("Interactable component not found in this entity!") + } + + this.slider = this.getSceneObject().getComponent(Slider.getTypeName()) + + if (isNull(this.slider)) { + throw new Error("No Slider component attached to this entity!") + } + + this.createEvent("OnStartEvent").bind(() => { + validate(this.slider) + validate(this.renderMeshVisual) + this.currentValue = this.slider.startValue + + this.renderMeshVisual.mainPass.level = this.getSliderLevelFromValue( + this.slider.currentValue ?? 0, + ) + + this.setupSliderCallbacks() + }) + } + + private getSliderLevelFromValue = (value: number): number => { + validate(this.slider) + if (value <= this.slider.minValue) { + return 0 + } else if (value >= this.slider.maxValue) { + return 1 + } else { + const progress = + (value - this.slider.minValue) / + (this.slider.maxValue - this.slider.minValue) + return SLIDER_LEVEL_MIN + (SLIDER_LEVEL_MAX - SLIDER_LEVEL_MIN) * progress + } + } + + private setupSliderCallbacks = (): void => { + validate(this.interactable) + validate(this.slider) + validate(this.renderMeshVisual) + this.interactable.onTriggerStart.add(() => { + this.renderMeshVisual.mainPass.pinch = 1.0 + this.renderMeshVisual.mainPass.level = this.currentValue + }) + this.interactable.onTriggerEnd.add(() => { + this.renderMeshVisual.mainPass.pinch = 0.0 + }) + this.slider.onValueUpdate.add((value) => { + this.currentValue = value + this.renderMeshVisual.mainPass.level = this.getSliderLevelFromValue(value) + }) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/SliderFeedback.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/SliderFeedback.ts.meta new file mode 100644 index 00000000..670556c0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/SliderFeedback.ts.meta @@ -0,0 +1,42 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! ff001284-48a2-4fa7-9458-50a16e591aa9 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + knobObject: false + renderMeshVisual: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - renderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + knobObject: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - // @input Component.RenderMeshVisual renderMeshVisual + - // @input SceneObject knobObject + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ToggleFeedback.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ToggleFeedback.ts new file mode 100644 index 00000000..da8fcb53 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ToggleFeedback.ts @@ -0,0 +1,146 @@ +import {Interactable} from "../Interaction/Interactable/Interactable" +import {ToggleButton} from "../UI/ToggleButton/ToggleButton" +import {validate} from "../../Utils/validate" + +/** + * This class provides visual feedback for a {@link ToggleButton} by changing the material of the provided {@link RenderMeshVisual}s when the button is toggled on or off. + */ +@component +export class ToggleFeedback extends BaseScriptComponent { + @input + toggledOffMaterial!: Material + @input + toggledOffSelectMaterial!: Material + @input + toggledOnMaterial!: Material + @input + toggledOnSelectMaterial!: Material + @input + disabledMaterial!: Material + @input + meshVisuals: RenderMeshVisual[] = [] + + private toggleButton: ToggleButton | null = null + private interactable: Interactable | null = null + + private materials: Material[] = [] + + onAwake(): void { + this.materials = [ + this.toggledOffMaterial, + this.toggledOffSelectMaterial, + this.toggledOnMaterial, + this.toggledOnSelectMaterial, + this.disabledMaterial, + ] + + this.defineScriptEvents() + } + + private defineScriptEvents() { + this.createEvent("OnStartEvent").bind(() => { + this.init() + }) + } + + init(): void { + this.toggleButton = this.getSceneObject().getComponent( + ToggleButton.getTypeName(), + ) + + this.interactable = this.getSceneObject().getComponent( + Interactable.getTypeName(), + ) + + if (this.interactable === null || this.interactable === undefined) { + throw new Error( + "UIToggleButtonCustomize script requires an Interactable on the ToggleButton", + ) + } + + this.setupInteractableCallbacks(this.interactable) + } + + private removeMaterials(): void { + for (let i = 0; i < this.meshVisuals.length; i++) { + let materials = [] + + const matCount = this.meshVisuals[i].getMaterialsCount() + + for (let k = 0; k < matCount; k++) { + const material = this.meshVisuals[i].getMaterial(k) + + if (this.materials.includes(material)) { + continue + } + + materials.push(material) + } + + this.meshVisuals[i].clearMaterials() + + for (var k = 0; k < materials.length; k++) { + this.meshVisuals[i].addMaterial(materials[k]) + } + } + } + + // Changes the material of each RenderMeshVisual provided. + private changeMeshes(material: Material | undefined): void { + validate(material) + + this.removeMaterials() + + this.meshVisuals.forEach((mesh) => { + mesh.addMaterial(material) + }) + } + + /** + * Changes the materials depending on the {@link ToggleButton}'s status. + * @param materialOn - The material to be used if on. + * @param materialOff - The material to be used if off. + */ + private changeToggleOnMesh( + materialOn: Material | undefined, + materialOff: Material | undefined, + ) { + validate(this.toggleButton) + this.changeMeshes(this.toggleButton.isToggledOn ? materialOn : materialOff) + } + + // Sets up interactable callbacks. + setupInteractableCallbacks(interactable: Interactable): void { + validate(this.toggleButton) + + interactable.onTriggerStart.add(() => { + this.changeToggleOnMesh( + this.toggledOnSelectMaterial, + this.toggledOffSelectMaterial, + ) + }) + + interactable.onTriggerCanceled.add(() => { + this.changeToggleOnMesh(this.toggledOnMaterial, this.toggledOffMaterial) + }) + + this.toggleButton.createEvent("OnEnableEvent").bind(() => { + this.changeToggleOnMesh(this.toggledOnMaterial, this.toggledOffMaterial) + }) + + this.toggleButton.createEvent("OnDisableEvent").bind(() => { + this.changeMeshes(this.disabledMaterial) + }) + + this.toggleButton.onStateChanged.add((isToggledOn) => { + if (this.toggleButton?.enabled === false) { + this.changeMeshes(this.disabledMaterial) + return + } + + this.changeMeshes( + isToggledOn ? this.toggledOnMaterial : this.toggledOffMaterial, + ) + }) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ToggleFeedback.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ToggleFeedback.ts.meta new file mode 100644 index 00000000..dd4cc605 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Helpers/ToggleFeedback.ts.meta @@ -0,0 +1,55 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! c2971054-0a35-4c5a-8cc0-f6ba384f7c3c + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + disabledMaterial: false + meshVisuals: false + toggledOffMaterial: false + toggledOffSelectMaterial: false + toggledOnMaterial: false + toggledOnSelectMaterial: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + [] + ScriptTypes: + - + {} + InputLines: + - // @input Asset.Material toggledOffMaterial + - // @input Asset.Material toggledOffSelectMaterial + - // @input Asset.Material toggledOnMaterial + - // @input Asset.Material toggledOnSelectMaterial + - // @input Asset.Material disabledMaterial + - "// @input Component.RenderMeshVisual[] meshVisuals" + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/Billboard.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/Billboard.ts new file mode 100644 index 00000000..2e7115b6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/Billboard.ts @@ -0,0 +1,148 @@ +import BillboardController, { + BillboardConfig, + RotationAxis, +} from "./BillboardController" + +/** + * Billboard allows an object to rotate to face the camera. + */ +@component +export class Billboard extends BaseScriptComponent { + private controller!: BillboardController + + @ui.group_start("Billboard") + @input + private _xAxisEnabled: boolean = false + @input + private _yAxisEnabled: boolean = true + @input + private _zAxisEnabled: boolean = false + @input + @hint("How big the angle must be to start rotating about that axis") + private _axisBufferDegrees: vec3 = new vec3(0, 0, 0) + @input + @hint( + "How fast the target should rotate to follow camera, instant follow = 1, delay follow = 0.1", + ) + private _axisEasing: vec3 = new vec3(1, 1, 1) + /** + * @deprecated This property no longer changes the speed of the follow rotation. Use _axisEasing instead. + */ + @input + @hint( + "Decrecated. Please use the property Axis Easing to adjust the rotation speed", + ) + duration: number = 0.033 + + @ui.group_end + onAwake(): void { + const billboardConfig: BillboardConfig = { + script: this, + target: this.getSceneObject(), + xAxisEnabled: this._xAxisEnabled, + yAxisEnabled: this._yAxisEnabled, + zAxisEnabled: this._zAxisEnabled, + axisBufferDegrees: this._axisBufferDegrees, + axisEasing: this._axisEasing, + } + this.controller = new BillboardController(billboardConfig) + } + + /** + * Immediately resets the SceneObject to the rotation accroding to inputs regardless of easing. + */ + snapToOffsetRotation(): void { + this.controller.resetRotation() + } + + /** + * @returns if the SceneObject billboards about the x-axis. + */ + get xAxisEnabled(): boolean { + return this._xAxisEnabled + } + + /** + * @param enabled - defines if the SceneObject billboards about the x-axis. + */ + set xAxisEnabled(enabled: boolean) { + if (enabled === this._xAxisEnabled) { + return + } + this._xAxisEnabled = enabled + this.controller.enableAxisRotation(RotationAxis.X, enabled) + } + + /** + * @returns if the SceneObject billboards about the y-axis. + */ + get yAxisEnabled(): boolean { + return this._yAxisEnabled + } + + /** + * @param enabled - defines if the SceneObject billboards about the y-axis. + */ + set yAxisEnabled(enabled: boolean) { + if (enabled === this._yAxisEnabled) { + return + } + this._yAxisEnabled = enabled + this.controller.enableAxisRotation(RotationAxis.Y, enabled) + } + + /** + * @returns if the SceneObject billboards about the z-axis. + */ + get zAxisEnabled(): boolean { + return this._zAxisEnabled + } + + /** + * @param enabled - defines if the SceneObject billboards about the z-axis. + */ + set zAxisEnabled(enabled: boolean) { + if (enabled === this._zAxisEnabled) { + return + } + this._zAxisEnabled = enabled + this.controller.enableAxisRotation(RotationAxis.Z, enabled) + } + + /** + * @param easing - the vector defining the easing for each axis. For instant follow, use easing = (1,1,1). + */ + set axisEasing(easing: vec3) { + if (easing.equal(this._axisEasing)) { + return + } + this._axisEasing = easing + this.controller.axisEasing = easing + } + + /** + * @returns the vector defining the easing for each axis. + */ + get axisEasing(): vec3 { + return this._axisEasing + } + + /** + * @param bufferDegrees - the vector defining the buffer for each axis. + */ + set axisBufferDegrees(bufferDegrees: vec3) { + if (bufferDegrees.equal(this._axisBufferDegrees)) { + return + } + + this._axisBufferDegrees = bufferDegrees + this.controller.axisBufferDegrees = bufferDegrees + } + + /** + * @returns the vector defining the buffer for each axis. + */ + get axisBufferDegrees(): vec3 { + return this._axisBufferDegrees + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/Billboard.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/Billboard.ts.meta new file mode 100644 index 00000000..52b4b109 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/Billboard.ts.meta @@ -0,0 +1,56 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! b5593251-a0da-4491-8561-2e0dccd715bc + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! b5593251-a0da-4491-8561-2e0dccd715bc + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 85e33322-8dc6-43ca-a012-c99785598a0b + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _axisBufferDegrees: false + _axisEasing: false + _xAxisEnabled: false + _yAxisEnabled: false + _zAxisEnabled: false + duration: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - duration: 0.033000 + _xAxisEnabled: false + _yAxisEnabled: true + _zAxisEnabled: false + _axisBufferDegrees: ! {x: 0.000000, y: 0.000000, z: 0.000000} + _axisEasing: ! {x: 1.000000, y: 1.000000, z: 1.000000} + ScriptTypes: + - + {} + InputLines: + - '// @ui {"widget":"group_start", "label":"Billboard"}' + - // @input bool _xAxisEnabled + - // @input bool _yAxisEnabled = true + - // @input bool _zAxisEnabled + - '// @input vec3 _axisBufferDegrees {"hint":"How big the angle must be to start rotating about that axis"}' + - '// @input vec3 _axisEasing {"hint":"How fast the target should rotate to follow camera, instant follow = 1, delay follow = 0.1"}' + - '// @input float duration = 0.033 {"hint":"Decrecated. Please use the property Axis Easing to adjust the rotation speed"}' + - '// @ui {"widget":"group_end"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardController.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardController.ts new file mode 100644 index 00000000..b9d49616 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardController.ts @@ -0,0 +1,254 @@ +import WorldCameraFinderProvider from "../../../Providers/CameraProvider/WorldCameraFinderProvider" +import BillboardRotationCalculator, { + ALMOST_ONE, +} from "./BillboardRotationCalculator" + +export type BillboardConfig = { + script: ScriptComponent + target: SceneObject + xAxisEnabled?: boolean + yAxisEnabled?: boolean + zAxisEnabled?: boolean + // We allow the user to set the buffer in degrees for ease of customizability as we expect this to be a field in a Custom Component. + axisBufferDegrees?: vec3 + // Easing causes the target to have a slight 'lag' in movement. This vector is unitless. + // As an example, an entry of y=0.1 would cause the target to only rotate 10% of the desired angle per update about the y-axis. + axisEasing?: vec3 + // Duration is the expected duration of time between updates but can be configured, lower duration leads to faster rotation. + duration?: number +} + +export enum RotationAxis { + X, + Y, + Z, +} +const rotationAxes = [RotationAxis.X, RotationAxis.Y, RotationAxis.Z] +const VEC_UP = vec3.up() +const VEC_DOWN = vec3.down() + +const TAG = "BillboardController" + +export default class BillboardController { + private worldCameraProvider = WorldCameraFinderProvider.getInstance() + + // The angles along each axes will be calculated separately + private xAxisCalculator: BillboardRotationCalculator + private yAxisCalculator: BillboardRotationCalculator + private zAxisCalculator: BillboardRotationCalculator + + // The target will be the SceneObject to rotate. + private target: SceneObject + private targetTransform: Transform + + // The target will rotate according to the camera's position for X/Y-axes rotation, camera's rotation for Z-axis rotation. + private cameraTransform: Transform = this.worldCameraProvider.getTransform() + + private updateEvent: SceneEvent + + // We wait until the first update to set the rotation due to an inaccuracy of transforms on first frame. + private firstUpdate = true + + constructor(config: BillboardConfig) { + this.target = config.target + this.targetTransform = this.target.getTransform() + + // Set up the rotation calculators to rotate along the axes with specific behavior. + this.xAxisCalculator = new BillboardRotationCalculator({ + axis: RotationAxis.X, + axisEnabled: config.xAxisEnabled, + axisBufferRadians: + MathUtils.DegToRad * (config.axisBufferDegrees?.x ?? 0), + axisEasing: config.axisEasing?.x ?? 1, + }) + this.yAxisCalculator = new BillboardRotationCalculator({ + axis: RotationAxis.Y, + axisEnabled: config.yAxisEnabled, + axisBufferRadians: + MathUtils.DegToRad * (config.axisBufferDegrees?.y ?? 0), + axisEasing: config.axisEasing?.y ?? 1, + }) + this.zAxisCalculator = new BillboardRotationCalculator({ + axis: RotationAxis.Z, + axisEnabled: config.zAxisEnabled, + axisBufferRadians: + MathUtils.DegToRad * (config.axisBufferDegrees?.z ?? 0), + axisEasing: config.axisEasing?.z ?? 1, + }) + this.updateEvent = config.script.createEvent("UpdateEvent") + this.updateEvent.bind(this.onUpdate.bind(this)) + } + + public enableAxisRotation(axis: RotationAxis, enabled: boolean): void { + let axisCalculator: BillboardRotationCalculator + + switch (axis) { + case RotationAxis.X: + axisCalculator = this.xAxisCalculator + break + case RotationAxis.Y: + axisCalculator = this.yAxisCalculator + break + case RotationAxis.Z: + axisCalculator = this.zAxisCalculator + break + } + + axisCalculator.axisEnabled = enabled + } + + public get axisEasing(): vec3 { + return new vec3( + this.xAxisCalculator.axisEasing, + this.yAxisCalculator.axisEasing, + this.zAxisCalculator.axisEasing + ) + } + public set axisEasing(easing: vec3) { + this.xAxisCalculator.axisEasing = easing.x + this.yAxisCalculator.axisEasing = easing.y + this.zAxisCalculator.axisEasing = easing.z + } + + public get axisBufferDegrees(): vec3 { + return new vec3( + MathUtils.RadToDeg * this.xAxisCalculator.axisBufferRadians, + MathUtils.RadToDeg * this.yAxisCalculator.axisBufferRadians, + MathUtils.RadToDeg * this.zAxisCalculator.axisBufferRadians + ) + } + public set axisBufferDegrees(bufferDegrees: vec3) { + this.xAxisCalculator.axisBufferRadians = + MathUtils.DegToRad * bufferDegrees.x + this.yAxisCalculator.axisBufferRadians = + MathUtils.DegToRad * bufferDegrees.y + this.zAxisCalculator.axisBufferRadians = + MathUtils.DegToRad * bufferDegrees.z + } + + // The following functions aid with getting unit vectors relative to the target's current rotation. + private getForwardVector() { + return this.targetTransform.forward + } + + private getUpVector() { + return this.targetTransform.up + } + + private getRightVector() { + return this.targetTransform.right + } + + // Returns a unit vector aligned with the line from the target's center to the camera for X/Y-axes rotation. + private getTargetToCameraVector() { + return this.cameraTransform + .getWorldPosition() + .sub(this.targetTransform.getWorldPosition()) + .normalize() + } + + // Returns the up vector of a camera for Z-axis rotation. + private getCameraUpVector() { + return this.cameraTransform.up + } + + // Rotates the target about each enabled axis separately. + private onUpdate(): void { + if (this.firstUpdate) { + this.firstUpdate = false + this.resetRotation() + + return + } + + for (const axis of rotationAxes) { + let rotationQuaternion: quat + switch (axis) { + case RotationAxis.X: + rotationQuaternion = this.xAxisCalculator.getRotation( + this.getRightVector(), + this.getForwardVector(), + this.getTargetToCameraVector(), + this.getUpVector() + ) + break + case RotationAxis.Y: + { + let upVector: vec3 + if (this.getUpVector().dot(VEC_DOWN) > ALMOST_ONE) { + upVector = VEC_DOWN + } else { + upVector = VEC_UP + } + rotationQuaternion = this.yAxisCalculator.getRotation( + upVector, + this.getForwardVector(), + this.getTargetToCameraVector(), + this.getRightVector().uniformScale(-1) + ) + } + break + case RotationAxis.Z: + rotationQuaternion = this.zAxisCalculator.getRotation( + this.getForwardVector(), + this.getUpVector(), + this.getCameraUpVector(), + this.getRightVector() + ) + break + default: + throw new Error(`Invalid axis: ${axis}`) + } + + this.targetTransform.setWorldRotation( + rotationQuaternion.multiply(this.targetTransform.getWorldRotation()) + ) + } + } + + public resetRotation(): void { + for (const axis of rotationAxes) { + let rotationQuaternion: quat + switch (axis) { + case RotationAxis.X: + rotationQuaternion = this.xAxisCalculator.resetRotation( + this.getRightVector(), + this.getForwardVector(), + this.getTargetToCameraVector(), + this.getUpVector() + ) + break + case RotationAxis.Y: + { + let upVector: vec3 + if (this.getUpVector().dot(VEC_DOWN) > ALMOST_ONE) { + upVector = VEC_DOWN + } else { + upVector = VEC_UP + } + rotationQuaternion = this.yAxisCalculator.resetRotation( + upVector, + this.getForwardVector(), + this.getTargetToCameraVector(), + this.getRightVector().uniformScale(-1) + ) + } + break + case RotationAxis.Z: + rotationQuaternion = this.zAxisCalculator.resetRotation( + this.getForwardVector(), + this.getUpVector(), + this.getCameraUpVector(), + this.getRightVector() + ) + break + default: + throw new Error(`Invalid axis: ${axis}`) + } + + this.targetTransform.setWorldRotation( + rotationQuaternion.multiply(this.targetTransform.getWorldRotation()) + ) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardController.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardController.ts.meta new file mode 100644 index 00000000..0bcf8aba --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardController.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 209152d4-efca-4682-99c5-2943bc96e7b0 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 209152d4-efca-4682-99c5-2943bc96e7b0 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! c39dbf8c-0122-48d3-a28b-06f5121abbe9 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardRotationCalculator.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardRotationCalculator.ts new file mode 100644 index 00000000..d7dba5f3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardRotationCalculator.ts @@ -0,0 +1,179 @@ +import {RotationAxis} from "./BillboardController" + +export type RotationCalculatorConfig = { + axis: RotationAxis + axisEnabled?: boolean + axisBufferRadians?: number + axisEasing?: number +} + +const TAG = "BillboardRotationCalculator" + +const DEFAULT_DURATION = 0.033 +export const ALMOST_ONE = 1 - Number.MIN_VALUE + +/** + * BillboardRotationCalculator is used to calculate the quaternion to rotate an object by to align with a new vector along an axis. + * More specifically, this calculator is used along a SceneObject's local X/Z-axes and global Y-axis. + * These calculators only take in vec3's as SceneObject manipulation is handled in BillboardController. + */ +export default class BillboardRotationCalculator { + private axis: RotationAxis + private _axisEnabled: boolean = false + + private _axisBufferRadians: number = 0 + + // Use an estimated time for the duration between each update to prevent FPS issues from slowing down billboarding effect. + private duration: number = 0 + private _axisEasing: number = 1 + + constructor(config: RotationCalculatorConfig) { + this.axis = config.axis + this.axisEnabled = config.axisEnabled ?? false + this.axisBufferRadians = config.axisBufferRadians ?? 0 + this.axisEasing = config.axisEasing ?? 1 + } + + get axisEnabled(): boolean { + return this._axisEnabled + } + set axisEnabled(enabled: boolean) { + this._axisEnabled = enabled + } + + get axisBufferRadians(): number { + return this._axisBufferRadians + } + set axisBufferRadians(radians: number) { + this._axisBufferRadians = radians + } + + get axisEasing(): number { + return this._axisEasing + } + set axisEasing(easing: number) { + this._axisEasing = easing + } + + // Returns the quaternion representing the rotation necessary for the target to align with the camera. + private calculateRotationQuaternion( + rotationRadians: number, + axisVector: vec3 + ): quat { + let rotationQuaternion: quat = quat.angleAxis(rotationRadians, axisVector) + + return rotationQuaternion + } + + // Returns the exact angle to rotate the target by along the given axis. + // This function will include the logic for interpolation / buffer tolerances later. + private calculateAxisRotation(angle: number): number { + if (!this.axisEnabled || Math.abs(angle) < this.axisBufferRadians) { + return 0 + } + + // Calculate the angle to rotate just enough to keep the camera within the buffer cone. + let bufferAngle = angle - Math.sign(angle) * this.axisBufferRadians + + if (this.axisEasing !== 1) { + // If more time has passed than the expected duration, we should rotate more to prevent FPS issues slowing down animations. + let timeRatio = getDeltaTime() / DEFAULT_DURATION + return MathUtils.lerp(0, bufferAngle, this.axisEasing * timeRatio) + } else { + // If we are not easing along this axis, just return the angle to maintain buffer zone. + return bufferAngle + } + } + + /** + * Returns the angle about specified axis to rotate the target to align with the camera. + * By projecting the forward/up vector onto planes defined by the relevant axis as the normal, we can separately calculate the angles of each axis. + * The separate calculations allow for each axis to have its own buffer / interpolation values. + * Because the user is expected to walk around freely, we use local X and Z axes for calculation, but global Y axis as the user's perception of 'up' is constant. + */ + private calculateAxisAngle( + axisVector: vec3, + forwardVector: vec3, + cameraVector: vec3, + originVector: vec3 + ): number { + let forwardVectorOnPlane = forwardVector.projectOnPlane(axisVector) + let cameraVectorOnPlane = cameraVector.projectOnPlane(axisVector) + + let angle = forwardVectorOnPlane.angleTo(cameraVectorOnPlane) + + // Origin vector describes the position on the unit circle where radian = 0. + // We use this vector to compare if we should flip the sign of the angle to rotate in the correct direction. + let forwardAngleOnPlane = originVector.angleTo(forwardVectorOnPlane) + let cameraAngleOnPlane = originVector.angleTo(cameraVectorOnPlane) + if (forwardAngleOnPlane > cameraAngleOnPlane) { + angle = -angle + } + + return angle + } + + // Rotates the target about each enabled axis separately. + public getRotation( + axisVector: vec3, + forwardVector: vec3, + cameraVector: vec3, + originVector: vec3 + ): quat { + if (this.skipRotation()) { + return quat.quatIdentity() + } + + if (axisVector.dot(forwardVector) > ALMOST_ONE) { + return quat.quatIdentity() + } + let angle = this.calculateAxisAngle( + axisVector, + forwardVector, + cameraVector, + originVector + ) + let rotationRadians = this.calculateAxisRotation(angle) + + let rotationQuaternion = this.calculateRotationQuaternion( + rotationRadians, + axisVector + ) + + return rotationQuaternion + } + + /** + * Used to snap the target immediately into proper rotation according to configuration. + * @param axisVector - the vector to rotate about + * @param forwardVector - the forward vector of the target + * @param cameraVector - the vector from camera to target + * @param originVector - the origin of rotation as a reference to ensure proper rotation + * @returns the rotation about the given axis to align the target's forward vector with the camera. + */ + public resetRotation( + axisVector: vec3, + forwardVector: vec3, + cameraVector: vec3, + originVector: vec3 + ) { + if (axisVector.dot(forwardVector) > ALMOST_ONE) { + return quat.quatIdentity() + } + let angle = this.calculateAxisAngle( + axisVector, + forwardVector, + cameraVector, + originVector + ) + + return this.axisEnabled + ? this.calculateRotationQuaternion(angle, axisVector) + : quat.quatIdentity() + } + + // Returns if the controller should skip rotating about the specified axis. + private skipRotation(): boolean { + return !this.axisEnabled + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardRotationCalculator.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardRotationCalculator.ts.meta new file mode 100644 index 00000000..f914720b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Billboard/BillboardRotationCalculator.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 793b9d0a-4564-4a14-a948-0dd076981b76 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 793b9d0a-4564-4a14-a948-0dd076981b76 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 254b5100-c2f8-422a-83f1-b36ed99634ca + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectView.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectView.ts new file mode 100644 index 00000000..d9f00b82 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectView.ts @@ -0,0 +1,657 @@ +import { + FieldTargetingMode, + HandInteractor, +} from "../../../Core/HandInteractor/HandInteractor" +import {InteractorTriggerType} from "../../../Core/Interactor/Interactor" +import WorldCameraFinderProvider from "../../../Providers/CameraProvider/WorldCameraFinderProvider" +import {BaseHand} from "../../../Providers/HandInputData/BaseHand" +import {HandInputData} from "../../../Providers/HandInputData/HandInputData" +import {HandType} from "../../../Providers/HandInputData/HandType" +import {HandVisuals} from "../../../Providers/HandInputData/HandVisuals" +import TrackedHand from "../../../Providers/HandInputData/TrackedHand" +import SIKLogLevelProvider from "../../../Providers/InteractionConfigurationProvider/SIKLogLevelProvider" +import animate, {CancelSet} from "../../../Utils/animate" +import {LensConfig} from "../../../Utils/LensConfig" +import {validate} from "../../../Utils/validate" +import {GlowEffectViewModel} from "./GlowEffectViewModel" +import {HandVisualSelection} from "./HandVisual" + +const TAG = "GlowEffectView" + +const GLOW_QUAD_WORLD_SCALE = new vec3(0.3, 0.3, 0.3) +const PINCH_BASE_BONUS_RATIO = 0.8 +const PINCH_ANIMATION_DURATION = 0.3 + +const PINCH_STRENGTH_NEAR_PINCH_EXIT_THRESHOLD = 0.2 +const PINCH_STRENGTH_NEAR_PINCH_ENTER_THRESHOLD = 0.5 + +const HOVER_COLOR = new vec4(216 / 256, 163 / 256, 4 / 256, 1) +const TRIGGER_COLOR = new vec4(247 / 256, 231 / 256, 90 / 256, 1) +const BEHIND_COLOR = new vec4(1.0, 0.0, 0.0, 1) + +const HAND_MESH_MATERIAL_BRIGHTNESS_FARFIELD = 1.0 +const HAND_MESH_MATERIAL_BRIGHTNESS_NEARFIELD = 1.0 +const HAND_MESH_MATERIAL_FULL_BRIGHTNESS_DISTANCE_NEARFIELD = 0.2 +const HAND_MESH_MATERIAL_BRIGHTNESS_TRIGGERED = 2.0 +const GLOW_MATERIAL_START_BRIGHTNESS_DISTANCE_NEARFIELD = 0.3 +const GLOW_MATERIAL_FULL_BRIGHTNESS_DISTANCE_NEARFIELD = 0.8 +const GLOW_MATERIAL_BRIGHTNESS_NEARFIELD = 2.0 +const GLOW_MATERIAL_BRIGHTNESS_TRIGGERED = 3.0 +const GLOW_MATERIAL_BRIGHTNESS_BEHIND_MIN = 2.0 +const GLOW_MATERIAL_BRIGHTNESS_BEHIND_MAX = 1.0 +const GLOW_MATERIAL_DISTANCE_BEHIND_MIN = 0.93 +const GLOW_MATERIAL_DISTANCE_BEHIND_MAX = 1.0 +const GLOW_MATERIAL_DEFAULT_BRIGHTNESS = 0.5 + +/* + * This determines what we consider to be "palm facing the camera", so a smaller value + * means that your palm would need to be to be looking more "directly" at the camera + * for us to consider it to be "facing the camera" + */ +const HAND_FACING_CAMERA_THRESHOLD_DEGREES = 90 + +const VEC3_UP = vec3.up() + +export type GlowEffectViewConfig = { + handType: HandType + unitPlaneMesh: RenderMesh + tipGlowMaterial: Material + idleColor: vec4 + pinchDownColor: vec4 + tapProximityThreshold: number + pinchTexture: Texture + tapTexture: Texture + tipGlowRenderOrder: number + handInteractor: HandInteractor + visualSelection: HandVisualSelection + handOutlineMaterial: Material + handOccluderMaterial: Material + shouldThumbPokeGlow: boolean +} + +/** + * GlowEffectView controls the glow effect that happens when pinching and tapping. + * + * I did not extend View class because while this q + * acts like a View in the sense that it is messing with UI/visuals, it does so through SceneObjects and textures which are passed + * in as parameters, instead of needing its own SceneObject hierarchy to be added. + */ +export class GlowEffectView { + private sikLogLevelProvider = SIKLogLevelProvider.getInstance() + + private updateDispatcher = LensConfig.getInstance().updateDispatcher + private handProvider: HandInputData = HandInputData.getInstance() + + private tapGlowEnabled: boolean = + this.handProvider.getDominantHand().handType === this.config.handType + private hand: TrackedHand = this.handProvider.getHand( + this.config.handType as HandType + ) + private handVisuals: HandVisuals | null = this.hand.getHandVisuals() + private indexTipSceneObject: SceneObject | undefined = + this.handVisuals?.indexTip + private thumbTipSceneObject: SceneObject | undefined = + this.handVisuals?.thumbTip + + // handToTap is the hand NOT passed to this class + private handToTap: TrackedHand = this.handProvider.getHand( + this.config.handType === "left" ? "right" : "left" + ) + + private camera = WorldCameraFinderProvider.getInstance() + + /* + * Pinch glow effect uses a quad with glow material and texture on index + * and thumb tip, both billboarded towards the camera + */ + private indexQuadSceneObject: SceneObject = this.setupTipQuadSceneObject( + this.indexTipSceneObject, + "indexTipQuadSceneObject" + ) + private indexQuadTransform: Transform = + this.indexQuadSceneObject.getTransform() + private thumbQuadSceneObject: SceneObject = this.setupTipQuadSceneObject( + this.thumbTipSceneObject, + "thumbTipQuadSceneObject" + ) + private thumbQuadTransform: Transform = + this.thumbQuadSceneObject.getTransform() + + /** + * Pinch glow effect manipulates these materials to create the "glow" + */ + private tipGlowMaterialIndexTip: Material = + this.indexQuadSceneObject.getComponent("Component.RenderMeshVisual") + .mainMaterial + private tipGlowMaterialThumbTip: Material = + this.thumbQuadSceneObject.getComponent("Component.RenderMeshVisual") + .mainMaterial + private handInteractor: HandInteractor = this.config.handInteractor + + private indexGlowBonusCancelSet = new CancelSet() + private indexGlowStrengthCancelSet = new CancelSet() + + private thumbGlowBonusCancelSet = new CancelSet() + private thumbGlowStrengthCancelSet = new CancelSet() + + private indexGlowBonus = 0 + private indexGlowBase = 0 + private thumbGlowBonus = 0 + private thumbGlowBase = 0 + + private isInPalmUIMode = false + private isInTargetingMode = false + private isInNearPinchMode = false + + private pinchTransitionColor = vec4.one() + private visualSelection: HandVisualSelection = this.config.visualSelection + private handOutlineMaterial: Material = this.config.handOutlineMaterial + private handOccluderMaterial: Material = this.config.handOccluderMaterial + private shouldThumbPokeGlow: boolean = this.config.shouldThumbPokeGlow + + private glowEffectViewModel: GlowEffectViewModel = new GlowEffectViewModel({ + handType: this.config.handType as HandType, + logLevel: this.sikLogLevelProvider.logLevel, + }) + + // Cached value from API .enabled calls + // eslint-disable-next-line @typescript-eslint/no-inferrable-types + private _enabled: boolean = true + + constructor(private config: GlowEffectViewConfig) { + // Connect to ViewModel events. This is how the glow effect will be driven + this.glowEffectViewModel.animateIndexGlowBase.add( + (animateGlowBaseUp: boolean) => { + this.animateIndexGlowBase(animateGlowBaseUp) + } + ) + this.glowEffectViewModel.animateIndexGlowBonus.add( + (animateGlowBonusUp: boolean) => { + this.animateIndexGlowBonus(animateGlowBonusUp) + } + ) + this.glowEffectViewModel.animateThumbGlowBase.add( + (animateGlowBaseUp: boolean) => { + this.animateThumbGlowBase(animateGlowBaseUp) + } + ) + this.glowEffectViewModel.animateThumbGlowBonus.add( + (animateGlowBonusUp: boolean) => { + this.animateThumbGlowBonus(animateGlowBonusUp) + } + ) + this.glowEffectViewModel.tapModeChanged((tapModeEntered: boolean) => { + validate(this.handVisuals?.handMesh) + + if (tapModeEntered === true) { + this.handVisuals.handMesh.mainPass["handGlowTex"] = + this.config.tapTexture + } else { + this.handVisuals.handMesh.mainPass["handGlowTex"] = + this.config.pinchTexture + } + }) + + if (this.visualSelection === HandVisualSelection.Occluder) { + this.tipGlowMaterialIndexTip.mainPass["brightness"] = 0 + this.tipGlowMaterialThumbTip.mainPass["brightness"] = 0 + this.handVisuals.handMesh.mainMaterial = this.handOccluderMaterial + } + + // Set up initial conditions + this.setIsInPalmUiMode(this.calculateIsInPalmUIMode()) + this.setIsInTargetingMode(this.calculateIsInTargetingMode()) + + this.setupPinchEvents() + this.updateDispatcher + .createUpdateEvent("GlowEffectViewUpdateEvent") + .bind(() => { + // If disabled via API, do not update the glow. + if ( + !this._enabled || + this.visualSelection === HandVisualSelection.Occluder + ) { + return + } + + const cameraPosition = this.camera.getWorldPosition() + this.indexQuadTransform.setWorldRotation( + quat.lookAt( + cameraPosition.sub(this.indexQuadTransform.getWorldPosition()), + VEC3_UP + ) + ) + this.thumbQuadTransform.setWorldRotation( + quat.lookAt( + cameraPosition.sub(this.thumbQuadTransform.getWorldPosition()), + VEC3_UP + ) + ) + + this.setIsInPalmUiMode(this.calculateIsInPalmUIMode()) + this.setIsInTargetingMode(this.calculateIsInTargetingMode()) + this.setIsInNearPinchMode(this.calculateIsInNearPinchMode()) + }) + this.updateDispatcher + .createLateUpdateEvent("GlowEffectViewLateUpdateEvent") + .bind(() => { + // If disabled via API, do not update the glow. + if ( + !this._enabled || + this.visualSelection === HandVisualSelection.Occluder + ) { + return + } + this.updateMaterial() + }) + } + + /** + * Enable/disable the SceneObject's created by this class + * @param isEnabled - boolean representing whether to enable or disable this class + */ + set enabled(isEnabled: boolean) { + this._enabled = isEnabled + this.indexQuadSceneObject.enabled = isEnabled + this.thumbQuadSceneObject.enabled = isEnabled + } + + public setVisualSelection(visualSelection: HandVisualSelection): void { + this.visualSelection = visualSelection + if (this.visualSelection === HandVisualSelection.Occluder) { + this.tipGlowMaterialIndexTip.mainPass["brightness"] = 0 + this.tipGlowMaterialThumbTip.mainPass["brightness"] = 0 + this.handVisuals.handMesh.mainPass["indexBrightness"] = 0 + this.handVisuals.handMesh.mainPass["thumbBrightness"] = 0 + this.handVisuals.handMesh.mainMaterial = this.handOccluderMaterial + } else { + this.handVisuals.handMesh.mainMaterial = this.handOutlineMaterial + this.tipGlowMaterialIndexTip.mainPass["brightness"] = + GLOW_MATERIAL_DEFAULT_BRIGHTNESS + this.tipGlowMaterialThumbTip.mainPass["brightness"] = + GLOW_MATERIAL_DEFAULT_BRIGHTNESS + this.handVisuals.handMesh.mainPass["indexBrightness"] = 0 + this.handVisuals.handMesh.mainPass["thumbBrightness"] = 0 + } + } + + /** + * Clean up the SceneObject's created by PinchGlow + */ + destroy(): void { + this.indexQuadSceneObject.destroy() + this.thumbQuadSceneObject.destroy() + } + + private setupTipQuadSceneObject( + parentSceneObject: SceneObject | undefined, + sceneObjectName: string + ): SceneObject { + validate(parentSceneObject) + + // Create the quad SceneObject to hold glow material and texture + const quadSceneObject = global.scene.createSceneObject(sceneObjectName) + quadSceneObject.setParent(parentSceneObject) + quadSceneObject.getTransform().setWorldScale(GLOW_QUAD_WORLD_SCALE) + + const quadComponent = quadSceneObject.createComponent( + "Component.RenderMeshVisual" + ) + quadComponent.mesh = this.config.unitPlaneMesh + quadComponent.setRenderOrder(this.config.tipGlowRenderOrder) + + // Initialize the quad RenderMeshVisual with the glow material + const tipGlowMaterial = this.config.tipGlowMaterial.clone() + tipGlowMaterial.mainPass.depthTest = true + tipGlowMaterial.mainPass.depthWrite = false + tipGlowMaterial.mainPass.glowColor = HOVER_COLOR + tipGlowMaterial.mainPass.brightness = GLOW_MATERIAL_DEFAULT_BRIGHTNESS + + quadComponent.mainMaterial = tipGlowMaterial + + return quadSceneObject + } + + private updateMaterial(): void { + validate(this.handVisuals?.handMesh) + const scaledIndexGlowBase = this.indexGlowBase * PINCH_BASE_BONUS_RATIO + const scaledIndexGlowBonus = + this.indexGlowBonus * (1 - PINCH_BASE_BONUS_RATIO) + let combinedIndexGlowFactor = scaledIndexGlowBase + scaledIndexGlowBonus + + const scaledThumbGlowBase = this.thumbGlowBase * PINCH_BASE_BONUS_RATIO + const scaledThumbGlowBonus = + this.indexGlowBonus * (1 - PINCH_BASE_BONUS_RATIO) + const combinedThumbGlowFactor = scaledThumbGlowBase + scaledThumbGlowBonus + this.tipGlowMaterialIndexTip.mainPass["pinchBrightness"] = + combinedIndexGlowFactor + this.tipGlowMaterialThumbTip.mainPass["pinchBrightness"] = + combinedThumbGlowFactor + + switch (this.handInteractor.fieldTargetingMode) { + case FieldTargetingMode.FarField: + this.tipGlowMaterialIndexTip.mainPass["pokeBrightness"] = 0 + this.tipGlowMaterialThumbTip.mainPass["pokeBrightness"] = 0 + this.handVisuals.handMesh.mainPass["indexBrightness"] = + combinedIndexGlowFactor * HAND_MESH_MATERIAL_BRIGHTNESS_FARFIELD + this.handVisuals.handMesh.mainPass["thumbBrightness"] = + combinedIndexGlowFactor * HAND_MESH_MATERIAL_BRIGHTNESS_FARFIELD + this.pinchTransitionColor = vec4.lerp( + HOVER_COLOR, + TRIGGER_COLOR, + this.indexGlowBonus + ) + this.handVisuals.handMesh.mainPass["indexGlowColor"] = + this.pinchTransitionColor + this.handVisuals.handMesh.mainPass["thumbGlowColor"] = + this.pinchTransitionColor + this.tipGlowMaterialIndexTip.mainPass["glowColor"] = + this.pinchTransitionColor + this.tipGlowMaterialThumbTip.mainPass["glowColor"] = + this.pinchTransitionColor + break + case FieldTargetingMode.NearField: + switch (this.handInteractor.currentTrigger) { + case InteractorTriggerType.None: + this.handVisuals.handMesh.mainPass["indexBrightness"] = + MathUtils.remap( + this.handInteractor.nearFieldProximity, + 0, + HAND_MESH_MATERIAL_FULL_BRIGHTNESS_DISTANCE_NEARFIELD, + 0, + HAND_MESH_MATERIAL_BRIGHTNESS_NEARFIELD + ) + if (this.shouldThumbPokeGlow) { + this.handVisuals.handMesh.mainPass["thumbBrightness"] = + MathUtils.remap( + this.handInteractor.nearFieldProximity, + 0, + HAND_MESH_MATERIAL_FULL_BRIGHTNESS_DISTANCE_NEARFIELD, + 0, + HAND_MESH_MATERIAL_BRIGHTNESS_NEARFIELD + ) + } + combinedIndexGlowFactor = + this.handInteractor.nearFieldProximity > 1 + ? 0 + : MathUtils.remap( + this.handInteractor.nearFieldProximity, + GLOW_MATERIAL_START_BRIGHTNESS_DISTANCE_NEARFIELD, + GLOW_MATERIAL_FULL_BRIGHTNESS_DISTANCE_NEARFIELD, + 0, + GLOW_MATERIAL_BRIGHTNESS_NEARFIELD + ) + this.pinchTransitionColor = vec4.lerp( + HOVER_COLOR, + TRIGGER_COLOR, + this.indexGlowBonus + ) + this.handVisuals.handMesh.mainPass["indexGlowColor"] = + this.pinchTransitionColor + this.handVisuals.handMesh.mainPass["thumbGlowColor"] = + this.pinchTransitionColor + this.tipGlowMaterialIndexTip.mainPass["glowColor"] = + this.pinchTransitionColor + this.tipGlowMaterialThumbTip.mainPass["glowColor"] = + this.pinchTransitionColor + break + case InteractorTriggerType.Pinch: + case InteractorTriggerType.Poke: + case InteractorTriggerType.Select: + if ( + this.handInteractor.nearFieldProximity > + GLOW_MATERIAL_DISTANCE_BEHIND_MIN + ) { + this.handVisuals.handMesh.mainPass["indexBrightness"] = + HAND_MESH_MATERIAL_BRIGHTNESS_NEARFIELD + if (this.shouldThumbPokeGlow) { + this.handVisuals.handMesh.mainPass["thumbBrightness"] = + HAND_MESH_MATERIAL_BRIGHTNESS_NEARFIELD + } + combinedIndexGlowFactor = MathUtils.remap( + this.handInteractor.nearFieldProximity, + GLOW_MATERIAL_DISTANCE_BEHIND_MIN, + GLOW_MATERIAL_DISTANCE_BEHIND_MAX, + GLOW_MATERIAL_BRIGHTNESS_BEHIND_MIN, + GLOW_MATERIAL_BRIGHTNESS_BEHIND_MAX + ) + this.handVisuals.handMesh.mainPass["indexGlowColor"] = + BEHIND_COLOR + this.tipGlowMaterialIndexTip.mainPass["glowColor"] = BEHIND_COLOR + this.handVisuals.handMesh.mainPass["indexGlowColor"] = + TRIGGER_COLOR + this.tipGlowMaterialThumbTip.mainPass["glowColor"] = + this.pinchTransitionColor + } else { + this.handVisuals.handMesh.mainPass["indexBrightness"] = + HAND_MESH_MATERIAL_BRIGHTNESS_TRIGGERED + if (this.shouldThumbPokeGlow) { + this.handVisuals.handMesh.mainPass["thumbBrightness"] = + HAND_MESH_MATERIAL_BRIGHTNESS_TRIGGERED + } + combinedIndexGlowFactor = GLOW_MATERIAL_BRIGHTNESS_TRIGGERED + this.handVisuals.handMesh.mainPass["indexGlowColor"] = + TRIGGER_COLOR + this.handVisuals.handMesh.mainPass["thumbGlowColor"] = + TRIGGER_COLOR + this.tipGlowMaterialIndexTip.mainPass["glowColor"] = TRIGGER_COLOR + this.tipGlowMaterialThumbTip.mainPass["glowColor"] = TRIGGER_COLOR + } + break + default: + break + } + break + default: + break + } + this.tipGlowMaterialIndexTip.mainPass["pokeBrightness"] = + combinedIndexGlowFactor + this.tipGlowMaterialThumbTip.mainPass["pokeBrightness"] = + combinedThumbGlowFactor + } + + private setIsInPalmUiMode(isInPalmUIMode: boolean): void { + if (isInPalmUIMode === this.isInPalmUIMode) { + return + } + + this.isInPalmUIMode = isInPalmUIMode + + this.glowEffectViewModel.palmUIModeEvent(this.isInPalmUIMode) + } + + private setIsInTargetingMode(isInTargetingMode: boolean): void { + if (isInTargetingMode === this.isInTargetingMode) { + return + } + + this.isInTargetingMode = isInTargetingMode + + this.glowEffectViewModel.targetingEvent(this.isInTargetingMode) + } + + private setIsInNearPinchMode(isInNearPinchMode: boolean): void { + if (isInNearPinchMode === this.isInNearPinchMode) { + return + } + + this.isInNearPinchMode = isInNearPinchMode + + this.glowEffectViewModel.nearPinchEvent(this.isInNearPinchMode) + } + + private setupPinchEvents(): void { + this.hand.onPinchDown.add(() => { + this.glowEffectViewModel.pinchEvent(true) + }) + + this.hand.onPinchUp.add(() => { + this.glowEffectViewModel.pinchEvent(false) + }) + + this.hand.onPinchCancel.add(() => { + this.glowEffectViewModel.pinchEvent(false) + }) + } + + private calculateIsInNearPinchMode(): boolean { + const pinchStrength = this.hand.getPinchStrength() ?? 0 + + if ( + pinchStrength > PINCH_STRENGTH_NEAR_PINCH_ENTER_THRESHOLD && + this.isInNearPinchMode === false + ) { + return true + } else if ( + pinchStrength < PINCH_STRENGTH_NEAR_PINCH_EXIT_THRESHOLD && + this.hand.isPinching() === false + ) { + return false + } + + return true + } + + /** + * @returns boolean + */ + private calculateIsInTargetingMode(): boolean { + return !this.isHandFacingCamera(this.hand) + } + + /** + * Cannot use this.config.hand.isFacingCamera() as that only triggers if hand + * is facing directly at camera, where we need more broad definition + * + * @param hand - the BaseHand to check + * @returns boolean + */ + private isHandFacingCamera(hand: BaseHand): boolean { + const handAngle = hand.getFacingCameraAngle() + if ( + handAngle === null || + handAngle > HAND_FACING_CAMERA_THRESHOLD_DEGREES + ) { + return false + } + + return true + } + + /* + * isInPalmUI + * 1) are both hands tracked + * 2) are both hands visible / important landmarks visible in the display fov + * 3) non dominant hand isPalmFacingCamera == true and dominant hand is not facing camera + * 4) if distance between index finger tip and palm center is less than the threshold + */ + private calculateIsInPalmUIMode() { + if (!this.tapGlowEnabled || !this.bothHandsTracked()) { + return false + } + + const handToTapPinkyKnuckle = this.handToTap.pinkyKnuckle + const tappingHandIndexTip = this.hand.indexTip + + if (handToTapPinkyKnuckle === null || tappingHandIndexTip === null) { + return false + } + + const handToTapPinkyKnucklePos = handToTapPinkyKnuckle.position + const tappingHandIndexTipPos = tappingHandIndexTip.position + + if ( + !this.camera.inFoV(handToTapPinkyKnucklePos) || + !this.camera.inFoV(tappingHandIndexTipPos) + ) { + return false + } + + if ( + !this.isHandFacingCamera(this.handToTap) || + this.isHandFacingCamera(this.hand) + ) { + return false + } + + const handToTapPalmCenterPos = this.handToTap.getPalmCenter() + + if (handToTapPalmCenterPos === null) { + return false + } + + const distanceToPalmCenter = tappingHandIndexTipPos.distance( + handToTapPalmCenterPos + ) + + if (distanceToPalmCenter >= this.config.tapProximityThreshold) { + return false + } + + return true + } + + private bothHandsTracked(): boolean { + return ( + this.handProvider.getDominantHand().isTracked() && + this.handProvider.getNonDominantHand().isTracked() + ) + } + + private animateIndexGlowBase(animateUp: boolean) { + this.indexGlowStrengthCancelSet() + animate({ + cancelSet: this.indexGlowStrengthCancelSet, + duration: PINCH_ANIMATION_DURATION, + easing: "ease-in-out-back-cubic", + start: this.indexGlowBase, + end: animateUp ? 1 : 0, + update: (t) => { + this.indexGlowBase = t + }, + }) + } + + private animateIndexGlowBonus(animateUp: boolean) { + this.indexGlowBonusCancelSet() + animate({ + cancelSet: this.indexGlowBonusCancelSet, + duration: PINCH_ANIMATION_DURATION, + easing: "ease-in-out-back-cubic", + start: this.indexGlowBonus, + end: animateUp ? 1 : 0, + update: (t) => { + this.indexGlowBonus = t + }, + }) + } + + private animateThumbGlowBase(animateUp: boolean) { + this.thumbGlowStrengthCancelSet() + animate({ + cancelSet: this.thumbGlowStrengthCancelSet, + duration: PINCH_ANIMATION_DURATION, + easing: "ease-in-out-back-cubic", + start: this.thumbGlowBase, + end: animateUp ? 1 : 0, + update: (t) => { + this.thumbGlowBase = t + }, + }) + } + + private animateThumbGlowBonus(animateUp: boolean) { + this.thumbGlowBonusCancelSet() + animate({ + cancelSet: this.thumbGlowBonusCancelSet, + duration: PINCH_ANIMATION_DURATION, + easing: "ease-in-out-back-cubic", + start: this.thumbGlowBonus, + end: animateUp ? 1 : 0, + update: (t) => { + this.thumbGlowBonus = t + }, + }) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectView.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectView.ts.meta new file mode 100644 index 00000000..2a6b7f90 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectView.ts.meta @@ -0,0 +1,40 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 6de35c79-7087-4ed7-9578-f5c6cf78003b + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 6de35c79-7087-4ed7-9578-f5c6cf78003b + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! d295e902-ad05-4600-a136-c96c94a96f40 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectViewModel.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectViewModel.ts new file mode 100644 index 00000000..01e67728 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectViewModel.ts @@ -0,0 +1,352 @@ +import {HandType} from "../../../Providers/HandInputData/HandType" +import Event from "../../../Utils/Event" +import {LogLevel} from "../../../Utils/LogLevel" +import NativeLogger from "../../../Utils/NativeLogger" +import StateMachine from "../../../Utils/StateMachine" + +const TAG = "GlowEffectViewModel" + +export enum GlowEffectStates { + IdleTargeting = "IdleTargeting", + IdleNotTargeting = "IdleNotTargeting", + NearPinching = "NearPinching", + Pinching = "Pinching", + PinchingNotTargeting = "PinchingNotTargeting", + NearTapping = "NearTapping", + Tapping = "Tapping", +} + +export enum StateMachineSignals { + EnterTargeting = "EnterTargeting", + ExitTargeting = "ExitTargeting", + EnterNearPinch = "EnterNearPinch", + ExitNearPinch = "ExitNearPinch", + EnterPinch = "EnterPinch", + ExitPinch = "ExitPinch", + EnterPalmUIMode = "EnterPalmUIMode", + ExitPalmUIMode = "ExitPalmUIMode", + EnterTap = "EnterTap", + ExitTap = "ExitTap", +} + +export type GlowEffectViewModelConfig = { + handType: HandType + logLevel: LogLevel +} + +/* + * GlowEffectViewModel manages the state of the glow effect for pinch and tap on hand visuals + */ +export class GlowEffectViewModel { + // Get LogLevel from config, this avoids having a SIK dependency in the ViewModel + private log = new NativeLogger(TAG) + + // Events used to communicate with the GlowEffectView + private animateIndexGlowBaseEvent = new Event() + readonly animateIndexGlowBase = this.animateIndexGlowBaseEvent.publicApi() + + private animateIndexGlowBonusEvent = new Event() + readonly animateIndexGlowBonus = this.animateIndexGlowBonusEvent.publicApi() + + private animateThumbGlowBaseEvent = new Event() + readonly animateThumbGlowBase = this.animateThumbGlowBaseEvent.publicApi() + + private animateThumbGlowBonusEvent = new Event() + readonly animateThumbGlowBonus = this.animateThumbGlowBonusEvent.publicApi() + + private tapModeChangedEvent = new Event() + readonly tapModeChanged = this.tapModeChangedEvent.publicApi() + + private stateMachine = this.createStateMachine() + + constructor(private config: GlowEffectViewModelConfig) {} + + /** + * Call to notify that we have entered or exited targeting mode + * + * @param enteredTargeting - Whether we have entered targeting mode (hand not facing the camera) + */ + targetingEvent(enteredTargeting: boolean): void { + enteredTargeting + ? this.stateMachine.sendSignal(StateMachineSignals.EnterTargeting) + : this.stateMachine.sendSignal(StateMachineSignals.ExitTargeting) + } + + /** + * Call to notify that we have entered or exited near pinch mode + * + * @param enteredNearPinch - Whether we have entered near pinch mode + */ + nearPinchEvent(enteredNearPinch: boolean): void { + enteredNearPinch + ? this.stateMachine.sendSignal(StateMachineSignals.EnterNearPinch) + : this.stateMachine.sendSignal(StateMachineSignals.ExitNearPinch) + } + + /** + * Call to notify that we have entered or exited pinch mode + * + * @param enteredPinch - Whether we have entered pinch mode + */ + pinchEvent(enteredPinch: boolean): void { + enteredPinch + ? this.stateMachine.sendSignal(StateMachineSignals.EnterPinch) + : this.stateMachine.sendSignal(StateMachineSignals.ExitPinch) + } + + /** + * Call to notify that we have entered or exited palm UI mode + * + * @param enteredPalmUIMode - Whether we have entered palm UI mode + */ + palmUIModeEvent(enteredPalmUIMode: boolean): void { + enteredPalmUIMode + ? this.stateMachine.sendSignal(StateMachineSignals.EnterPalmUIMode) + : this.stateMachine.sendSignal(StateMachineSignals.ExitPalmUIMode) + } + + /** + * Call to notify that we have entered or exited tap mode + * + * @param enteredTap - Whether we have entered tap mode + */ + tapEvent(enteredTap: boolean): void { + enteredTap + ? this.stateMachine.sendSignal(StateMachineSignals.EnterTap) + : this.stateMachine.sendSignal(StateMachineSignals.ExitTap) + } + + /** + * Get the current state of the state machine used to manage the glow effects + * + * @returns GlowEffectStates the state that the state machine is currently in + */ + get currentState(): GlowEffectStates { + if (this.stateMachine.currentState === null) { + throw new Error("GlowEffectStateMachine does not have a current state!") + } + + return this.stateMachine.currentState.name as GlowEffectStates + } + + private createStateMachine(): StateMachine { + const stateMachine = new StateMachine("GlowEffectStateMachine") + + stateMachine.addState({ + name: GlowEffectStates.IdleTargeting, + onEnter: () => { + this.log.v( + `${this.config.handType} Entered state: ${this.currentState}` + ) + this.animateIndexGlowBaseEvent.invoke(false) + this.animateIndexGlowBonusEvent.invoke(false) + + this.animateThumbGlowBaseEvent.invoke(false) + this.animateThumbGlowBonusEvent.invoke(false) + }, + transitions: [ + { + nextStateName: GlowEffectStates.IdleNotTargeting, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.ExitTargeting + }, + }, + { + nextStateName: GlowEffectStates.NearPinching, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.EnterNearPinch + }, + }, + { + nextStateName: GlowEffectStates.NearTapping, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.EnterPalmUIMode + }, + }, + ], + }) + + stateMachine.addState({ + name: GlowEffectStates.IdleNotTargeting, + onEnter: () => { + this.log.v( + `${this.config.handType} Entered state: ${this.currentState}` + ) + this.animateIndexGlowBaseEvent.invoke(false) + this.animateIndexGlowBonusEvent.invoke(false) + + this.animateThumbGlowBaseEvent.invoke(false) + this.animateThumbGlowBonusEvent.invoke(false) + }, + transitions: [ + { + nextStateName: GlowEffectStates.IdleTargeting, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.EnterTargeting + }, + }, + { + nextStateName: GlowEffectStates.NearPinching, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.EnterNearPinch + }, + }, + ], + }) + + stateMachine.addState({ + name: GlowEffectStates.NearPinching, + onEnter: () => { + this.log.v( + `${this.config.handType} Entered state: ${this.currentState}` + ) + this.animateIndexGlowBaseEvent.invoke(true) + this.animateIndexGlowBonusEvent.invoke(false) + + this.animateThumbGlowBaseEvent.invoke(true) + this.animateThumbGlowBonusEvent.invoke(false) + }, + transitions: [ + { + nextStateName: GlowEffectStates.IdleTargeting, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.ExitNearPinch + }, + }, + { + nextStateName: GlowEffectStates.IdleNotTargeting, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.ExitTargeting + }, + }, + { + nextStateName: GlowEffectStates.NearTapping, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.EnterPalmUIMode + }, + }, + { + nextStateName: GlowEffectStates.Pinching, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.EnterPinch + }, + }, + ], + }) + + stateMachine.addState({ + name: GlowEffectStates.Pinching, + onEnter: () => { + this.log.v( + `${this.config.handType} Entered state: ${this.currentState}` + ) + this.animateIndexGlowBaseEvent.invoke(true) + this.animateIndexGlowBonusEvent.invoke(true) + + this.animateThumbGlowBaseEvent.invoke(true) + this.animateThumbGlowBonusEvent.invoke(true) + }, + transitions: [ + { + nextStateName: GlowEffectStates.PinchingNotTargeting, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.ExitTargeting + }, + }, + { + nextStateName: GlowEffectStates.NearPinching, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.ExitPinch + }, + }, + ], + }) + + stateMachine.addState({ + name: GlowEffectStates.PinchingNotTargeting, + onEnter: () => { + this.log.v( + `${this.config.handType} Entered state: ${this.currentState}` + ) + this.animateIndexGlowBaseEvent.invoke(true) + this.animateIndexGlowBonusEvent.invoke(true) + + this.animateThumbGlowBaseEvent.invoke(true) + this.animateThumbGlowBonusEvent.invoke(true) + }, + transitions: [ + { + nextStateName: GlowEffectStates.IdleNotTargeting, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.ExitPinch + }, + }, + { + nextStateName: GlowEffectStates.Pinching, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.EnterTargeting + }, + }, + ], + }) + + stateMachine.addState({ + name: GlowEffectStates.NearTapping, + onEnter: () => { + this.log.v( + `${this.config.handType} Entered state: ${this.currentState}` + ) + this.tapModeChangedEvent.invoke(true) + + this.animateIndexGlowBaseEvent.invoke(true) + this.animateIndexGlowBonusEvent.invoke(false) + + this.animateThumbGlowBaseEvent.invoke(false) + this.animateThumbGlowBonusEvent.invoke(false) + }, + transitions: [ + { + nextStateName: GlowEffectStates.IdleTargeting, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.ExitPalmUIMode + }, + onExecution: () => { + this.tapModeChangedEvent.invoke(false) + }, + }, + { + nextStateName: GlowEffectStates.Tapping, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.EnterTap + }, + }, + ], + }) + + stateMachine.addState({ + name: GlowEffectStates.Tapping, + onEnter: () => { + this.log.v( + `${this.config.handType} Entered state: ${this.currentState}` + ) + this.animateIndexGlowBaseEvent.invoke(true) + this.animateIndexGlowBonusEvent.invoke(true) + + this.animateThumbGlowBaseEvent.invoke(false) + this.animateThumbGlowBonusEvent.invoke(false) + }, + transitions: [ + { + nextStateName: GlowEffectStates.NearTapping, + checkOnSignal: (signal: string) => { + return signal === StateMachineSignals.ExitTap + }, + }, + ], + }) + + stateMachine.enterState(GlowEffectStates.IdleTargeting, true) + + return stateMachine + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectViewModel.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectViewModel.ts.meta new file mode 100644 index 00000000..fc2b3a2a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/GlowEffectViewModel.ts.meta @@ -0,0 +1,40 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 531578ff-5392-4ebe-bb65-91cdb21b6504 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 531578ff-5392-4ebe-bb65-91cdb21b6504 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! a07f4b76-9c01-417d-aee5-9407fed7a569 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/HandVisual.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/HandVisual.ts new file mode 100644 index 00000000..01f4be6d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/HandVisual.ts @@ -0,0 +1,466 @@ +import {HandInteractor} from "../../../Core/HandInteractor/HandInteractor" +import {HandInputData} from "../../../Providers/HandInputData/HandInputData" +import {HandType} from "../../../Providers/HandInputData/HandType" +import {HandVisuals} from "../../../Providers/HandInputData/HandVisuals" +import TrackedHand from "../../../Providers/HandInputData/TrackedHand" +import {InteractionConfigurationProvider} from "../../../Providers/InteractionConfigurationProvider/InteractionConfigurationProvider" +import {InputChecker} from "../../../Utils/InputChecker" +import {findSceneObjectByName} from "../../../Utils/SceneObjectUtils" +import {validate} from "../../../Utils/validate" +import {GlowEffectView} from "./GlowEffectView" +import RadialOcclusionView from "./RadialOcclusionView" + +const TAG = "HandVisual" + +export enum HandVisualSelection { + Default = "Default", + Occluder = "Occluder", +} + +/** + * This class provides a visual representation of the hand, with the ability to automatically wire joints to the hand mesh. It also provides the ability to add a radial gradient occlusion effect and a glow effect to the hand mesh. + */ + +@component +export class HandVisual extends BaseScriptComponent implements HandVisuals { + @ui.group_start("Hand Visual") + @input + @widget( + new ComboBoxWidget([ + new ComboBoxItem("Left", "left"), + new ComboBoxItem("Right", "right"), + ]), + ) + private handType!: string + @input + @widget( + new ComboBoxWidget([ + new ComboBoxItem("Default", "Default"), + new ComboBoxItem("Occluder", "Occluder"), + ]), + ) + private selectVisual: string = "Default" + @input handInteractor: HandInteractor + @input + /** + * Reference to the RenderMeshVisual of the hand mesh. + */ + handMesh!: RenderMeshVisual + + @input + @hint("The desired render order of the handMesh") + private handMeshRenderOrder: number = 9999 + + @input + @hint("Parent of both the rig and the mesh") + /** @inheritdoc */ + root!: SceneObject + @input + @hint("If checked the HandVisual will attempt to automatically wire joints") + /** + * Check to engage [Automatic Setup](#automatic-setup), leave unchecked for [Manual Setup](#manual-setup). Defaults to "true". + */ + autoJointMapping: boolean = true + + @ui.group_start("Joint Setup") + @showIf("autoJointMapping", false) + @input("SceneObject") + @allowUndefined + wrist: SceneObject | undefined + @input("SceneObject") + @allowUndefined + thumbToWrist: SceneObject | undefined + @input("SceneObject") + @allowUndefined + thumbBaseJoint: SceneObject | undefined + @input("SceneObject") + @allowUndefined + thumbKnuckle: SceneObject | undefined + @input("SceneObject") + @allowUndefined + thumbMidJoint: SceneObject | undefined + @input("SceneObject") + @allowUndefined + thumbTip: SceneObject | undefined + @input("SceneObject") + @allowUndefined + indexToWrist: SceneObject | undefined + @input("SceneObject") + @allowUndefined + indexKnuckle: SceneObject | undefined + @input("SceneObject") + @allowUndefined + indexMidJoint: SceneObject | undefined + @input("SceneObject") + @allowUndefined + indexUpperJoint: SceneObject | undefined + @input("SceneObject") + @allowUndefined + indexTip: SceneObject | undefined + @input("SceneObject") + @allowUndefined + middleToWrist: SceneObject | undefined + @input("SceneObject") + @allowUndefined + middleKnuckle: SceneObject | undefined + @input("SceneObject") + @allowUndefined + middleMidJoint: SceneObject | undefined + @input("SceneObject") + @allowUndefined + middleUpperJoint: SceneObject | undefined + @input("SceneObject") + @allowUndefined + middleTip: SceneObject | undefined + @input("SceneObject") + @allowUndefined + ringToWrist: SceneObject | undefined + @input("SceneObject") + @allowUndefined + ringKnuckle: SceneObject | undefined + @input("SceneObject") + @allowUndefined + ringMidJoint: SceneObject | undefined + @input("SceneObject") + @allowUndefined + ringUpperJoint: SceneObject | undefined + @input("SceneObject") + @allowUndefined + ringTip: SceneObject | undefined + @input("SceneObject") + @allowUndefined + pinkyToWrist: SceneObject | undefined + @input("SceneObject") + @allowUndefined + pinkyKnuckle: SceneObject | undefined + @input("SceneObject") + @allowUndefined + pinkyMidJoint: SceneObject | undefined + @input("SceneObject") + @allowUndefined + pinkyUpperJoint: SceneObject | undefined + @input("SceneObject") + @allowUndefined + pinkyTip: SceneObject | undefined + @ui.group_end + @ui.group_start("Glow Effect") + @input + @hint("Whether or not the thumb should glow when poking") + private shouldThumbPokeGlow: boolean = false + @input + @hint("The plane mesh on which the glow texture/material will be rendered") + private unitPlaneMesh!: RenderMesh + @input + @hint("The material which will be manipulated to create the glow effect") + private tipGlowMaterial!: Material + @input + @widget(new ColorWidget()) + @hint("The color the glow will be when you are not pinching") + private idleColor!: vec4 + @input + @widget(new ColorWidget()) + @hint("The color the glow will be when you are pinching") + private pinchDownColor!: vec4 + @input + @hint( + "How close index finger of tapping hand has to be to tapped hand to initiate tap glow", + ) + private tapProximityThreshold!: number + @input + @hint("The texture applied to the hand when creating pinch glow effect") + private pinchTexture!: Texture + @input + @hint("The texture applied to the hand when creating tap glow effect") + private tapTexture!: Texture + @input + @hint("The render order of the quad on which the tip glow effect occurs") + private tipGlowRenderOrder: number = 10000 + @ui.group_end + @ui.group_start("Radial Gradient Occlusion") + @input + @hint("Whether or not the radial gradient occluder is enabled") + private occluderEnabled: boolean = false + @input + @hint("The plane mesh the radial gradient occluder will be rendered") + private occluderUnitPlaneMesh!: RenderMesh + @input + @hint("The material which will be create the gradient occlusion effect") + private radialGradientOcclusionMaterial!: Material + @input + @hint("The render order of the gradient quad tracked to the hand") + private gradientQuadRenderOrder: number = 9997 + @ui.group_end + @ui.group_end + @ui.group_start("Hand Mesh Materials") + @input + @hint( + "The material which will be create the default visual effect on the hand mesh" + ) + private handOutlineMaterial: Material + @input + @hint( + "The material which will be create the occluder visual effect on the hand mesh" + ) + private handOccluderMaterial: Material + @ui.group_end + + // Dependencies + private handProvider: HandInputData = HandInputData.getInstance() + private interactionConfigurationProvider: InteractionConfigurationProvider = + InteractionConfigurationProvider.getInstance() + private inputChecker = new InputChecker(TAG) + private hand: TrackedHand | undefined + private radialOcclusionView: RadialOcclusionView | undefined + private glowEffectView: GlowEffectView | undefined + // eslint-disable-next-line @typescript-eslint/no-inferrable-types + private _enabled: boolean = true + private _handVisualSelection: HandVisualSelection = this + .selectVisual as HandVisualSelection + + initialized = false + + /** + * Sets the selection of the hand visual to present to user + */ + set visualSelection(selection: HandVisualSelection) { + this._handVisualSelection = selection + this.glowEffectView?.setVisualSelection(selection) + } + + /** + * @returns the current selection of the hand visual to present to user + */ + get visualSelection(): HandVisualSelection { + return this._handVisualSelection + } + + private defineScriptEvents() { + this.createEvent("OnStartEvent").bind(() => { + this.initialize() + }) + + this.createEvent("OnEnableEvent").bind(() => { + this.defineOnEnableBehavior() + }) + + this.createEvent("OnDisableEvent").bind(() => { + this.defineOnDisableBehavior() + }) + + this.createEvent("OnDestroyEvent").bind(() => { + this.defineOnDestroyBehavior() + }) + } + + protected defineOnEnableBehavior(): void { + this.setEnabled(true) + } + + protected defineOnDisableBehavior(): void { + this.setEnabled(false) + } + + protected defineOnDestroyBehavior(): void { + if (this.glowEffectView !== undefined) { + this.glowEffectView.destroy() + } + if (this.radialOcclusionView !== undefined) { + this.radialOcclusionView.destroy() + } + + this.hand?.detachHandVisuals(this) + } + + private defineHandEvents() { + validate(this.hand) + + this.hand.onEnabledChanged.add((enabled: boolean) => { + this._enabled = enabled + // We shouldn't turn on the hand visuals until the hand has actually been found. + if (!enabled) { + this.setEnabled(false) + } + }) + + this.hand.onHandFound.add(() => { + if (this._enabled) { + this.setEnabled(true) + } + }) + + this.hand.onHandLost.add(() => { + if (this._enabled) { + this.setEnabled(false) + } + }) + } + + private getJointSceneObject( + targetSceneObjectName: string, + root: SceneObject + ) { + const sceneObject = findSceneObjectByName(root, targetSceneObjectName) + if (sceneObject === null) { + throw new Error( + `${targetSceneObjectName} could not be found in children of SceneObject: ${this.root?.name}` + ) + } + return sceneObject + } + + private setEnabled(enabled: boolean) { + if (this.glowEffectView !== undefined) { + this.glowEffectView.enabled = enabled + } + if (this.radialOcclusionView !== undefined) { + this.radialOcclusionView.enabled = enabled + } + this.handMesh.enabled = enabled + } + + onAwake(): void { + if (this.handType !== "right") { + this.hand = this.handProvider.getHand("left") + } else { + this.hand = this.handProvider.getHand("right") + } + + this.hand.attachHandVisuals(this) + + this.defineHandEvents() + this.defineScriptEvents() + + this.handMesh.setRenderOrder(this.handMeshRenderOrder) + + /* + * HandVisuals were not working correctly with frustum culling, + * instead manually define the AABB for frustum culling + */ + const min = this.handMesh.mesh.aabbMin + const max = this.handMesh.mesh.aabbMax + + const pass = this.handMesh.mainMaterial.mainPass + pass.frustumCullMode = FrustumCullMode.UserDefinedAABB + pass.frustumCullMin = min + pass.frustumCullMax = max + } + + public initialize(): void { + if (this.initialized) { + return + } + validate(this.hand) + + this.wrist = this.autoJointMapping + ? this.getJointSceneObject("wrist", this.root) + : this.wrist + + this.thumbToWrist = this.autoJointMapping + ? this.getJointSceneObject("wrist_to_thumb", this.root) + : this.thumbToWrist + this.thumbBaseJoint = this.autoJointMapping + ? this.getJointSceneObject("thumb-0", this.root) + : this.thumbBaseJoint + this.thumbKnuckle = this.autoJointMapping + ? this.getJointSceneObject("thumb-1", this.root) + : this.thumbKnuckle + this.thumbMidJoint = this.autoJointMapping + ? this.getJointSceneObject("thumb-2", this.root) + : this.thumbMidJoint + this.thumbTip = this.autoJointMapping + ? this.getJointSceneObject("thumb-3", this.root) + : this.thumbTip + this.indexToWrist = this.autoJointMapping + ? this.getJointSceneObject("wrist_to_index", this.root) + : this.indexToWrist + this.indexKnuckle = this.autoJointMapping + ? this.getJointSceneObject("index-0", this.root) + : this.indexKnuckle + this.indexMidJoint = this.autoJointMapping + ? this.getJointSceneObject("index-1", this.root) + : this.indexMidJoint + this.indexUpperJoint = this.autoJointMapping + ? this.getJointSceneObject("index-2", this.root) + : this.indexUpperJoint + this.indexTip = this.autoJointMapping + ? this.getJointSceneObject("index-3", this.root) + : this.indexTip + this.middleToWrist = this.autoJointMapping + ? this.getJointSceneObject("wrist_to_mid", this.root) + : this.middleToWrist + this.middleKnuckle = this.autoJointMapping + ? this.getJointSceneObject("mid-0", this.root) + : this.middleKnuckle + this.middleMidJoint = this.autoJointMapping + ? this.getJointSceneObject("mid-1", this.root) + : this.middleMidJoint + this.middleUpperJoint = this.autoJointMapping + ? this.getJointSceneObject("mid-2", this.root) + : this.middleUpperJoint + this.middleTip = this.autoJointMapping + ? this.getJointSceneObject("mid-3", this.root) + : this.middleTip + this.ringToWrist = this.autoJointMapping + ? this.getJointSceneObject("wrist_to_ring", this.root) + : this.ringToWrist + this.ringKnuckle = this.autoJointMapping + ? this.getJointSceneObject("ring-0", this.root) + : this.ringKnuckle + this.ringMidJoint = this.autoJointMapping + ? this.getJointSceneObject("ring-1", this.root) + : this.ringMidJoint + this.ringUpperJoint = this.autoJointMapping + ? this.getJointSceneObject("ring-2", this.root) + : this.ringUpperJoint + this.ringTip = this.autoJointMapping + ? this.getJointSceneObject("ring-3", this.root) + : this.ringTip + this.pinkyToWrist = this.autoJointMapping + ? this.getJointSceneObject("wrist_to_pinky", this.root) + : this.pinkyToWrist + this.pinkyKnuckle = this.autoJointMapping + ? this.getJointSceneObject("pinky-0", this.root) + : this.pinkyKnuckle + this.pinkyMidJoint = this.autoJointMapping + ? this.getJointSceneObject("pinky-1", this.root) + : this.pinkyMidJoint + this.pinkyUpperJoint = this.autoJointMapping + ? this.getJointSceneObject("pinky-2", this.root) + : this.pinkyUpperJoint + this.pinkyTip = this.autoJointMapping + ? this.getJointSceneObject("pinky-3", this.root) + : this.pinkyTip + + this.initialized = true + // The joints are now ready and the effects can be initialized + + this.hand.initHandVisuals() + this.glowEffectView = new GlowEffectView({ + handType: this.handType as HandType, + unitPlaneMesh: this.unitPlaneMesh, + tipGlowMaterial: this.tipGlowMaterial, + idleColor: this.idleColor, + pinchDownColor: this.pinchDownColor, + tapProximityThreshold: this.tapProximityThreshold, + tapTexture: this.tapTexture, + pinchTexture: this.pinchTexture, + tipGlowRenderOrder: this.tipGlowRenderOrder, + handInteractor: this.handInteractor, + visualSelection: this._handVisualSelection, + handOutlineMaterial: this.handOutlineMaterial, + handOccluderMaterial: this.handOccluderMaterial, + shouldThumbPokeGlow: this.shouldThumbPokeGlow, + }) + + if (!this.occluderEnabled) { + return + } + + this.radialOcclusionView = new RadialOcclusionView({ + handType: this.handType as HandType, + unitPlaneMesh: this.occluderUnitPlaneMesh, + radialGradientOcclusionMaterial: this.radialGradientOcclusionMaterial, + gradientQuadRenderOrder: this.gradientQuadRenderOrder, + }) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/HandVisual.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/HandVisual.ts.meta new file mode 100644 index 00000000..2bfbda33 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/HandVisual.ts.meta @@ -0,0 +1,190 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 27fb63e0-f430-409f-b812-20bc1f008d3c + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 27fb63e0-f430-409f-b812-20bc1f008d3c + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! 69c8692f-ebb8-45c5-8b65-8a66ad27951b + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + - '// @ui {"widget":"group_start", "label":"Hand Visual"}' + - '// @input string handType {"widget":"combobox", "values":[{"label":"Left", "value":"left"}, {"label":"Right", "value":"right"}]}' + - '// @input string selectVisual = "Default" {"widget":"combobox", "values":[{"label":"Default", "value":"Default"}, {"label":"Occluder", "value":"Occluder"}]}' + - // @input HandInteractor handInteractor + - // @input Component.RenderMeshVisual handMesh + - '// @input float handMeshRenderOrder = 9999 {"hint":"The desired render order of the handMesh"}' + - '// @input SceneObject root {"hint":"Parent of both the rig and the mesh"}' + - '// @input bool autoJointMapping = true {"hint":"If checked the HandVisual will attempt to automatically wire joints"}' + - '// @ui {"widget":"group_start", "label":"Joint Setup", "showIf":"autoJointMapping", "showIfValue":false}' + - // @input SceneObject wrist + - // @input SceneObject thumbToWrist + - // @input SceneObject thumbBaseJoint + - // @input SceneObject thumbKnuckle + - // @input SceneObject thumbMidJoint + - // @input SceneObject thumbTip + - // @input SceneObject indexToWrist + - // @input SceneObject indexKnuckle + - // @input SceneObject indexMidJoint + - // @input SceneObject indexUpperJoint + - // @input SceneObject indexTip + - // @input SceneObject middleToWrist + - // @input SceneObject middleKnuckle + - // @input SceneObject middleMidJoint + - // @input SceneObject middleUpperJoint + - // @input SceneObject middleTip + - // @input SceneObject ringToWrist + - // @input SceneObject ringKnuckle + - // @input SceneObject ringMidJoint + - // @input SceneObject ringUpperJoint + - // @input SceneObject ringTip + - // @input SceneObject pinkyToWrist + - // @input SceneObject pinkyKnuckle + - // @input SceneObject pinkyMidJoint + - // @input SceneObject pinkyUpperJoint + - // @input SceneObject pinkyTip + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Glow Effect"}' + - '// @input bool shouldThumbPokeGlow {"hint":"Whether or not the thumb should glow when poking"}' + - '// @input Asset.RenderMesh unitPlaneMesh {"hint":"The plane mesh on which the glow texture/material will be rendered"}' + - '// @input Asset.Material tipGlowMaterial {"hint":"The material which will be manipulated to create the glow effect"}' + - '// @input vec4 idleColor {"hint":"The color the glow will be when you are not pinching", "widget":"color"}' + - '// @input vec4 pinchDownColor {"hint":"The color the glow will be when you are pinching", "widget":"color"}' + - '// @input float tapProximityThreshold {"hint":"How close index finger of tapping hand has to be to tapped hand to initiate tap glow"}' + - '// @input Asset.Texture pinchTexture {"hint":"The texture applied to the hand when creating pinch glow effect"}' + - '// @input Asset.Texture tapTexture {"hint":"The texture applied to the hand when creating tap glow effect"}' + - '// @input float tipGlowRenderOrder = 10000 {"hint":"The render order of the quad on which the tip glow effect occurs"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Radial Gradient Occlusion"}' + - '// @input bool occluderEnabled {"hint":"Whether or not the radial gradient occluder is enabled"}' + - '// @input Asset.RenderMesh occluderUnitPlaneMesh {"hint":"The plane mesh the radial gradient occluder will be rendered"}' + - '// @input Asset.Material radialGradientOcclusionMaterial {"hint":"The material which will be create the gradient occlusion effect"}' + - '// @input float gradientQuadRenderOrder = 9997 {"hint":"The render order of the gradient quad tracked to the hand"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Hand Mesh Materials"}' + - '// @input Asset.Material handOutlineMaterial {"hint":"The material which will be create the default visual effect on the hand mesh"}' + - '// @input Asset.Material handOccluderMaterial {"hint":"The material which will be create the occluder visual effect on the hand mesh"}' + - '// @ui {"widget":"group_end"}' + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + autoJointMapping: false + gradientQuadRenderOrder: true + handInteractor: false + handMesh: false + handMeshRenderOrder: true + handOccluderMaterial: false + handOutlineMaterial: false + handType: false + idleColor: false + indexKnuckle: false + indexMidJoint: false + indexTip: false + indexToWrist: false + indexUpperJoint: false + middleKnuckle: false + middleMidJoint: false + middleTip: false + middleToWrist: false + middleUpperJoint: false + occluderEnabled: false + occluderUnitPlaneMesh: false + pinchDownColor: false + pinchTexture: false + pinkyKnuckle: false + pinkyMidJoint: false + pinkyTip: false + pinkyToWrist: false + pinkyUpperJoint: false + radialGradientOcclusionMaterial: false + ringKnuckle: false + ringMidJoint: false + ringTip: false + ringToWrist: false + ringUpperJoint: false + root: false + selectVisual: false + shouldThumbPokeGlow: false + tapProximityThreshold: false + tapTexture: false + thumbBaseJoint: false + thumbKnuckle: false + thumbMidJoint: false + thumbTip: false + thumbToWrist: false + tipGlowMaterial: false + tipGlowRenderOrder: true + unitPlaneMesh: false + wrist: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - handType: "" + handMesh: ! 00000000-0000-0000-0000-000000000000 + root: ! 00000000-0000-0000-0000-000000000000 + autoJointMapping: true + wrist: ! 00000000-0000-0000-0000-000000000000 + thumbToWrist: ! 00000000-0000-0000-0000-000000000000 + thumbBaseJoint: ! 00000000-0000-0000-0000-000000000000 + thumbKnuckle: ! 00000000-0000-0000-0000-000000000000 + thumbMidJoint: ! 00000000-0000-0000-0000-000000000000 + thumbTip: ! 00000000-0000-0000-0000-000000000000 + indexToWrist: ! 00000000-0000-0000-0000-000000000000 + indexKnuckle: ! 00000000-0000-0000-0000-000000000000 + indexMidJoint: ! 00000000-0000-0000-0000-000000000000 + indexUpperJoint: ! 00000000-0000-0000-0000-000000000000 + indexTip: ! 00000000-0000-0000-0000-000000000000 + middleToWrist: ! 00000000-0000-0000-0000-000000000000 + middleKnuckle: ! 00000000-0000-0000-0000-000000000000 + middleMidJoint: ! 00000000-0000-0000-0000-000000000000 + middleUpperJoint: ! 00000000-0000-0000-0000-000000000000 + middleTip: ! 00000000-0000-0000-0000-000000000000 + ringToWrist: ! 00000000-0000-0000-0000-000000000000 + ringKnuckle: ! 00000000-0000-0000-0000-000000000000 + ringMidJoint: ! 00000000-0000-0000-0000-000000000000 + ringUpperJoint: ! 00000000-0000-0000-0000-000000000000 + ringTip: ! 00000000-0000-0000-0000-000000000000 + pinkyToWrist: ! 00000000-0000-0000-0000-000000000000 + pinkyKnuckle: ! 00000000-0000-0000-0000-000000000000 + pinkyMidJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyUpperJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyTip: ! 00000000-0000-0000-0000-000000000000 + occluderUnitPlaneMesh: ! 00000000-0000-0000-0000-000000000000 + radialGradientOcclusionMaterial: ! 00000000-0000-0000-0000-000000000000 + unitPlaneMesh: ! 00000000-0000-0000-0000-000000000000 + tipGlowMaterial: ! 00000000-0000-0000-0000-000000000000 + idleColor: ! {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + pinchDownColor: ! {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + tapProximityThreshold: ! 0.000000 + pinchTexture: ! 00000000-0000-0000-0000-000000000000 + tapTexture: ! 00000000-0000-0000-0000-000000000000 + handMeshRenderOrder: ! 9999.000000 + tipGlowRenderOrder: ! 10000.000000 + gradientQuadRenderOrder: ! 9997.000000 + occluderEnabled: false + selectVisual: Default + handInteractor: ! 00000000-0000-0000-0000-000000000000 + shouldThumbPokeGlow: false + handOutlineMaterial: ! 00000000-0000-0000-0000-000000000000 + handOccluderMaterial: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/RadialOcclusionView.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/RadialOcclusionView.ts new file mode 100644 index 00000000..dd23b491 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/RadialOcclusionView.ts @@ -0,0 +1,299 @@ +import animate, {CancelSet} from "../../../Utils/animate" + +import {Billboard} from "../Billboard/Billboard" +import {HandInputData} from "../../../Providers/HandInputData/HandInputData" +import {HandType} from "../../../Providers/HandInputData/HandType" +import {LensConfig} from "../../../Utils/LensConfig" +import {MovingAverageFilter} from "../../../Utils/MovingAverageFilter" +import {validate} from "../../../Utils/validate" +import {withAlpha} from "../../../Utils/color" + +const TAG = "RadialOcclusionView" + +export type RadialOcclusionViewConfig = { + handType: HandType + unitPlaneMesh: RenderMesh + radialGradientOcclusionMaterial: Material + gradientQuadRenderOrder: number +} + +const GRADIENT_QUAD_LOCAL_SCALE = new vec3(1.5, 1.5, 1.5) +const GRADIENT_QUAD_OFFSET_LEFT = new vec3(1.5, -2.5, 0) +const DEFAULT_GRADIENT_OPACITY = 1 +const GRADIENT_SCALE_FACTOR_MOVING_AVERAGE_SIZE = 10 + +const GRADIENT_QUAD_MIN_SCALE = 0.6 +const GRADIENT_QUAD_MAX_SCALE = 1 + +const MIN_MEAN_AVG_FINGER_DISTANCE = 2 +const MAX_MEAN_AVG_FINGER_DISTANCE = 5 + +const GRADIENT_SCALE_FACTOR_MIN = 0 +const GRADIENT_SCALE_FACTOR_MAX = 1 + +const OPACITY_ANIMATION_SECS = 0.3 + +const COLLIDER_RADIUS_CM = 4 + +/** + * RadialOcclusionView controls radial gradient occluder tracked to the hand + * + */ +export default class RadialOcclusionView { + private updateDispatcher = LensConfig.getInstance().updateDispatcher + private handProvider: HandInputData = HandInputData.getInstance() + + private hand = this.handProvider.getHand(this.config.handType) + private handVisuals = this.hand.getHandVisuals() + + /* + * Radial gradient occlusion effect uses a quad with gradient material which + * is billboarded towards the camera + */ + private gradientQuadSceneObject: SceneObject = + this.setupGradientQuadSceneObject("gradientQuadSceneObject") + + // Animate up and down when hand collides with object, so we fade out on collision + private gradientOcclusionOpacity = DEFAULT_GRADIENT_OPACITY + + private currentAverageScaleFactor = 1 + + private gradientScaleFactorMovingAverage = new MovingAverageFilter( + GRADIENT_SCALE_FACTOR_MOVING_AVERAGE_SIZE, + () => 0, + (samples: number[]) => { + return samples.reduce((a, b) => a + b, 0) / samples.length + }, + ) + + private gradientOpacityCancelSet = new CancelSet() + + // We need this secondary flag to ensure that we don't accidentally enable gradient quad during getDeltaTime() check + private gradientQuadEnabled = true + + constructor(private config: RadialOcclusionViewConfig) { + this.updateDispatcher + .createUpdateEvent("RadialOcclusionViewUpdateEvent") + .bind(() => { + /** + * Disable gradient quad when in capture mode. + * + * We can tell we are in capture mode when deltaTime is 0, this is because current capture + * implementation uses a double update, where the second update is passed deltaTime 0. + */ + if (!this.gradientQuadEnabled) { + return + } + + this.gradientQuadSceneObject.enabled = getDeltaTime() !== 0 + if (!this.gradientQuadSceneObject.enabled) { + return + } + + this.updateGradientScaleFactor() + }) + this.updateDispatcher + .createLateUpdateEvent("RadialOcclusionViewLateUpdateEvent") + .bind(() => { + if (!this.gradientQuadSceneObject.enabled) { + return + } + + this.updateVisuals() + }) + } + + /** + * Enable/disable the SceneObject's created by this class + * @param isEnabled - boolean representing whether to enable or disable this class + */ + set enabled(isEnabled: boolean) { + if (this.gradientQuadSceneObject === null) { + return + } + + this.gradientQuadEnabled = isEnabled + this.gradientQuadSceneObject.enabled = isEnabled + } + + /** + * Clean up the SceneObject's created by RadialOccluderView + */ + destroy(): void { + if (this.gradientQuadSceneObject === null) { + return + } + + this.gradientQuadSceneObject.destroy() + } + + private setupGradientQuadSceneObject(sceneObjectName: string): SceneObject { + validate(this.handVisuals?.middleKnuckle) + const middleKnuckleSceneObject = this.handVisuals.middleKnuckle + + // Create the quad SceneObject to hold occlusion material + const quadSceneObject = global.scene.createSceneObject(sceneObjectName) + quadSceneObject.setParent(middleKnuckleSceneObject) + quadSceneObject.getTransform().setLocalScale(GRADIENT_QUAD_LOCAL_SCALE) + + quadSceneObject + .getTransform() + .setLocalPosition( + this.config.handType === "left" + ? GRADIENT_QUAD_OFFSET_LEFT + : new vec3( + -1 * GRADIENT_QUAD_OFFSET_LEFT.x, + GRADIENT_QUAD_OFFSET_LEFT.y, + GRADIENT_QUAD_OFFSET_LEFT.z, + ), + ) + + // Create the mesh component to hold the gradient material + const gradientQuadRenderMeshComponent = quadSceneObject.createComponent( + "Component.RenderMeshVisual", + ) + gradientQuadRenderMeshComponent.mesh = this.config.unitPlaneMesh + + // Initialize the quad mesh with the occlusion material + const gradientOcclusionMaterial = + this.config.radialGradientOcclusionMaterial.clone() + gradientQuadRenderMeshComponent.setRenderOrder( + this.config.gradientQuadRenderOrder, + ) + gradientOcclusionMaterial.mainPass.depthTest = true + gradientOcclusionMaterial.mainPass.depthWrite = false + + gradientQuadRenderMeshComponent.mainMaterial = gradientOcclusionMaterial + + // Add a collider which is used to fade in/out the gradient when hand intersects obj with collider + const quadColliderComponent = quadSceneObject.createComponent( + "Physics.ColliderComponent", + ) + quadColliderComponent.fitVisual = false + const colliderShape = Shape.createSphereShape() + colliderShape.radius = COLLIDER_RADIUS_CM + quadColliderComponent.shape = colliderShape + + this.setupColliderEvents(quadColliderComponent) + + // Add Billboard so that quad always faces the camera + const billboardComponent = quadSceneObject.createComponent( + Billboard.getTypeName(), + ) + + this.configureBillboardComponent(billboardComponent) + + return quadSceneObject + } + + private configureBillboardComponent(billboardComponent: Billboard): void { + billboardComponent.xAxisEnabled = true + billboardComponent.yAxisEnabled = true + billboardComponent.zAxisEnabled = true + billboardComponent.axisEasing = new vec3(1, 1, 1) + billboardComponent.axisBufferDegrees = new vec3(0, 0, 0) + } + + private setupColliderEvents(collider: ColliderComponent) { + collider.onOverlapEnter.add(() => { + this.animateOpacity(false) + }) + + collider.onOverlapExit.add(() => { + this.animateOpacity(true) + }) + } + + private animateOpacity(animateUp: boolean) { + this.gradientOpacityCancelSet() + animate({ + cancelSet: this.gradientOpacityCancelSet, + duration: OPACITY_ANIMATION_SECS, + easing: "ease-in-out-back-cubic", + start: this.gradientOcclusionOpacity, + end: animateUp ? 1 : 0, + update: (t) => { + this.gradientOcclusionOpacity = t + }, + }) + } + + private updateGradientScaleFactor() { + validate(this.handVisuals?.indexTip) + validate(this.handVisuals?.indexTip) + validate(this.handVisuals?.middleTip) + validate(this.handVisuals?.ringTip) + + const thumbTipPosition = this.handVisuals.indexTip + .getTransform() + .getWorldPosition() + const indexTipPosition = this.handVisuals.indexTip + .getTransform() + .getWorldPosition() + const midTipPosition = this.handVisuals.middleTip + .getTransform() + .getWorldPosition() + const ringTipPosition = this.handVisuals.ringTip + .getTransform() + .getWorldPosition() + + const thumbTipToIndexTipDistance = + indexTipPosition.distance(thumbTipPosition) + const thumbTipToMidTipDistance = midTipPosition.distance(thumbTipPosition) + const thumbTipToRingTipDistance = ringTipPosition.distance(thumbTipPosition) + + const averageDistance = + (thumbTipToIndexTipDistance + + thumbTipToMidTipDistance + + thumbTipToRingTipDistance) / + 3 + + const clampedAverageDistance = MathUtils.clamp( + averageDistance, + MIN_MEAN_AVG_FINGER_DISTANCE, + MAX_MEAN_AVG_FINGER_DISTANCE, + ) + + const scaledAverageDistance = MathUtils.remap( + clampedAverageDistance, + MIN_MEAN_AVG_FINGER_DISTANCE, + MAX_MEAN_AVG_FINGER_DISTANCE, + GRADIENT_SCALE_FACTOR_MIN, + GRADIENT_SCALE_FACTOR_MAX, + ) + + this.currentAverageScaleFactor = + this.gradientScaleFactorMovingAverage.filter( + scaledAverageDistance, + Date.now(), + ) + } + + private updateVisuals() { + if (this.gradientQuadSceneObject === null) { + return + } + + const gradientQuadRenderMeshComponent = + this.gradientQuadSceneObject.getComponent("RenderMeshVisual") + + gradientQuadRenderMeshComponent.mainMaterial.mainPass.baseColor = withAlpha( + gradientQuadRenderMeshComponent.mainMaterial.mainPass.baseColor, + this.gradientOcclusionOpacity, + ) + + const gradientQuadLocalScale = GRADIENT_QUAD_LOCAL_SCALE.uniformScale( + MathUtils.remap( + this.currentAverageScaleFactor, + GRADIENT_SCALE_FACTOR_MIN, + GRADIENT_SCALE_FACTOR_MAX, + GRADIENT_QUAD_MIN_SCALE, + GRADIENT_QUAD_MAX_SCALE, + ), + ) + + this.gradientQuadSceneObject + .getTransform() + .setLocalScale(gradientQuadLocalScale) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/RadialOcclusionView.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/RadialOcclusionView.ts.meta new file mode 100644 index 00000000..4f916c8c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/HandVisual/RadialOcclusionView.ts.meta @@ -0,0 +1,40 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! c2884562-d84d-4e67-9cf3-1871c4a5c032 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! c2884562-d84d-4e67-9cf3-1871c4a5c032 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! 5f955622-ddc0-493d-b410-9b00bdd56600 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/Headlock.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/Headlock.ts new file mode 100644 index 00000000..a3a56292 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/Headlock.ts @@ -0,0 +1,365 @@ +import DefaultHeadlockController, { + DefaultHeadlockConfig, +} from "./HeadlockController" + +/** + * This class provides functionality to lock the camera's position and rotation relative to the user's head movements. It allows configuration of distance, translation, and rotation settings to control how the camera follows the user's head. + */ +@component +export class Headlock extends BaseScriptComponent { + private controller!: DefaultHeadlockController + + @ui.group_start("Headlock") + @input + @hint("How far away the target will be from the camera") + private _distance: number = 50 + @ui.group_start("Head Translation") + @input + @hint( + "If the camera will follow when the user moves their head along XZ-plane", + ) + private _xzEnabled: boolean = true + @input + @hint( + "How fast the camera will follow along the XZ-plane, 0.1 for delayed follow, 1 for instant follow.", + ) + private _xzEasing: number = 1 + @input + @hint("If the camera will follow when the user moves their head along Y-axis") + private _yEnabled: boolean = true + @input + @hint( + "How fast the camera will follow along the Y-axis, 0.1 for delayed follow, 1 for instant follow.", + ) + private _yEasing: number = 1 + @input + @hint( + "The magnitude of change needed to activate a translation for the target to follow the camera.", + ) + @ui.group_end + private _translationBuffer: number = 0 + @ui.group_start("Head Rotation") + @input + @hint( + "If the camera will NOT follow when the user moves their head along the pitch-axis (looking up/down)", + ) + private _lockedPitch: boolean = true + @input + @hint( + "How fast the camera will follow along the pitch-axis, 0.1 for delayed follow, 1 for instant follow.", + ) + private _pitchEasing: number = 1 + @input + @hint( + "How many degrees of offset from the center point should the target sit", + ) + private _pitchOffsetDegrees: number = 0 + @input + @hint( + "How many degrees of leeway along each direction (up/down) before change starts to occur", + ) + private _pitchBufferDegrees: number = 0 + @input + @hint( + "If the camera will follow when the user moves their head along the yaw-axis (looking left/right)", + ) + private _lockedYaw: boolean = true + @input + @hint( + "How fast the camera will follow along the yaw-axis, 0.1 for delayed follow, 1 for instant follow.", + ) + private _yawEasing: number = 1 + @input + @hint( + "How many degrees of offset from the center point should the target sit", + ) + private _yawOffsetDegrees: number = 0 + @input + @hint( + "How many degrees of leeway along each direction (left/right) before change starts to occur", + ) + @ui.group_end + @ui.group_end + private _yawBufferDegrees: number = 0 + + onAwake(): void { + const headlockConfig: DefaultHeadlockConfig = { + script: this, + target: this.getSceneObject(), + distance: this.distance, + xzEnabled: this.xzEnabled, + xzEasing: this.xzEasing, + yEnabled: this.yEnabled, + yEasing: this.yEasing, + translationBuffer: this.translationBuffer, + lockedPitch: this.lockedPitch, + pitchEasing: this.pitchEasing, + pitchOffsetDegrees: this.pitchOffsetDegrees, + pitchBufferDegrees: this.pitchBufferDegrees, + lockedYaw: this.lockedYaw, + yawEasing: this.yawEasing, + yawOffsetDegrees: this.yawOffsetDegrees, + yawBufferDegrees: this.yawBufferDegrees, + headlockComponent: this, + } + + this.controller = new DefaultHeadlockController(headlockConfig) + } + /** + * Snaps the object to its exact desired position, regardless of easing, unlocks, buffers, etc. Should be used after modifying values that affect the desired position (such as offset, distance) to snap the object into place without having a strange path. + */ + snapToOffsetPosition = (): void => { + this.controller.resetPosition() + } + /** + * Get how far the SceneObject will be from the user. + */ + get distance(): number { + return this._distance + } + + /** + * Set how far the SceneObject will be from the user. + */ + set distance(distance: number) { + if (distance === this._distance) { + return + } + this._distance = distance + this.controller.distance = distance + } + + /** + * Get if the camera will follow when the user moves their head along XZ-plane. For most cases, this should stay enabled. + */ + get xzEnabled(): boolean { + return this._xzEnabled + } + + /** + * Sets if the camera will follow when the user moves their head along XZ-plane. For most cases, this should stay enabled. + */ + set xzEnabled(enabled: boolean) { + if (enabled === this._xzEnabled) { + return + } + this._xzEnabled = enabled + this.controller.xzEnabled = enabled + } + + /** + * Get how fast the camera will follow along the XZ-plane, 0.1 for delayed follow, 1 for instant follow. + */ + get xzEasing(): number { + return this._xzEasing + } + + /** + * Set how fast the camera will follow along the XZ-plane, 0.1 for delayed follow, 1 for instant follow. + */ + set xzEasing(easing: number) { + if (easing === this._distance) { + return + } + this._xzEasing = easing + this.controller.xzEasing = easing + } + + /** + * Get if the camera will follow when the user moves their head along Y-axis. For most cases, this should stay enabled. + */ + get yEnabled(): boolean { + return this._yEnabled + } + + /** + * Set if the camera will follow when the user moves their head along Y-axis. For most cases, this should stay enabled. + */ + set yEnabled(enabled: boolean) { + if (enabled === this._yEnabled) { + return + } + this._yEnabled = enabled + this.controller.yEnabled = enabled + } + + /** + * Get how fast the camera will follow along the Y-axis, 0.1 for delayed follow, 1 for instant follow. + */ + get yEasing(): number { + return this._yEasing + } + + /** + * Set how fast the camera will follow along the Y-axis, 0.1 for delayed follow, 1 for instant follow. + */ + set yEasing(easing: number) { + if (easing === this._yEasing) { + return + } + this._yEasing = easing + this.controller.yEasing = easing + } + + /** + * Get the magnitude of change (in centimeters) needed to activate a translation for the target to follow the user's head translation. + */ + get translationBuffer(): number { + return this._translationBuffer + } + + /** + * Set the magnitude of change (in centimeters) needed to activate a translation for the target to follow the user's head translation. To keep the SceneObject from 'wobbling' when the user has an unstable head, a small buffer is recommended rather than 0. + */ + set translationBuffer(buffer: number) { + if (buffer === this._translationBuffer) { + return + } + this._translationBuffer = buffer + this.controller.translationBuffer = buffer + } + + /** + * Get if the camera will follow when the user moves their head along the pitch-axis (looking up/down) + */ + get lockedPitch(): boolean { + return this._lockedPitch + } + + /** + * Set if the camera will follow when the user moves their head along the pitch-axis (looking up/down) + */ + set lockedPitch(locked: boolean) { + if (locked === this._lockedPitch) { + return + } + this._lockedPitch = locked + this.controller.unlockPitch = !locked + } + + /** + * Get how many degrees of offset from the center point should the target sit. Positive values place the element below the center. + */ + get pitchOffsetDegrees(): number { + return this._pitchOffsetDegrees + } + + /** + * Set how many degrees of offset from the center point should the target sit. Positive values place the element below the center. + */ + set pitchOffsetDegrees(degrees: number) { + if (degrees === this._pitchOffsetDegrees) { + return + } + this._pitchOffsetDegrees = degrees + this.controller.pitchOffsetDegrees = degrees + } + + /** + * Get how fast the camera will follow along the pitch-axis, 0.1 for delayed follow, 1 for instant follow. + */ + get pitchEasing(): number { + return this._pitchEasing + } + + /** + * Set how fast the camera will follow along the pitch-axis, 0.1 for delayed follow, 1 for instant follow. + */ + set pitchEasing(easing: number) { + if (easing === this._pitchEasing) { + return + } + this._pitchEasing = easing + this.controller.pitchEasing = easing + } + + /** + * Get how many degrees of leeway along each direction (up/down) before change starts to occur. + */ + get pitchBufferDegrees(): number { + return this._pitchBufferDegrees + } + + /** + * Set how many degrees of leeway along each direction (up/down) before change starts to occur. + */ + set pitchBufferDegrees(degrees: number) { + if (degrees === this._pitchBufferDegrees) { + return + } + this._pitchBufferDegrees = degrees + this.controller.pitchBufferDegrees = degrees + } + + /** + * Get if the camera will follow when the user moves their head along the yaw-axis (looking left/right) + */ + get lockedYaw(): boolean { + return this._lockedYaw + } + + /** + * Set if the camera will follow when the user moves their head along the yaw-axis (looking left/right) + */ + set lockedYaw(locked: boolean) { + if (locked === this._lockedYaw) { + return + } + this._lockedYaw = locked + this.controller.unlockYaw = !locked + } + + /** + * Get how many degrees of offset from the center point should the target sit. Positive values place the element to the left. + */ + get yawOffsetDegrees(): number { + return this._yawOffsetDegrees + } + + /** + * Set how many degrees of offset from the center point should the target sit. Positive values place the element to the left. + */ + set yawOffsetDegrees(degrees: number) { + if (degrees === this._yawOffsetDegrees) { + return + } + this._yawOffsetDegrees = degrees + this.controller.yawOffsetDegrees = degrees + } + + /** + * Get how fast the camera will follow along the yaw-axis, 0.1 for delayed follow, 1 for instant follow. + */ + get yawEasing(): number { + return this._yawEasing + } + + /** + * Set how fast the camera will follow along the yaw-axis, 0.1 for delayed follow, 1 for instant follow. + */ + set yawEasing(easing: number) { + if (easing === this._yawEasing) { + return + } + this._yawEasing = easing + this.controller.yawEasing = easing + } + + /** + * Get how many degrees of leeway along each direction (left/right) before change starts to occur. + */ + get yawBufferDegrees(): number { + return this._yawBufferDegrees + } + + /** + * Set how many degrees of leeway along each direction (left/right) before change starts to occur. + */ + set yawBufferDegrees(degrees: number) { + if (degrees === this._yawBufferDegrees) { + return + } + this._yawBufferDegrees = degrees + this.controller.yawBufferDegrees = degrees + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/Headlock.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/Headlock.ts.meta new file mode 100644 index 00000000..5016ce0e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/Headlock.ts.meta @@ -0,0 +1,84 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 37c21f9a-dd95-4665-ac5c-60c72e00954d + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 37c21f9a-dd95-4665-ac5c-60c72e00954d + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! a08d14c0-f028-40cb-8d32-708ad6679dc5 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _distance: false + _lockedPitch: false + _lockedYaw: false + _pitchBufferDegrees: false + _pitchEasing: false + _pitchOffsetDegrees: false + _translationBuffer: false + _xzEasing: false + _xzEnabled: false + _yEasing: false + _yEnabled: false + _yawBufferDegrees: false + _yawEasing: false + _yawOffsetDegrees: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - _distance: ! 50.000000 + _xzEnabled: true + _xzEasing: ! 1.000000 + _yEnabled: true + _yEasing: ! 1.000000 + _translationBuffer: ! 0.000000 + _lockedPitch: true + _pitchEasing: ! 1.000000 + _pitchOffsetDegrees: ! 0.000000 + _pitchBufferDegrees: ! 0.000000 + _lockedYaw: true + _yawEasing: ! 1.000000 + _yawOffsetDegrees: ! 0.000000 + _yawBufferDegrees: ! 0.000000 + ScriptTypes: + - + {} + InputLines: + - '// @ui {"widget":"group_start", "label":"Headlock"}' + - '// @input float _distance = 50 {"hint":"How far away the target will be from the camera"}' + - '// @ui {"widget":"group_start", "label":"Head Translation"}' + - '// @input bool _xzEnabled = true {"hint":"If the camera will follow when the user moves their head along XZ-plane"}' + - '// @input float _xzEasing = 1 {"hint":"How fast the camera will follow along the XZ-plane, 0.1 for delayed follow, 1 for instant follow."}' + - '// @input bool _yEnabled = true {"hint":"If the camera will follow when the user moves their head along Y-axis"}' + - '// @input float _yEasing = 1 {"hint":"How fast the camera will follow along the Y-axis, 0.1 for delayed follow, 1 for instant follow."}' + - '// @input float _translationBuffer {"hint":"The magnitude of change needed to activate a translation for the target to follow the camera."}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Head Rotation"}' + - '// @input bool _lockedPitch = true {"hint":"If the camera will NOT follow when the user moves their head along the pitch-axis (looking up/down)"}' + - '// @input float _pitchEasing = 1 {"hint":"How fast the camera will follow along the pitch-axis, 0.1 for delayed follow, 1 for instant follow."}' + - '// @input float _pitchOffsetDegrees {"hint":"How many degrees of offset from the center point should the target sit"}' + - '// @input float _pitchBufferDegrees {"hint":"How many degrees of leeway along each direction (up/down) before change starts to occur"}' + - '// @input bool _lockedYaw = true {"hint":"If the camera will follow when the user moves their head along the yaw-axis (looking left/right)"}' + - '// @input float _yawEasing = 1 {"hint":"How fast the camera will follow along the yaw-axis, 0.1 for delayed follow, 1 for instant follow."}' + - '// @input float _yawOffsetDegrees {"hint":"How many degrees of offset from the center point should the target sit"}' + - '// @input float _yawBufferDegrees {"hint":"How many degrees of leeway along each direction (left/right) before change starts to occur"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_end"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockController.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockController.ts new file mode 100644 index 00000000..bfa2afc6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockController.ts @@ -0,0 +1,315 @@ +import WorldCameraFinderProvider from "../../../Providers/CameraProvider/WorldCameraFinderProvider" +import {Headlock} from "./Headlock" +import HeadlockRotationCalculator from "./HeadlockRotationCalculator" +import HeadlockTranslationCalculator from "./HeadlockTranslationCalculator" + +export enum RotationAxis { + Pitch, + Yaw, +} + +export type DefaultHeadlockConfig = { + script: ScriptComponent + target: SceneObject + distance: number + duration?: number + xzEnabled?: boolean + xzEasing?: number + yEnabled?: boolean + yEasing?: number + translationBuffer?: number + lockedPitch?: boolean + pitchEasing?: number + pitchOffsetDegrees?: number + pitchBufferDegrees?: number + lockedYaw?: boolean + yawEasing?: number + yawOffsetDegrees?: number + yawBufferDegrees?: number + headlockComponent: Headlock +} + +const rotationAxes = [RotationAxis.Pitch, RotationAxis.Yaw] + +const TAG = "HeadlockController" + +const DEFAULT_DURATION = 0.033 + +export default class DefaultHeadlockController { + private worldCameraProvider = WorldCameraFinderProvider.getInstance() + + // When true, the target will be moved according to the user's gaze. + private headlocked: boolean + + // The radius of the sphere on which the target rotates on. + private _distance: number + + // The center of the sphere that the target sits on will be controlled separately. + private translationCalculator: HeadlockTranslationCalculator + + // The angles along each axes will be calculated separately + private pitchCalculator: HeadlockRotationCalculator + private yawCalculator: HeadlockRotationCalculator + + // The target will be the SceneObject to rotate. + private target: SceneObject + private targetTransform: Transform + + // The target will move along a sphere according to the camera's rotation, maintaining the same pitch / yaw offset wherever the user looks. + private cameraTransform: Transform = this.worldCameraProvider.getTransform() + + private updateEvent: SceneEvent + private enableEvent: SceneEvent + + private headlockComponent: Headlock + + constructor(private config: DefaultHeadlockConfig) { + this.target = config.target + this.targetTransform = this.target.getTransform() + this.headlockComponent = config.headlockComponent + + this.headlocked = true + + this._distance = config.distance + + // Set up the translation calculator to center the sphere on the user's head with configurable behavior. + this.translationCalculator = new HeadlockTranslationCalculator({ + center: this.cameraTransform.getWorldPosition(), + duration: config.duration ?? DEFAULT_DURATION, + xzEnabled: config.xzEnabled ?? true, + xzEasing: config.xzEasing ?? 1, + yEnabled: config.yEnabled ?? true, + yEasing: config.yEasing ?? 1, + translationBuffer: config.translationBuffer ?? 0, + }) + + // Set up the rotation calculators to rotate the target along the sphere about the axes with configurable behavior. + this.pitchCalculator = new HeadlockRotationCalculator({ + distance: this.distance, + axis: RotationAxis.Pitch, + duration: config.duration ?? DEFAULT_DURATION, + axisEnabled: config.lockedPitch ?? true, + axisEasing: config.pitchEasing ?? 1, + axisOffsetRadians: MathUtils.DegToRad * (config.pitchOffsetDegrees ?? 0), + axisBufferRadians: MathUtils.DegToRad * (config.pitchBufferDegrees ?? 0), + }) + + this.yawCalculator = new HeadlockRotationCalculator({ + distance: this.distance, + axis: RotationAxis.Yaw, + duration: config.duration ?? DEFAULT_DURATION, + axisEnabled: config.lockedYaw ?? true, + axisEasing: config.yawEasing ?? 1, + axisOffsetRadians: MathUtils.DegToRad * (config.yawOffsetDegrees ?? 0), + axisBufferRadians: MathUtils.DegToRad * (config.yawBufferDegrees ?? 0), + }) + this.updateEvent = config.script.createEvent("UpdateEvent") + this.enableEvent = config.script.createEvent("OnEnableEvent") + + this.updateEvent.bind(this.onUpdate.bind(this)) + + // Whenever the script component or target object is re-enabled, reset the target to correct position. + this.enableEvent.bind(this.resetPosition.bind(this)) + this.target.onEnabled.add(this.resetPosition.bind(this)) + + this.resetPosition() + } + + get distance(): number { + return this._distance + } + set distance(distance: number) { + this._distance = distance + this.pitchCalculator.distance = distance + this.yawCalculator.distance = distance + } + + get xzEnabled(): boolean { + return this.translationCalculator.xzEnable + } + set xzEnabled(enabled: boolean) { + this.translationCalculator.xzEnable = enabled + } + + get yEnabled(): boolean { + return this.translationCalculator.yEnable + } + set yEnabled(enabled: boolean) { + this.translationCalculator.yEnable = enabled + } + + get xzEasing(): number { + return this.translationCalculator.xzEasing + } + set xzEasing(easing: number) { + this.translationCalculator.xzEasing = easing + } + + get yEasing(): number { + return this.translationCalculator.yEasing + } + set yEasing(easing: number) { + this.translationCalculator.yEasing = easing + } + + get translationBuffer(): number { + return this.translationCalculator.translationBuffer + } + set translationBuffer(distance: number) { + this.translationCalculator.translationBuffer = distance + } + + get unlockPitch(): boolean { + return !this.pitchCalculator.axisEnabled + } + set unlockPitch(unlocked: boolean) { + this.pitchCalculator.axisEnabled = !unlocked + } + + get pitchOffsetDegrees(): number { + return MathUtils.RadToDeg * this.pitchCalculator.axisOffsetRadians + } + set pitchOffsetDegrees(offsetDegrees: number) { + this.pitchCalculator.axisOffsetRadians = MathUtils.DegToRad * offsetDegrees + } + + get pitchEasing(): number { + return this.pitchCalculator.axisEasing + } + set pitchEasing(easing: number) { + this.pitchCalculator.axisEasing = easing + } + + get pitchBufferDegrees(): number { + return MathUtils.RadToDeg * this.pitchCalculator.axisBufferRadians + } + set pitchBufferDegrees(bufferDegrees: number) { + this.pitchCalculator.axisBufferRadians = MathUtils.DegToRad * bufferDegrees + } + + get unlockYaw(): boolean { + return !this.yawCalculator.axisEnabled + } + set unlockYaw(unlocked: boolean) { + this.yawCalculator.axisEnabled = !unlocked + } + + get yawOffsetDegrees(): number { + return MathUtils.RadToDeg * this.yawCalculator.axisOffsetRadians + } + set yawOffsetDegrees(offsetDegrees: number) { + this.yawCalculator.axisOffsetRadians = MathUtils.DegToRad * offsetDegrees + } + + get yawEasing(): number { + return this.yawCalculator.axisEasing + } + set yawEasing(easing: number) { + this.yawCalculator.axisEasing = easing + } + + get yawBufferDegrees(): number { + return MathUtils.RadToDeg * this.yawCalculator.axisBufferRadians + } + set yawBufferDegrees(bufferDegrees: number) { + this.yawCalculator.axisBufferRadians = MathUtils.DegToRad * bufferDegrees + } + + // Returns a NON-NORMALIZED unit vector aligned with the line to the target from the sphere's center for rotation along the sphere. + private getCenterToTargetVector() { + return this.targetTransform + .getWorldPosition() + .sub(this.translationCalculator.getCenter()) + } + + // Gets the direction in which the user is facing. + private getFaceForwardVector() { + return this.cameraTransform.back.normalize() + } + + // Rotates the target about each enabled axis separately. + private onUpdate(): void { + // If headlocking is currently disabled, do not update the target. + if (!this.headlocked) { + return + } + + // Move the sphere around the user's head and updates the target to maintain the same angle. + const translationOffset = this.translationCalculator.updateCenter( + this.cameraTransform.getWorldPosition() + ) + this.targetTransform.setWorldPosition( + translationOffset.add(this.targetTransform.getWorldPosition()) + ) + + // Rotate the target along the sphere to reach the desired offsets. + for (const axis of rotationAxes) { + let rotationOffset: vec3 + + switch (axis) { + // Head tilt is to be ignored for headlocking purposes, thus some vectors must be flattened on the XZ-plane if not already. + case RotationAxis.Pitch: + rotationOffset = this.pitchCalculator.getOffset( + // The pitch axis is the user's X-axis if yaw is enabled, otherwise use the world's X-axis. + this.headlockComponent.lockedYaw + ? this.cameraTransform.left.projectOnPlane(vec3.up()).normalize() // the axis vectors depend on if the other axis is enabled e.g. yaw disabled means we always use a constant right vector for pitch + : vec3.left(), + this.getCenterToTargetVector(), + vec3.up(), + this.getFaceForwardVector(), + this.cameraTransform.up + ) + break + case RotationAxis.Yaw: + rotationOffset = this.yawCalculator.getOffset( + // The yaw axis is the user's Y-axis projected onto a plane to prevent head-tilt from affecting positions if pitch is enabled, otherwise use the world's Y-axis. + this.headlockComponent.lockedPitch + ? this.cameraTransform.up.projectOnPlane( + new vec3( + this.cameraTransform.left.x, + 0, + this.cameraTransform.left.z + ) + ) + : vec3.up(), + this.getCenterToTargetVector(), + this.cameraTransform.right.projectOnPlane(vec3.up()), + this.getFaceForwardVector() + ) + break + default: + throw new Error(`Invalid axis: ${axis}`) + } + + this.targetTransform.setWorldPosition( + rotationOffset.add(this.targetTransform.getWorldPosition()) + ) + } + } + + public setHeadlocked(headlocked: boolean) { + this.headlocked = headlocked + } + + public isHeadlocked(): boolean { + return this.headlocked + } + + // Place the target at correct position according to offsets. + public resetPosition(): void { + let offset = this.getFaceForwardVector().uniformScale(this.distance) + let pitchQuaternion = quat.angleAxis( + MathUtils.DegToRad * (this.headlockComponent.pitchOffsetDegrees ?? 0), + vec3.left() + ) + offset = pitchQuaternion.multiplyVec3(offset) + let yawQuaternion = quat.angleAxis( + MathUtils.DegToRad * (this.headlockComponent.yawOffsetDegrees ?? 0), + vec3.up() + ) + offset = yawQuaternion.multiplyVec3(offset) + this.targetTransform.setWorldPosition( + this.cameraTransform.getWorldPosition().add(offset) + ) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockController.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockController.ts.meta new file mode 100644 index 00000000..842524b8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockController.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! fe1620d2-4e89-49a7-a04f-ffe90c81f98e + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! fe1620d2-4e89-49a7-a04f-ffe90c81f98e + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 44e21eb0-2d26-469d-b63a-b7209c6921d1 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockRotationCalculator.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockRotationCalculator.ts new file mode 100644 index 00000000..b5731979 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockRotationCalculator.ts @@ -0,0 +1,210 @@ +import {RotationAxis} from "./HeadlockController" + +export type RotationCalculatorConfig = { + distance: number + axis: RotationAxis + duration: number + axisEnabled?: boolean + axisEasing?: number + axisOffsetRadians?: number + axisBufferRadians?: number +} + +const TAG = "HeadlockRotationCalculator" + +/** + * HeadlockRotationCalculator is used to calculate the offset to position an object to maintain a certain offset relative to where the user is looking. + */ +export default class HeadlockRotationCalculator { + private _distance: number = 50 + + private axis: RotationAxis + private _axisEnabled = true + + private _axisOffsetRadians = 0 + private _axisEasing = 0 + private _axisBufferRadians = 0 + + private duration: number + + constructor(config: RotationCalculatorConfig) { + this.distance = config.distance + this.axis = config.axis + this.duration = config.duration + + this.axisEnabled = config.axisEnabled ?? false + this.axisEasing = config.axisEasing ?? 1 + this.axisOffsetRadians = config.axisOffsetRadians ?? 0 + this.axisBufferRadians = config.axisBufferRadians ?? 0 + } + + get distance(): number { + return this._distance + } + set distance(distance: number) { + this._distance = distance + } + + get axisEnabled(): boolean { + return this._axisEnabled + } + set axisEnabled(enabled: boolean) { + this._axisEnabled = enabled + } + + get axisOffsetRadians(): number { + return this._axisOffsetRadians + } + set axisOffsetRadians(radians: number) { + this._axisOffsetRadians = radians + } + + get axisEasing(): number { + return this._axisEasing + } + set axisEasing(easing: number) { + this._axisEasing = easing + } + + get axisBufferRadians(): number { + return this._axisBufferRadians + } + set axisBufferRadians(radians: number) { + this._axisBufferRadians = radians + } + + /* + * Returns the exact angle to rotate the target by along the given axis. + * This function will include the logic for interpolation / buffer tolerances later. + */ + private calculateRotationOffset( + angle: number, + axisVector: vec3, + positionVector: vec3 + ): vec3 { + const rotationQuaternion = quat.angleAxis(angle, axisVector) + + // Rotate the current offset about the given axis, then normalize the new position onto the sphere. + let newPositionVector = rotationQuaternion + .multiplyVec3(positionVector) + .normalize() + .uniformScale(this.distance) + + if (this.axisEasing !== 1) { + const timeRatio = getDeltaTime() / this.duration + newPositionVector = vec3.lerp( + positionVector, + newPositionVector, + this.axisEasing * timeRatio + ) + } + const rotationOffset = newPositionVector.sub(positionVector) + + return rotationOffset + } + + /** + * Returns the angle about specified axis to rotate the target to align with the camera. + * By projecting the forward/up vector onto planes defined by the relevant axis as the normal, we can separately calculate the angles of each axis. + * The separate calculations allow for each axis to have its own buffer / interpolation values. + * Because the user is expected to walk around freely, we use local X and Z axes for calculation, but global Y axis as the user's perception of 'up' is constant. + */ + private calculateAngleDelta( + axisVector: vec3, + positionVector: vec3, + originVector: vec3, + forwardVector: vec3, + upVector?: vec3 + ): number { + const positionVectorOnPlane = positionVector + .projectOnPlane(axisVector) + .normalize() + const forwardVectorOnPlane = forwardVector + .projectOnPlane(axisVector) + .normalize() + + let angleBetween = forwardVectorOnPlane.angleTo(positionVectorOnPlane) + + let forwardAngleOnPlane = originVector.angleTo(forwardVectorOnPlane) + let positionAngleOnPlane = originVector.angleTo(positionVectorOnPlane) + + if (this.axis === RotationAxis.Pitch && upVector !== undefined) { + const forwardVectorOnXZ = new vec2( + forwardVectorOnPlane.x, + forwardVectorOnPlane.z + ).normalize() + const positionVectorOnXZ = new vec2( + positionVectorOnPlane.x, + positionVectorOnPlane.z + ).normalize() + + const sameDirection = + forwardVectorOnXZ.angleTo(positionVectorOnXZ) < Math.PI / 2 + + if (upVector.y < 0 || !sameDirection) { + const direction = -Math.sign(forwardVectorOnPlane.y) + const rotatedOriginVec = quat + .angleAxis((direction * Math.PI) / 2, axisVector) + .multiplyVec3(originVector) + + forwardAngleOnPlane = rotatedOriginVec.angleTo(forwardVectorOnPlane) + positionAngleOnPlane = rotatedOriginVec.angleTo(positionVectorOnPlane) + } + } + + if (forwardAngleOnPlane > positionAngleOnPlane) { + angleBetween = -angleBetween + } + + const angleDelta = this.axisOffsetRadians - angleBetween + if (Math.abs(angleDelta) < this.axisBufferRadians) { + return 0 + } + + // Calculate the angle to rotate just enough to keep the camera within the buffer cone. + // Possibly not needed. + const bufferAngle = + angleDelta - Math.sign(angleDelta) * this.axisBufferRadians + + return bufferAngle + } + + /** + * Returns the offset to move the target by based on the following vectors + * @param axisVector - the axis to rotate the target about + * @param positionVector - the current local position of the target relative to headlock center + * @param originVector - the vector to calculate an origin of rotation to determine counterclockwise or clockwise rotation + * @param forwardVector - the current look vector of the headlock controller + * @returns + */ + public getOffset( + axisVector: vec3, + positionVector: vec3, + originVector: vec3, + forwardVector: vec3, + upVector?: vec3 + ): vec3 { + if (this.skipRotation()) { + return vec3.zero() + } + const angle = this.calculateAngleDelta( + axisVector, + positionVector, + originVector, + forwardVector, + upVector + ) + const rotationOffset = this.calculateRotationOffset( + angle, + axisVector, + positionVector + ) + + return rotationOffset + } + + // Returns if the controller should skip translating about the specified axis. + private skipRotation(): boolean { + return !this.axisEnabled + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockRotationCalculator.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockRotationCalculator.ts.meta new file mode 100644 index 00000000..ceaddf65 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockRotationCalculator.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! dc104f74-e14c-4e38-b24c-8d0c76c8f572 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! dc104f74-e14c-4e38-b24c-8d0c76c8f572 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! f4c855d5-2e6b-413e-ba52-91e5b7426c1f + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockTranslationCalculator.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockTranslationCalculator.ts new file mode 100644 index 00000000..7f36ce38 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockTranslationCalculator.ts @@ -0,0 +1,144 @@ +export type TranslationCalculatorConfig = { + center: vec3 + duration: number + xzEnabled?: boolean + xzEasing?: number + yEnabled?: boolean + yEasing?: number + translationBuffer?: number +} + +const TAG = "HeadlockTranslationCalculator" + +/** + * HeadlockTranslationCalculator is used to calculate the center of the sphere used when calculating the target's position relative to the pitch/yaw orientation of the camera. + */ +export default class HeadlockTranslationCalculator { + private center: vec3 + + // Controls the behavior of the sphere following along the flat plane defined by vec3.up(). + private _xzEnable: boolean = true + private _xzEasing: number = 1 + + // Controls the behavior of the sphere following along the line defined by vec3.up(). + private _yEnable: boolean = true + private _yEasing: number = 1 + + // Use an estimated time for the duration between each update to prevent FPS issues from slowing down billboarding effect. + private duration: number + + // If the user is 'close enough' to the center of the sphere, we avoid moving the sphere to decrease jitter + private _translationBuffer: number = 0 + + constructor(config: TranslationCalculatorConfig) { + this.center = config.center + + this.duration = config.duration + + this.xzEnable = config.xzEnabled ?? true + this.xzEasing = config.xzEasing ?? 1 + + this.yEnable = config.yEnabled ?? true + this.yEasing = config.yEasing ?? 1 + + this.translationBuffer = config.translationBuffer ?? 0 + } + + get xzEnable(): boolean { + return this._xzEnable + } + set xzEnable(enabled: boolean) { + this._xzEnable = enabled + } + + get yEnable(): boolean { + return this._yEnable + } + set yEnable(enabled: boolean) { + this._yEnable = enabled + } + + get xzEasing(): number { + return this._xzEasing + } + set xzEasing(easing: number) { + this._xzEasing = easing + } + + get yEasing(): number { + return this._yEasing + } + set yEasing(easing: number) { + this._yEasing = easing + } + + get translationBuffer(): number { + return this._translationBuffer + } + set translationBuffer(bufferDistance: number) { + this._translationBuffer = bufferDistance + } + + /** + * Returns the current center of the sphere. + */ + public getCenter(): vec3 { + return this.center + } + + /** + * Updates the center of the sphere and returns the offset vector to move the target by. + * @param cameraPosition - the current world position of the camera + */ + public updateCenter(cameraPosition: vec3): vec3 { + const oldCenter = new vec3(this.center.x, this.center.y, this.center.z) + // Test below implementation once everything is working. + // const oldCenter = this.center + + if (cameraPosition.sub(this.center).length < this.translationBuffer) { + return vec3.zero() + } + + if (this.xzEnable) { + const cameraPositionXZ = cameraPosition.projectOnPlane(vec3.up()) + const centerXZ = this.center.projectOnPlane(vec3.up()) + + let offset: vec3 + if (this.xzEasing !== 1) { + let timeRatio = getDeltaTime() / this.duration + const interpolatedXZ = vec3.lerp( + centerXZ, + cameraPositionXZ, + this.xzEasing * timeRatio + ) + offset = interpolatedXZ.sub(centerXZ) + } else { + offset = cameraPositionXZ.sub(centerXZ) + } + + this.center = this.center.add(offset) + } + + if (this.yEnable) { + const cameraPositionY = cameraPosition.y + const centerY = this.center.y + + let offset: number + if (this.yEasing !== 1) { + let timeRatio = getDeltaTime() / this.duration + const interpolatedY = MathUtils.lerp( + centerY, + cameraPositionY, + this.yEasing * timeRatio + ) + offset = interpolatedY - centerY + } else { + offset = cameraPositionY - centerY + } + + this.center = this.center.add(vec3.up().uniformScale(offset)) + } + + return this.center.sub(oldCenter) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockTranslationCalculator.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockTranslationCalculator.ts.meta new file mode 100644 index 00000000..6eb1a6d8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Headlock/HeadlockTranslationCalculator.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 4b4508e4-b6d3-431b-91ce-bb134c53855a + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 4b4508e4-b6d3-431b-91ce-bb134c53855a + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! c6cc893d-32bc-47c1-9383-47f248b38be6 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Interactable/Interactable.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Interactable/Interactable.ts new file mode 100644 index 00000000..0f57b93f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Interactable/Interactable.ts @@ -0,0 +1,359 @@ +import { + DragInteractorEvent, + InteractorEvent, +} from "../../../Core/Interactor/InteractorEvent" + +import Event from "../../../Utils/Event" +import {InteractionConfigurationProvider} from "../../../Providers/InteractionConfigurationProvider/InteractionConfigurationProvider" +import {InteractionManager} from "../../../Core/InteractionManager/InteractionManager" +import {InteractorInputType} from "../../../Core/Interactor/Interactor" +import NativeLogger from "../../../Utils/NativeLogger" + +export type InteractableEventArgs = Omit + +const TAG = "Interactable" + +/** + * This class represents an interactable object that can respond to various interaction events such as hover, trigger, and drag. It provides event handlers for these interactions and uses the InteractionConfigurationProvider for configuration. + */ +@component +export class Interactable extends BaseScriptComponent { + // Events + private onHoverEnterEvent = new Event() + private onHoverUpdateEvent = new Event() + private onHoverExitEvent = new Event() + private onInteractorHoverEnterEvent = new Event() + private onInteractorHoverExitEvent = new Event() + + private onTriggerStartEvent = new Event() + private onTriggerUpdateEvent = new Event() + private onTriggerEndEvent = new Event() + private onInteractorTriggerStartEvent = new Event() + private onInteractorTriggerEndEvent = new Event() + + private onDragStartEvent = new Event() + private onDragUpdateEvent = new Event() + private onDragEndEvent = new Event() + private onTriggerCanceledEvent = new Event() + + private interactionConfigurationProvider: InteractionConfigurationProvider = + InteractionConfigurationProvider.getInstance() + + // Native Logging + private log = new NativeLogger(TAG) + + /** + * Called whenever the interactable enters the hovered state + */ + onHoverEnter = this.onHoverEnterEvent.publicApi() + + /** + * Called whenever a new interactor hovers over this interactable + */ + onInteractorHoverEnter = this.onInteractorHoverEnterEvent.publicApi() + + /** + * Called whenever an interactor remains hovering over this interactable + */ + onHoverUpdate = this.onHoverUpdateEvent.publicApi() + + /** + * Called whenever the interactable is no longer hovered + */ + onHoverExit = this.onHoverExitEvent.publicApi() + + /** + * Called whenever an interactor exits hovering this interactable + */ + onInteractorHoverExit = this.onInteractorHoverExitEvent.publicApi() + + /** + * Called whenever the interactable enters the triggered state + */ + onTriggerStart = this.onTriggerStartEvent.publicApi() + + /** + * Called whenever an interactor triggers an interactable + */ + onInteractorTriggerStart = this.onInteractorTriggerStartEvent.publicApi() + + /** + * Called whenever an interactor continues to trigger an interactable + */ + onTriggerUpdate = this.onTriggerUpdateEvent.publicApi() + + /** + * Called whenever the interactable exits the triggered state + */ + onTriggerEnd = this.onTriggerEndEvent.publicApi() + + /** + * Called whenever an interactor is no longer triggering the interactable + */ + onInteractorTriggerEnd = this.onInteractorTriggerEndEvent.publicApi() + + /** + * Called whenever an interactor is lost and was in a down event with this interactable + */ + onTriggerCanceled = this.onTriggerCanceledEvent.publicApi() + + /** + * Called when an interactor is in a down event with this interactable and + * has moved a minimum drag distance + */ + onDragStart = this.onDragStartEvent.publicApi() + + /** + * Called when an interactor is in a down event with this interactable and + * is moving + */ + onDragUpdate = this.onDragUpdateEvent.publicApi() + + /** + * Called when an interactor was in a down event with this interactable and + * was dragging + */ + onDragEnd = this.onDragEndEvent.publicApi() + + // Interactor + private _hoveringInteractor: InteractorInputType = InteractorInputType.None + private _triggeringInteractor: InteractorInputType = InteractorInputType.None + + /** + * Provides all colliders associated with this Interactable + */ + colliders: ColliderComponent[] = [] + + /** + * Defines how an interactor can interact with this interactable. + * Values are: + * 1: Direct + * 2: Indirect + * 3: Direct/Indirect + * 4: Poke + */ + @input + @widget( + new ComboBoxWidget([ + new ComboBoxItem("Direct", 1), + new ComboBoxItem("Indirect", 2), + new ComboBoxItem("Direct/Indirect", 3), + new ComboBoxItem("Poke", 4), + new ComboBoxItem("All", 7), + ]), + ) + targetingMode: number = 3 + + @input + @hint( + "Enable this to allow the Interactable to instantly be dragged on trigger rather than obeying the Interactor's drag threshold.", + ) + enableInstantDrag: boolean = false + + /** + * Returns if an Interactable is scrollable + */ + @input + isScrollable: boolean = false + + /** + * Determines whether one or more interactors can interactor with this interactable + */ + @input + allowMultipleInteractors: boolean = true + + onAwake(): void { + this.createEvent("OnDestroyEvent").bind(() => this.release()) + this.createEvent("OnEnableEvent").bind(() => { + this.enableColliders(true) + }) + this.createEvent("OnDisableEvent").bind(() => { + this.enableColliders(false) + }) + + InteractionManager.getInstance().registerInteractable(this) + } + release(): void { + InteractionManager.getInstance().deregisterInteractable(this) + } + + /** + * Notifies the interactable that it is entering hover state + * @param eventArgs - the interactor that is driving the event {@link Interactor} + */ + hoverEnter = (eventArgs: InteractableEventArgs): void => { + if (this._hoveringInteractor === InteractorInputType.None) { + this.onHoverEnterEvent.invoke({ + ...eventArgs, + interactable: this, + }) + this.log.v("InteractionEvent : " + "On Hover Enter Event") + } + this._hoveringInteractor |= eventArgs.interactor.inputType + this.onInteractorHoverEnterEvent.invoke({ + ...eventArgs, + interactable: this, + }) + this.log.v("InteractionEvent : " + "On Interactor Hover Enter Event") + } + + /** + * Notifies the interactable that it is still hovering + * @param eventArgs - event parameters, with omitted interactable + */ + hoverUpdate = (eventArgs: InteractableEventArgs): void => { + this.onHoverUpdateEvent.invoke({ + ...eventArgs, + interactable: this, + }) + } + + /** + * Notifies the interactable that it is exiting hover state + * @param eventArgs - event parameters, with omitted interactable + */ + hoverExit = (eventArgs: InteractableEventArgs): void => { + this._hoveringInteractor &= ~eventArgs.interactor.inputType + this.onInteractorHoverExitEvent.invoke({ + ...eventArgs, + interactable: this, + }) + this.log.v("InteractionEvent : " + "On Interactor Hover Exit Event") + + if (this._hoveringInteractor === InteractorInputType.None) { + this.onHoverExitEvent.invoke({ + ...eventArgs, + interactable: this, + }) + this.log.v("InteractionEvent : " + "On Hover Exit Event") + } + } + + /** + * Notifies the interactable that it is entering trigger state + * @param eventArgs - event parameters, with omitted interactable + */ + triggerStart = (eventArgs: InteractableEventArgs): void => { + if (this._triggeringInteractor === InteractorInputType.None) { + this.onTriggerStartEvent.invoke({ + ...eventArgs, + interactable: this, + }) + this.log.v("InteractionEvent : " + "On Trigger Start Event") + } + + this._triggeringInteractor |= eventArgs.interactor.inputType + this.onInteractorTriggerStartEvent.invoke({ + ...eventArgs, + interactable: this, + }) + this.log.v("InteractionEvent : " + "On Interactor Trigger Start Event") + } + + /** + * Notifies the interactable that it is still in a triggering state + * @param eventArgs - event parameters, with omitted interactable + */ + triggerUpdate = (eventArgs: InteractableEventArgs): void => { + this.onTriggerUpdateEvent.invoke({ + ...eventArgs, + interactable: this, + }) + this.dragStartOrUpdate(eventArgs) + } + + /** + * Notifies the interactable that it is exiting trigger state + * @param eventArgs - event parameters, with omitted interactable + */ + triggerEnd = (eventArgs: InteractableEventArgs): void => { + this._triggeringInteractor &= ~eventArgs.interactor.inputType + this.onInteractorTriggerEndEvent.invoke({ + ...eventArgs, + interactable: this, + }) + this.log.v("InteractionEvent : " + "On Interactor Trigger End Event") + + if (this._triggeringInteractor === InteractorInputType.None) { + this.onTriggerEndEvent.invoke({ + ...eventArgs, + interactable: this, + }) + this.log.v("InteractionEvent : " + "On Trigger End Event") + } + + this.dragEnd(eventArgs) + } + + /** + * Notifies the interactable that it is a cancelled state with the interactor + * @param eventArgs - event parameters, with omitted interactable + */ + triggerCanceled = (eventArgs: InteractableEventArgs): void => { + this._triggeringInteractor === InteractorInputType.None + this.onTriggerCanceledEvent.invoke({ + ...eventArgs, + interactable: this, + }) + this.log.v("InteractionEvent : " + "On Trigger Canceled Event") + + this.dragEnd(eventArgs) + } + + /** + * Interactors that are hovering this interactable + */ + get hoveringInteractor(): InteractorInputType { + return this._hoveringInteractor + } + + /** + * Interactors that are triggering this interactable + */ + get triggeringInteractor(): InteractorInputType { + return this._triggeringInteractor + } + + private dragStartOrUpdate(eventArgs: InteractableEventArgs) { + const currentDragVector = eventArgs.interactor.currentDragVector + if (currentDragVector === null) { + return + } + + const previousDragVector = eventArgs.interactor.previousDragVector + const dragInteractorEvent = { + ...eventArgs, + interactable: this, + dragVector: currentDragVector, + planecastDragVector: eventArgs.interactor.planecastDragVector, + } + + if (previousDragVector === null) { + this.onDragStartEvent.invoke(dragInteractorEvent) + this.log.v("InteractionEvent : " + "On Drag Start Event") + } else { + this.onDragUpdateEvent.invoke(dragInteractorEvent) + } + } + + private dragEnd(eventArgs: InteractableEventArgs) { + const previousDragVector = eventArgs.interactor.previousDragVector + if (previousDragVector === null) { + return + } + + this.onDragEndEvent.invoke({ + ...eventArgs, + interactable: this, + dragVector: previousDragVector, + planecastDragVector: eventArgs.interactor.planecastDragVector, + }) + this.log.v("InteractionEvent : " + "On Drag End Event") + } + + private enableColliders(enable: boolean) { + for (let i = 0; i < this.colliders.length; i++) { + this.colliders[i].enabled = enable + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Interactable/Interactable.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Interactable/Interactable.ts.meta new file mode 100644 index 00000000..822ac66a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/Interactable/Interactable.ts.meta @@ -0,0 +1,48 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! b37f5740-6cb3-4174-96c1-1f8acf49d165 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + allowMultipleInteractors: false + enableInstantDrag: false + isScrollable: true + targetingMode: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - targetingMode: ! 3.000000 + isScrollable: false + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + - + {} + InputLines: + - '// @input float targetingMode = 3 {"widget":"combobox", "values":[{"label":"Direct", "value":1}, {"label":"Indirect", "value":2}, {"label":"Direct/Indirect", "value":3}, {"label":"Poke", "value":4}, {"label":"All", "value":7}]}' + - "// @input bool enableInstantDrag {\"hint\":\"Enable this to allow the Interactable to instantly be dragged on trigger rather than obeying the Interactor's drag threshold.\"}" + - // @input bool isScrollable + - // @input bool allowMultipleInteractors = true + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractableManipulation/InteractableManipulation.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractableManipulation/InteractableManipulation.ts new file mode 100644 index 00000000..cffca5ba --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractableManipulation/InteractableManipulation.ts @@ -0,0 +1,1275 @@ +import Event, {PublicApi, unsubscribe} from "../../../Utils/Event" +import { + Interactor, + InteractorInputType, + TargetingMode, +} from "../../../Core/Interactor/Interactor" +import { + OneEuroFilterConfig, + OneEuroFilterQuat, + OneEuroFilterVec3, +} from "../../../Utils/OneEuroFilter" + +import {Interactable} from "../Interactable/Interactable" +import {InteractionManager} from "../../../Core/InteractionManager/InteractionManager" +import {InteractorEvent} from "../../../Core/Interactor/InteractorEvent" +import {MobileInteractor} from "../../../Core/MobileInteractor/MobileInteractor" +import NativeLogger from "../../../Utils/NativeLogger" +import WorldCameraFinderProvider from "../../../Providers/CameraProvider/WorldCameraFinderProvider" +import {validate} from "../../../Utils/validate" + +export type TranslateEventArg = { + interactable: Interactable + startPosition: vec3 + currentPosition: vec3 +} + +export type RotationEventArg = { + interactable: Interactable + startRotation: quat + currentRotation: quat +} + +export type ScaleEventArg = { + interactable: Interactable + startWorldScale: vec3 + currentWorldScale: vec3 +} + +export type TransformEventArg = { + interactable: Interactable + startTransform: mat4 + currentTransform: mat4 +} + +export type ScaleLimitEventArg = { + interactable: Interactable + currentValue: vec3 +} + +export enum RotationAxis { + All = "All", + X = "X", + Y = "Y", + Z = "Z", +} + +const TAG = "InteractableManipulation" + +const MOBILE_DRAG_MULTIPLIER = 0.5 +const STRETCH_SMOOTH_SPEED = 15 +const YAW_NEGATIVE_90 = quat.fromEulerAngles(0, -90, 0) + +const CachedTransform = { + transform: mat4.identity(), + position: vec3.zero(), + rotation: quat.quatIdentity(), + scale: vec3.one(), +} + +/** + * This class provides manipulation capabilities for interactable objects, including translation, rotation, and scaling. It allows configuration of the manipulation root, scale limits, and rotation axes. + */ +@component +export class InteractableManipulation extends BaseScriptComponent { + @ui.group_start("Interactable Manipulation") + @input("SceneObject") + @hint( + "Root SceneObject of the set of SceneObjects to manipulate. If left blank, this script's SceneObject will be treated as the root. The root's transform will be modified by this script.", + ) + @allowUndefined + private manipulateRootSceneObject: SceneObject | null = null + @input + @widget(new SliderWidget(0, 1, 0.05)) + @hint( + "The smallest this object can scale down to, relative to its original scale. A value of 0.5 means it cannot scale smaller than 50% of its current size", + ) + /** + * The smallest this object can scale down to, relative to its original scale. + * A value of 0.5 means it cannot scale smaller than 50% of its current size + */ + minimumScaleFactor: number = 0.25 + @input + @widget(new SliderWidget(1, 20, 0.5)) + @hint( + "The largest this object can scale up to, relative to its original scale. A value of 2 means it cannot scale larger than twice its current size", + ) + /** + * The largest this object can scale up to, relative to its original scale. + * A value of 2 means it cannot scale larger than twice its current size + */ + maximumScaleFactor: number = 20 + @input + private enableTranslation: boolean = true + @input + private enableRotation: boolean = true + @input + private enableScale: boolean = true + @input + @hint("Toggles forward stretch for manipulating objects from afar.") + /** + * Toggle for stretching the forward manipulation axis of an object + * so that you can push or pull objects quicker + */ + enableStretchZ: boolean = true + @input + @showIf("enableStretchZ", true) + showStretchZProperties: boolean = false + @input + @showIf("showStretchZProperties", true) + @hint("Z multiplier on the near end of the stretch scale") + zStretchFactorMin: number = 1.0 + @input + @showIf("showStretchZProperties", true) + @hint("Z multiplier on the far end of the stretch scale") + zStretchFactorMax: number = 12.0 + @input + @hint("Apply filtering to smooth manipulation") + private useFilter: boolean = true + @input + @showIf("useFilter", true) + private showFilterProperties: boolean = false + @input + @showIf("showFilterProperties", true) + minCutoff: number = 2 + @input + @showIf("showFilterProperties", true) + beta: number = 0.015 + @input + @showIf("showFilterProperties", true) + dcutoff: number = 1 + @input + showTranslationProperties: boolean = false + @input + @showIf("showTranslationProperties", true) + @hint("Enable translation along the world's X-axis.") + private _enableXTranslation: boolean = true + @input + @showIf("showTranslationProperties", true) + @hint("Enable translation along the world's Y-axis.") + private _enableYTranslation: boolean = true + @input + @showIf("showTranslationProperties", true) + @hint("Enable translation along the world's Z-axis.") + private _enableZTranslation: boolean = true + + @input + showRotationProperties: boolean = false + @input + @showIf("showRotationProperties", true) + @hint( + "Enable rotation about all axes or a single world axis (x,y,z) when using to two hands.", + ) + @widget( + new ComboBoxWidget([ + new ComboBoxItem("All", "All"), + new ComboBoxItem("X", "X"), + new ComboBoxItem("Y", "Y"), + new ComboBoxItem("Z", "Z"), + ]), + ) + private _rotationAxis: string = "All" + @ui.group_end + private defaultFilterConfig: OneEuroFilterConfig | undefined + private camera = WorldCameraFinderProvider.getInstance() + private interactionManager = InteractionManager.getInstance() + + // Keep track of "Unsubscribe" functions when adding callbacks to Interactable Events, to ensure proper cleanup on destroy + private unsubscribeBag: unsubscribe[] = [] + + private interactable: Interactable | null = null + + // Native Logging + private log = new NativeLogger(TAG) + + // If the manipulate parent is set, use that SceneObject's transform, otherwise use the transform of the script's SceneObject. + // This is useful when using an external object to move other objects (e.g. grab bar). + private manipulateRoot: Transform | undefined + + private originalWorldTransform = CachedTransform + private originalLocalTransform = CachedTransform + + private startTransform = CachedTransform + + private offsetPosition = vec3.zero() + private offsetRotation = quat.quatIdentity() + private initialInteractorDistance = 0 + + private startStretchInteractorDistance = 0 + private mobileStretch = 0 + private smoothedStretch = 0 + + private initialObjectScale = vec3.zero() + + private hitPointToTransform = vec3.zero() + + private interactors: Interactor[] = [] + + private cachedTargetingMode: TargetingMode = TargetingMode.None + + // Used to avoid gimbal lock when crossing the Y-axis during single-axis manipulation. + private currentRotationSign = 0 + private currentUp = vec3.zero() + + /** + * - HandTracking's OneEuroFilter does not support quaternions. + * - Quaternions need to use slerp to interpolate correctly, which + * is not currently supported by the filter function. + * - SampleOps that HandTracking OneEuroFilter uses has functions that + * are not supported by quaternions (such as magnitude or addition) + */ + private translateFilter!: OneEuroFilterVec3 + private rotationFilter!: OneEuroFilterQuat + private scaleFilter!: OneEuroFilterVec3 + + /** + * Gets the transform of the root of the manipulated object(s). + */ + getManipulateRoot(): Transform | undefined { + return this.manipulateRoot + } + + /** + * Sets the transform of the passed SceneObject as the root of the manipulated object(s). + */ + setManipulateRoot(root: Transform): void { + this.manipulateRoot = root + } + + /** + * Returns true translation is enabled + */ + canTranslate(): boolean { + return this.enableTranslation + } + + /** + * Toggle for allowing an object to translate + */ + setCanTranslate(enabled: boolean): void { + this.enableTranslation = enabled + } + + /** + * Returns true if any of rotation x, y, or z is enabled + */ + canRotate(): boolean { + return this.enableRotation + } + + /** + * Toggle for allowing an object to rotate + */ + setCanRotate(enabled: boolean): void { + this.enableRotation = enabled + } + + /** + * Returns true if any of scale x, y, or z is enabled + */ + canScale(): boolean { + return this.enableScale + } + + /** + * Toggle for allowing an object to scale + */ + setCanScale(enabled: boolean): void { + this.enableScale = enabled + } + + /** + * Set if translation along world X-axis is enabled. + */ + set enableXTranslation(enabled: boolean) { + this._enableXTranslation = enabled + } + + /** + * Returns if translation along world X-axis is enabled. + */ + get enableXTranslation(): boolean { + return this._enableXTranslation + } + + /** + * Set if translation along world Y-axis is enabled. + */ + set enableYTranslation(enabled: boolean) { + this._enableYTranslation = enabled + } + + /** + * Returns if translation along world Y-axis is enabled. + */ + get enableYTranslation(): boolean { + return this._enableYTranslation + } + + /** + * Set if translation along world Z-axis is enabled. + */ + set enableZTranslation(enabled: boolean) { + this._enableZTranslation = enabled + } + + /** + * Returns if translation along world Z-axis is enabled. + */ + get enableZTranslation(): boolean { + return this._enableZTranslation + } + + /** + * Set if rotation occurs about all axes or a single world axis (x,y,z) when using to two hands. + */ + set rotationAxis(axis: RotationAxis) { + this._rotationAxis = axis + } + + /** + * Get if rotation occurs about all axes or a single world axis (x,y,z) when using to two hands.. + */ + get rotationAxis(): RotationAxis { + return this._rotationAxis as RotationAxis + } + + // Callbacks + private onTranslationStartEvent = new Event() + /** + * Callback for when translation begins + */ + onTranslationStart: PublicApi = + this.onTranslationStartEvent.publicApi() + + private onTranslationUpdateEvent = new Event() + /** + * Callback for when translation updates each frame + */ + onTranslationUpdate: PublicApi = + this.onTranslationUpdateEvent.publicApi() + + private onTranslationEndEvent = new Event() + /** + * Callback for when translation has ended + */ + onTranslationEnd: PublicApi = + this.onTranslationEndEvent.publicApi() + + private onRotationStartEvent = new Event() + /** + * Callback for when rotation begins + */ + onRotationStart: PublicApi = + this.onRotationStartEvent.publicApi() + + private onRotationUpdateEvent = new Event() + /** + * Callback for when rotation updates each frame + */ + onRotationUpdate: PublicApi = + this.onRotationUpdateEvent.publicApi() + + private onRotationEndEvent = new Event() + /** + * Callback for when rotation has ended + */ + onRotationEnd: PublicApi = + this.onRotationEndEvent.publicApi() + + private onScaleLimitReachedEvent = new Event() + /** + * Callback for when scale has reached the minimum or maximum limit + */ + onScaleLimitReached: PublicApi = + this.onScaleLimitReachedEvent.publicApi() + + private onScaleStartEvent = new Event() + /** + * Callback for when scale begins + */ + onScaleStart: PublicApi = this.onScaleStartEvent.publicApi() + + private onScaleUpdateEvent = new Event() + /** + * Callback for when scale updates each frame + */ + onScaleUpdate: PublicApi = this.onScaleUpdateEvent.publicApi() + + private onScaleEndEvent = new Event() + /** + * Callback for when scale has ended + */ + onScaleEnd: PublicApi = this.onScaleEndEvent.publicApi() + + private onManipulationStartEvent = new Event() + /** + * Callback for when any manipulation begins + */ + onManipulationStart: PublicApi = + this.onManipulationStartEvent.publicApi() + + private onManipulationUpdateEvent = new Event() + /** + * Callback for when any manipulation updates + */ + onManipulationUpdate: PublicApi = + this.onManipulationUpdateEvent.publicApi() + + private onManipulationEndEvent = new Event() + /** + * Callback for when any manipulation ends + */ + onManipulationEnd: PublicApi = + this.onManipulationEndEvent.publicApi() + + onAwake(): void { + this.interactable = this.getSceneObject().getComponent( + Interactable.getTypeName(), + ) + + if (this.interactable === null) { + throw new Error( + "InteractableManipulation requires an interactable to function.", + ) + } + + this.setManipulateRoot( + !isNull(this.manipulateRootSceneObject) + ? this.manipulateRootSceneObject!.getTransform() + : this.getTransform(), + ) + + this.createEvent("OnDestroyEvent").bind(() => this.onDestroy()) + this.cacheTransform() + this.setupCallbacks() + + this.defaultFilterConfig = { + frequency: 60, //fps + minCutoff: this.minCutoff, + beta: this.beta, + dcutoff: this.dcutoff, + } + + this.translateFilter = new OneEuroFilterVec3(this.defaultFilterConfig) + this.rotationFilter = new OneEuroFilterQuat(this.defaultFilterConfig) + this.scaleFilter = new OneEuroFilterVec3(this.defaultFilterConfig) + } + + private onDestroy(): void { + // If we don't unsubscribe, component will keep working after destroy() due to event callbacks added to Interactable Events + this.unsubscribeBag.forEach((unsubscribeCallback: unsubscribe) => { + unsubscribeCallback() + }) + this.unsubscribeBag = [] + } + + private setupCallbacks(): void { + validate(this.interactable) + + this.unsubscribeBag.push( + this.interactable.onInteractorTriggerStart.add((event) => { + if ( + event.propagationPhase === "Target" || + event.propagationPhase === "BubbleUp" + ) { + event.stopPropagation() + this.onTriggerToggle(event) + } + }), + ) + + this.unsubscribeBag.push( + this.interactable.onTriggerUpdate.add((event) => { + if ( + event.propagationPhase === "Target" || + event.propagationPhase === "BubbleUp" + ) { + event.stopPropagation() + this.onTriggerUpdate(event) + } + }), + ) + + this.unsubscribeBag.push( + this.interactable.onTriggerCanceled.add((event) => { + if ( + event.propagationPhase === "Target" || + event.propagationPhase === "BubbleUp" + ) { + event.stopPropagation() + this.onTriggerToggle(event) + } + }), + ) + + this.unsubscribeBag.push( + this.interactable.onInteractorTriggerEnd.add((event) => { + if ( + event.propagationPhase === "Target" || + event.propagationPhase === "BubbleUp" + ) { + event.stopPropagation() + this.onTriggerToggle(event) + } + }), + ) + } + + private updateStartValues(): void { + validate(this.manipulateRoot) + validate(this.interactable) + + const interactors: Interactor[] = this.getTriggeringInteractors() + + this.mobileStretch = 0 + this.smoothedStretch = 0 + this.startStretchInteractorDistance = 0 + + // Reset filters + this.translateFilter.reset() + this.rotationFilter.reset() + this.scaleFilter.reset() + + // Set the starting transform values to be used for callbacks + this.startTransform = { + transform: this.manipulateRoot.getWorldTransform(), + position: this.manipulateRoot.getWorldPosition(), + rotation: this.manipulateRoot.getWorldRotation(), + scale: this.manipulateRoot.getWorldScale(), + } + + const cameraPosition = this.camera.getTransform().getWorldPosition() + const cameraRotation = this.camera.getTransform().getWorldRotation() + + if (interactors.length === 1) { + const interactor = interactors[0] + if (this.isInteractorValid(interactor) === false) { + this.log.e("Interactor must not be valid for setting initial values") + return + } + + const startPoint = interactor.startPoint ?? vec3.zero() + const orientation = interactor.orientation ?? quat.quatIdentity() + + this.cachedTargetingMode = interactor.activeTargetingMode + + if (interactor.activeTargetingMode === TargetingMode.Direct) { + this.offsetPosition = this.startTransform.position.sub(startPoint) + this.offsetRotation = orientation + .invert() + .multiply(this.startTransform.rotation) + } else { + const rayPosition = this.getRayPosition(interactor) + + this.offsetPosition = rayPosition.sub(startPoint) + this.hitPointToTransform = this.startTransform.position.sub(rayPosition) + this.offsetRotation = cameraRotation + .invert() + .multiply(this.startTransform.rotation) + } + } else if (interactors.length === 2) { + if ( + this.isInteractorValid(interactors[0]) === false || + this.isInteractorValid(interactors[1]) === false + ) { + this.log.e("Both interactors must be valid for setting initial values") + return + } + + const isDirect = + interactors[0].activeTargetingMode === TargetingMode.Direct || + interactors[1].activeTargetingMode === TargetingMode.Direct + this.cachedTargetingMode = isDirect + ? TargetingMode.Direct + : TargetingMode.Indirect + + const firstStartPoint = interactors[0].startPoint ?? vec3.zero() + const secondStartPoint = interactors[1].startPoint ?? vec3.zero() + + const interactorMidPoint = firstStartPoint + .add(secondStartPoint) + .uniformScale(0.5) + + this.currentUp = vec3.up() + this.currentRotationSign = 0 + const dualInteractorDirection = this.getDualInteractorDirection( + interactors[0], + interactors[1], + ) + + this.initialInteractorDistance = + firstStartPoint.distance(secondStartPoint) + this.initialObjectScale = this.manipulateRoot.getLocalScale() + this.onScaleStartEvent.invoke({ + interactable: this.interactable, + startWorldScale: this.startTransform.scale, + currentWorldScale: this.manipulateRoot.getWorldScale(), + }) + + if (dualInteractorDirection === null) { + return + } + + this.offsetRotation = dualInteractorDirection + .invert() + .multiply(this.startTransform.rotation) + + if (isDirect) { + this.offsetPosition = + this.startTransform.position.sub(interactorMidPoint) + } else { + const firstRayPosition = this.getRayPosition(interactors[0]) + const secondRayPosition = this.getRayPosition(interactors[1]) + const dualRayPosition = firstRayPosition + .add(secondRayPosition) + .uniformScale(0.5) + + this.offsetPosition = dualRayPosition.sub(interactorMidPoint) + this.hitPointToTransform = + this.startTransform.position.sub(dualRayPosition) + } + } + } + + /** + * Hit position from interactor does not necessarily mean the actual + * ray position. We need to maintain offset so that there's isn't a pop + * on pickup. + */ + private getRayPosition(interactor: Interactor): vec3 { + if (this.isInteractorValid(interactor) === false) { + return vec3.zero() + } + + const startPoint = interactor.startPoint ?? vec3.zero() + const direction = interactor.direction ?? vec3.zero() + const distanceToTarget = interactor.distanceToTarget ?? 0 + + return startPoint.add(direction.uniformScale(distanceToTarget)) + } + + private cacheTransform() { + validate(this.manipulateRoot) + + this.originalWorldTransform = { + transform: this.manipulateRoot.getWorldTransform(), + position: this.manipulateRoot.getWorldPosition(), + rotation: this.manipulateRoot.getWorldRotation(), + scale: this.manipulateRoot.getWorldScale(), + } + + this.originalLocalTransform = { + transform: mat4.compose( + this.manipulateRoot.getLocalPosition(), + this.manipulateRoot.getLocalRotation(), + this.manipulateRoot.getLocalScale(), + ), + position: this.manipulateRoot.getLocalPosition(), + rotation: this.manipulateRoot.getLocalRotation(), + scale: this.manipulateRoot.getLocalScale(), + } + } + + private onTriggerToggle(eventData: InteractorEvent): void { + if ( + !this.enabled || + (!this.canTranslate() && !this.canRotate() && !this.canScale()) + ) { + return + } + + // Cache the interactors on trigger start/end + this.interactors = this.getTriggeringInteractors() + + if (this.interactors.length > 0) { + this.updateStartValues() + // Scale only happens with two handed manipulation so start event firing deferred to updateStartValues() + this.invokeEvents( + this.onTranslationStartEvent, + this.onRotationStartEvent, + null, + this.onManipulationStartEvent, + ) + this.log.v("InteractionEvent : " + "On Manipulation Start Event") + } else { + this.invokeEvents( + this.onTranslationEndEvent, + this.onRotationEndEvent, + this.onScaleEndEvent, + this.onManipulationEndEvent, + ) + this.log.v("InteractionEvent : " + "On Manipulation End Event") + } + } + + private onTriggerUpdate(eventData: InteractorEvent): void { + if ( + !this.enabled || + (!this.canTranslate() && !this.canRotate() && !this.canScale()) + ) { + return + } + + if (this.interactors.length === 1) { + this.singleInteractorTransform(this.interactors[0]) + } else if (this.interactors.length === 2) { + this.dualInteractorsTransform(this.interactors) + } else { + this.log.w( + `${this.interactors.length} interactors found for onTriggerUpdate. This is not supported.`, + ) + return + } + + // Scale only happens with two handed manipulation, so its event firing is deferred to this.dualInteractorsTransform() + this.invokeEvents( + this.onTranslationUpdateEvent, + this.onRotationUpdateEvent, + null, + this.onManipulationUpdateEvent, + ) + } + + private getTriggeringInteractors(): Interactor[] { + validate(this.interactable) + + const interactors: Interactor[] = + this.interactionManager.getInteractorsByType( + this.interactable.triggeringInteractor, + ) + + if (interactors === null) { + this.log.w( + `Failed to retrieve interactors on ${this.getSceneObject().name}: ${ + this.interactable.triggeringInteractor + } (InteractorInputType)`, + ) + return [] + } + + return interactors + } + + private invokeEvents( + translateEvent: Event | null, + rotationEvent: Event | null, + scaleEvent: Event | null, + manipulationEvent: Event | null, + ): void { + validate(this.interactable) + validate(this.manipulateRoot) + + if (this.canTranslate() && translateEvent) { + translateEvent.invoke({ + interactable: this.interactable, + startPosition: this.startTransform.position, + currentPosition: this.manipulateRoot.getWorldPosition(), + }) + } + + if (this.canRotate() && rotationEvent) { + rotationEvent.invoke({ + interactable: this.interactable, + startRotation: this.startTransform.rotation, + currentRotation: this.manipulateRoot.getWorldRotation(), + }) + } + + if (this.canScale() && scaleEvent) { + scaleEvent.invoke({ + interactable: this.interactable, + startWorldScale: this.startTransform.scale, + currentWorldScale: this.manipulateRoot.getWorldScale(), + }) + } + + if ( + (this.canTranslate() || this.canRotate() || this.canScale()) && + manipulationEvent + ) { + manipulationEvent.invoke({ + interactable: this.interactable, + startTransform: this.startTransform.transform, + currentTransform: this.manipulateRoot.getWorldTransform(), + }) + } + } + + private getDualInteractorDirection( + interactor1: Interactor, + interactor2: Interactor, + ): quat | null { + if ( + interactor1 === null || + interactor1.startPoint === null || + interactor2 === null || + interactor2.startPoint === null + ) { + this.log.e( + "Interactors and their start points should not be null for getDualInteractorDirection", + ) + return null + } + + let point1 = interactor1.startPoint + let point2 = interactor2.startPoint + let sign: number = 0 + + // Handle single axis rotation by projecting the start points onto plane. + if (this.rotationAxis !== RotationAxis.All) { + let axis: vec3 + switch (this.rotationAxis) { + case RotationAxis.X: + axis = vec3.right() + break + case RotationAxis.Y: + axis = vec3.up() + break + case RotationAxis.Z: + axis = vec3.forward() + break + } + // When rotating about a single axis, project the start points onto the plane defined by that axis to calculate rotation about that axis. + point1 = point1.projectOnPlane(axis) + point2 = point2.projectOnPlane(axis) + + if (this.rotationAxis === RotationAxis.X) { + sign = Math.sign(point2.z - point1.z) + } else if (this.rotationAxis === RotationAxis.Z) { + sign = Math.sign(point2.x - point1.x) + } + } + + // For X and Z rotation, flip the 'up' orientation of the rotation when the vector between the projected points crosses the Y-axis. + if (sign !== this.currentRotationSign) { + this.currentUp = this.currentUp.uniformScale(-1) + this.currentRotationSign = sign + } + + // Get the direction from the two palm points, rotate yaw 90 degrees to get forward direction + const rotation = quat + .lookAt(point2.sub(point1), this.currentUp) + .multiply(YAW_NEGATIVE_90) + + const currentRotation = this.limitQuatRotation(rotation) + + return currentRotation + } + + private limitQuatRotation(rotation: quat): quat { + let euler = rotation.toEulerAngles() + + if (!this.canRotate()) { + euler.x = 0 + euler.y = 0 + euler.z = 0 + } + + return quat.fromEulerVec(euler) + } + + private isInteractorValid(interactor: Interactor): boolean { + return ( + interactor !== null && + interactor.startPoint !== null && + interactor.orientation !== null && + interactor.direction !== null && + interactor.distanceToTarget !== null && + interactor.isActive() + ) + } + + private singleInteractorTransform(interactor: Interactor): void { + if (this.isInteractorValid(interactor) === false) { + this.log.e("Interactor must be valid") + return + } + validate(this.manipulateRoot) + + const startPoint = interactor.startPoint ?? vec3.zero() + const orientation = interactor.orientation ?? quat.quatIdentity() + const direction = interactor.direction ?? vec3.zero() + + const limitRotation = this.limitQuatRotation(orientation).multiply( + this.offsetRotation, + ) + // Do not rotate the object if using a single Interactor for single axis usecase. + let deltaRotation = + this.rotationAxis === RotationAxis.All + ? limitRotation.multiply( + this.manipulateRoot.getWorldRotation().invert(), + ) + : quat.quatIdentity() + + // Single Interactor Direct + if (this.enableTranslation) { + let newPosition: vec3 | null + + if (this.cachedTargetingMode === TargetingMode.Direct) { + newPosition = startPoint.add( + this.canRotate() + ? limitRotation + .multiply(this.startTransform.rotation.invert()) + .multiplyVec3(this.offsetPosition) + : this.offsetPosition, + ) + + this.updatePosition(newPosition, this.useFilter) + } else { + // Single Interactor Indirect + this.smoothedStretch = MathUtils.lerp( + this.smoothedStretch, + this.calculateStretchFactor(interactor), + getDeltaTime() * STRETCH_SMOOTH_SPEED, + ) + const offset = direction + .uniformScale(this.offsetPosition.length) + .add(this.hitPointToTransform) + newPosition = startPoint + .add(offset) + .add(direction.uniformScale(this.smoothedStretch)) + this.updatePosition(newPosition, this.useFilter) + + deltaRotation = quat.quatIdentity() + } + } + + if (this.canRotate()) { + if (this.cachedTargetingMode === TargetingMode.Direct) { + const newRotation = deltaRotation.multiply( + this.manipulateRoot.getWorldRotation(), + ) + this.updateRotation(newRotation, this.useFilter) + } + } + } + + private dualInteractorsTransform(interactors: Interactor[]): void { + if ( + interactors.length < 2 || + !this.isInteractorValid(interactors[0]) || + !this.isInteractorValid(interactors[1]) + ) { + this.log.e( + "There should be two valid interactors for dualInteractorsTransform", + ) + } + validate(this.manipulateRoot) + validate(this.interactable) + + const isDirect = this.cachedTargetingMode === TargetingMode.Direct + + const startPoint1 = interactors[0].startPoint + const startPoint2 = interactors[1].startPoint + + if (startPoint1 === null || startPoint2 === null) { + this.log.e( + "Both start points should be valid for dualInteractorsTransform", + ) + return + } + + const interactorMidPoint = startPoint1.add(startPoint2).uniformScale(0.5) + const dualDirection = this.getDualInteractorDirection( + interactors[0], + interactors[1], + ) + + if (dualDirection === null) { + return + } + + const dualDistance = startPoint1.distance(startPoint2) + + if (this.canRotate()) { + const newRotation = dualDirection.multiply(this.offsetRotation) + this.updateRotation(newRotation, this.useFilter) + } + + if (this.enableTranslation) { + let newPosition: vec3 | null + + // Dual Interactor Direct + if (isDirect) { + newPosition = + this.canRotate() && isDirect + ? interactorMidPoint.add( + this.manipulateRoot + .getWorldRotation() + .multiply(this.startTransform.rotation.invert()) + .multiplyVec3(this.offsetPosition), + ) + : interactorMidPoint.add(this.offsetPosition) + this.updatePosition(newPosition, this.useFilter) + } else { + // Dual Interactor Indirect + const dualRaycastDistance = + (interactors[0].maxRaycastDistance + + interactors[1].maxRaycastDistance) * + 0.5 + const zDistance = Math.min( + dualRaycastDistance, + this.offsetPosition.length, + ) + + const direction1 = interactors[0].direction ?? vec3.zero() + const direction2 = interactors[1].direction ?? vec3.zero() + const dualDirection = direction1.add(direction2).uniformScale(0.5) + + let finalOffset = dualDirection + .uniformScale(zDistance) + .add(this.hitPointToTransform) + newPosition = interactorMidPoint.add(finalOffset) + this.updatePosition(newPosition, this.useFilter) + } + } + + if (this.canScale() && this.initialInteractorDistance !== 0) { + const distanceDifference = dualDistance - this.initialInteractorDistance + + /* + * Calculate the scaling factor based on the distanceDifference and the initialInteractorDistance. + * This factor will be used to uniformly scale the object based on the change in distance. + */ + const uniformScalingFactor = + 1 + distanceDifference / this.initialInteractorDistance + + const updatedObjectScale = + this.initialObjectScale.uniformScale(uniformScalingFactor) + + this.setScale(updatedObjectScale, this.useFilter) + + this.onScaleUpdateEvent.invoke({ + interactable: this.interactable, + startWorldScale: this.startTransform.scale, + currentWorldScale: this.manipulateRoot.getWorldScale(), + }) + } + } + + private updatePosition(newPosition: vec3 | null, useFilter = true) { + if (newPosition === null) { + return + } + validate(this.manipulateRoot) + + if (!this.enableXTranslation) { + newPosition.x = this.manipulateRoot.getWorldPosition().x + } + if (!this.enableYTranslation) { + newPosition.y = this.manipulateRoot.getWorldPosition().y + } + if (!this.enableZTranslation) { + newPosition.z = this.manipulateRoot.getWorldPosition().z + } + + if (useFilter) { + newPosition = this.translateFilter.filter(newPosition, getTime()) + } + + this.manipulateRoot.setWorldPosition(newPosition) + } + + private updateRotation(newRotation: quat | null, useFilter = true) { + if (newRotation === null) { + return + } + validate(this.manipulateRoot) + + if (useFilter) { + newRotation = this.rotationFilter.filter(newRotation, getTime()) + } + + this.manipulateRoot.setWorldRotation(newRotation) + } + + private calculateStretchFactor(interactor: Interactor): number { + if (this.enableStretchZ === false) { + return 1 + } + //get distance from hand to camera along z axis only + const startPoint = interactor.startPoint ?? vec3.zero() + const interactorDistance = + this.camera + .getTransform() + .getInvertedWorldTransform() + .multiplyPoint(startPoint).z * -1 + + if (this.startStretchInteractorDistance === 0) { + this.startStretchInteractorDistance = interactorDistance + } + const dragAmount = interactorDistance - this.startStretchInteractorDistance + + //scale movement based on distance from ray start to object + const currDistance = interactor.distanceToTarget ?? 0 + const distanceFactor = + (this.zStretchFactorMax / interactor.maxRaycastDistance) * currDistance + + this.zStretchFactorMin + + const minStretch = -this.offsetPosition.length + 1 + const maxStretch = + -this.offsetPosition.length + interactor.maxRaycastDistance - 1 + + let finalStretchAmount = MathUtils.clamp( + dragAmount * distanceFactor, + minStretch, + maxStretch, + ) + + if (interactor.inputType === InteractorInputType.Mobile) { + const mobileInteractor = interactor as MobileInteractor + + let mobileDragVector = vec3.zero() + if (mobileInteractor.touchpadDragVector !== null) { + mobileDragVector = mobileInteractor.touchpadDragVector + } + + const mobileMoveAmount = + mobileDragVector.z === 0 + ? mobileDragVector.y * MOBILE_DRAG_MULTIPLIER + : 0 + + this.mobileStretch += mobileMoveAmount * distanceFactor + + //dont let value accumulate out of bounds + this.mobileStretch = Math.min( + maxStretch - finalStretchAmount, + Math.max(minStretch - finalStretchAmount, this.mobileStretch), + ) + finalStretchAmount += this.mobileStretch + } + return finalStretchAmount + } + + private clampUniformScale(scale: vec3, minScale: vec3, maxScale: vec3): vec3 { + let finalScale = scale + + /* + * Calculate the ratios between the input scale and the min and max scales + * for each axis (x, y, z). These ratios indicate how close the input scale + * is to the min or max scale limits. + */ + const minRatio = Math.min( + scale.x / minScale.x, + scale.y / minScale.y, + scale.z / minScale.z, + ) + const maxRatio = Math.min( + scale.x / maxScale.x, + scale.y / maxScale.y, + scale.z / maxScale.z, + ) + + /* + * If the minRatio is less than 1, it means at least one axis of the input + * scale is smaller than the corresponding axis of the minScale. To preserve + * the uniform scaling, apply a uniform scaling factor (1 / minRatio) to the + * input scale, effectively scaling it up just enough to meet the minScale + * limit on the smallest axis. + */ + if (minRatio < 1) { + finalScale = finalScale.uniformScale(1 / minRatio) + } + + /* + * If the maxRatio is greater than 1, it means at least one axis of the input + * scale is larger than the corresponding axis of the maxScale. To preserve + * the uniform scaling, apply a uniform scaling factor (1 / maxRatio) to the + * input scale, effectively scaling it down just enough to meet the maxScale + * limit on the largest axis. + */ + if (maxRatio > 1) { + finalScale = finalScale.uniformScale(1 / maxRatio) + } + + return finalScale + } + + private setScale(newScale: vec3, useFilter = true): void { + if (!this.canScale()) { + return + } + validate(this.interactable) + validate(this.manipulateRoot) + + // Calculate min and max scale + const minScale = this.originalLocalTransform.scale.uniformScale( + this.minimumScaleFactor, + ) + const maxScale = this.originalLocalTransform.scale.uniformScale( + this.maximumScaleFactor, + ) + + // Calculate final scale + let finalScale = this.clampUniformScale(newScale, minScale, maxScale) + + if (newScale !== finalScale) { + this.onScaleLimitReachedEvent.invoke({ + interactable: this.interactable, + currentValue: finalScale, + }) + } + if (useFilter) { + finalScale = this.scaleFilter.filter(finalScale, getTime()) + } + + this.manipulateRoot.setLocalScale(finalScale) + } + + /** + * Resets the interactable's position + */ + resetPosition(local: boolean = false): void { + validate(this.manipulateRoot) + + if (local) { + this.manipulateRoot.setLocalPosition(this.originalLocalTransform.position) + } else { + this.manipulateRoot.setWorldPosition(this.originalWorldTransform.position) + } + } + + /** + * Resets the interactable's rotation + */ + resetRotation(local: boolean = false): void { + validate(this.manipulateRoot) + + if (local) { + this.manipulateRoot.setLocalRotation(this.originalLocalTransform.rotation) + } else { + this.manipulateRoot.setWorldRotation(this.originalWorldTransform.rotation) + } + } + + /** + * Resets the interactable's scale + */ + resetScale(local: boolean = false): void { + validate(this.manipulateRoot) + + if (local) { + this.manipulateRoot.setLocalScale(this.originalLocalTransform.scale) + } else { + this.manipulateRoot.setWorldScale(this.originalWorldTransform.scale) + } + } + + /** + * Resets the interactable's transform + */ + resetTransform(local: boolean = false): void { + validate(this.manipulateRoot) + + if (local) { + this.manipulateRoot.setLocalTransform( + this.originalLocalTransform.transform, + ) + } else { + this.manipulateRoot.setWorldTransform( + this.originalWorldTransform.transform, + ) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractableManipulation/InteractableManipulation.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractableManipulation/InteractableManipulation.ts.meta new file mode 100644 index 00000000..e228c351 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractableManipulation/InteractableManipulation.ts.meta @@ -0,0 +1,101 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! ea5059d4-c4db-4ff5-b1fd-10c785f9bdb8 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _enableXTranslation: false + _enableYTranslation: false + _enableZTranslation: false + _rotationAxis: false + beta: false + dcutoff: false + enableRotation: false + enableScale: false + enableStretchZ: false + enableTranslation: false + manipulateRootSceneObject: false + maximumScaleFactor: false + minCutoff: false + minimumScaleFactor: false + showFilterProperties: false + showRotationProperties: false + showStretchZProperties: false + showTranslationProperties: false + useFilter: false + zStretchFactorMax: false + zStretchFactorMin: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - manipulateRootSceneObject: ! 00000000-0000-0000-0000-000000000000 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + useFilter: true + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + - + {} + InputLines: + - '// @ui {"widget":"group_start", "label":"Interactable Manipulation"}' + - "// @input SceneObject manipulateRootSceneObject {\"hint\":\"Root SceneObject of the set of SceneObjects to manipulate. If left blank, this script's SceneObject will be treated as the root. The root's transform will be modified by this script.\"}" + - '// @input float minimumScaleFactor = 0.25 {"hint":"The smallest this object can scale down to, relative to its original scale. A value of 0.5 means it cannot scale smaller than 50% of its current size", "widget":"slider", "min":0, "max":1, "step":0.05}' + - '// @input float maximumScaleFactor = 20 {"hint":"The largest this object can scale up to, relative to its original scale. A value of 2 means it cannot scale larger than twice its current size", "widget":"slider", "min":1, "max":20, "step":0.5}' + - // @input bool enableTranslation = true + - // @input bool enableRotation = true + - // @input bool enableScale = true + - '// @input bool enableStretchZ = true {"hint":"Toggles forward stretch for manipulating objects from afar."}' + - '// @input bool showStretchZProperties {"showIf":"enableStretchZ", "showIfValue":true}' + - '// @input float zStretchFactorMin = 1 {"hint":"Z multiplier on the near end of the stretch scale", "showIf":"showStretchZProperties", "showIfValue":true}' + - '// @input float zStretchFactorMax = 12 {"hint":"Z multiplier on the far end of the stretch scale", "showIf":"showStretchZProperties", "showIfValue":true}' + - '// @input bool useFilter = true {"hint":"Apply filtering to smooth manipulation"}' + - '// @input bool showFilterProperties {"showIf":"useFilter", "showIfValue":true}' + - '// @input float minCutoff = 2 {"showIf":"showFilterProperties", "showIfValue":true}' + - '// @input float beta = 0.015 {"showIf":"showFilterProperties", "showIfValue":true}' + - '// @input float dcutoff = 1 {"showIf":"showFilterProperties", "showIfValue":true}' + - // @input bool showTranslationProperties + - "// @input bool _enableXTranslation = true {\"hint\":\"Enable translation along the world's X-axis.\", \"showIf\":\"showTranslationProperties\", \"showIfValue\":true}" + - "// @input bool _enableYTranslation = true {\"hint\":\"Enable translation along the world's Y-axis.\", \"showIf\":\"showTranslationProperties\", \"showIfValue\":true}" + - "// @input bool _enableZTranslation = true {\"hint\":\"Enable translation along the world's Z-axis.\", \"showIf\":\"showTranslationProperties\", \"showIfValue\":true}" + - // @input bool showRotationProperties + - '// @input string _rotationAxis = "All" {"hint":"Enable rotation about all axes or a single world axis (x,y,z) when using to two hands.", "widget":"combobox", "values":[{"label":"All", "value":"All"}, {"label":"X", "value":"X"}, {"label":"Y", "value":"Y"}, {"label":"Z", "value":"Z"}], "showIf":"showRotationProperties", "showIfValue":true}' + - '// @ui {"widget":"group_end"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractionPlane/InteractionPlane.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractionPlane/InteractionPlane.ts new file mode 100644 index 00000000..6646afdf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractionPlane/InteractionPlane.ts @@ -0,0 +1,213 @@ +import {InteractionManager} from "../../../Core/InteractionManager/InteractionManager" + +/** + * point - the projection's position on the plane in world space. + * distance - the distance from the point to plane in world space (negative if behind the plane) + * isWithinInteractionZone - if the point is nearby in front of the plane + * isWithinBehindZone - if the point is nearby behind the plane + */ +export type ZoneProjection = { + point: vec3 + distance: number + isWithinInteractionZone: boolean + isWithinBehindZone: boolean +} + +const DEFAULT_INTERACTION_ZONE_DISTANCE_CM = 20 +// The value to use to widen the interaction zone as it gets further away from the plane. +const DEFAULT_INTERACTION_ZONE_SLOPE = 0.25 + +const DEFAULT_BEHIND_ZONE_DISTANCE_CM = 15 + +/** + * An InteractionPlane defines a zone which triggers near field targeting logic for HandInteractors. + * An InteractionPlane should be added to any 2D UIs with high button density, such as ContainerFrame menus. + * Only one InteractionPlane should be added per UI (ContainerFrame adds an InteractionPlane by default). + */ +@component +export class InteractionPlane extends BaseScriptComponent { + @input + private _planeSize: vec2 = new vec2(10, 10) + + @input + private _proximityDistance: number = DEFAULT_INTERACTION_ZONE_DISTANCE_CM + + @input + private _drawDebug: boolean = false + + @input + private _behindDistance: number = DEFAULT_BEHIND_ZONE_DISTANCE_CM + + private _collider: ColliderComponent = + this.sceneObject.createComponent("ColliderComponent") + + constructor() { + super() + + this.createEvent("OnDestroyEvent").bind(() => this.release()) + + InteractionManager.getInstance().registerInteractionPlane(this) + + this.buildMeshShape() + + this.collider.debugDrawEnabled = this.drawDebug + } + + release() { + InteractionManager.getInstance().deregisterInteractionPlane(this) + } + + // Manually create the mesh shape for the interaction zone to trigger NearField targeting. + private buildMeshShape() { + const slopeOffset = DEFAULT_INTERACTION_ZONE_SLOPE * this.proximityDistance + const shape = Shape.createBoxShape() + shape.size = new vec3( + this.planeSize.x + slopeOffset, + this.planeSize.y + slopeOffset, + this.proximityDistance * 2 + ) + + this.collider.shape = shape + } + + /** + * Sets the size (in world units) of the plane's interaction zone along the local X and Y axes of the SceneObject. + */ + set planeSize(size: vec2) { + this._planeSize = size + + this.buildMeshShape() + } + + /** + * @returns the size (in world units) of the plane's interaction zone along the local X and Y axes of the SceneObject. + */ + get planeSize(): vec2 { + return this._planeSize + } + + /** + * Sets the depth (in world units) of the plane's interaction zone along the local Z axis of the SceneObject. + */ + set proximityDistance(distance: number) { + this._proximityDistance = distance + + this.buildMeshShape() + } + + /** + * Returns the depth (in world units) of the plane's interaction zone along the local Z axis of the SceneObject. + */ + get proximityDistance(): number { + return this._proximityDistance + } + + /** + * Sets the depth (in world units) of the plane's behind zone along the local Z axis of the SceneObject. + */ + set behindDistance(distance: number) { + this._behindDistance = distance + + this.buildMeshShape() + } + + /** + * Returns the depth (in world units) of the plane's interaction zone along the local Z axis of the SceneObject. + */ + get behindDistance(): number { + return this._behindDistance + } + + /** + * Sets if the interaction zone should be drawn via debug gizmos. + */ + set drawDebug(enabled: boolean) { + this._drawDebug = enabled + + this.collider.debugDrawEnabled = enabled + } + + /** + * @returns if the interaction zone should be drawn via debug gizmos. + */ + get drawDebug(): boolean { + return this._drawDebug + } + + /** + * @returns a vec3 representing the normal vector of the plane. + */ + get normal(): vec3 { + return this.getTransform().forward + } + + /** + * Returns the collider of the InteractionPlane. + */ + get collider(): ColliderComponent { + return this._collider + } + + /** + * Project a 3D point in world space onto the InteractionPlane. + * @param point - a 3D point in world space + * @returns - a ZoneProjection representing the point's projection onto the plane, the distance of the point from the plane (negative if behind the plane), + * a boolean checking if the point resides within the interaction zone of the plane (defined by size and proximityDistance), + * and a boolean checking if the point resides within the behind zone of the plane (right behind the plane), + * or null if the point does not project onto the plane. + */ + projectPoint(point: vec3): ZoneProjection { + if (!this.enabled || !this.sceneObject.isEnabledInHierarchy) { + return null + } + + // This logic uses the equation of t = ((p0-l0)·n)/(l·n) with l0 + l*t = the point of intersection. + // l0 represents point, l represents direction, p0 represents plane origin, and n represents the plane normal. + const po = this.sceneObject.getTransform().getWorldPosition() + const n = this.sceneObject.getTransform().forward + + const v = po.sub(point) + const l = n.uniformScale(-1) + + const t = v.dot(n) / l.dot(n) + + // Project the point onto the plane. + const projectedPoint = point.add(l.uniformScale(t)) + + const r = this.sceneObject.getTransform().right + const u = this.sceneObject.getTransform().up + + // Get the local X and Y coordinates within the plane space to check if the point resides within the interaction zone. + const d = projectedPoint.sub(po) + const x = d.dot(r) + const y = d.dot(u) + + // Get the distance of the original point from the plane. + const distance = point.sub(projectedPoint).length * Math.sign(t) + + // Check if the point is in front of the plane, within the proximity distance threshold, and within the planeSize boundaries. + const isWithinInteractionZone = + distance >= 0 && + distance <= this.proximityDistance && + Math.abs(x) <= + this.planeSize.x + distance * DEFAULT_INTERACTION_ZONE_SLOPE && + Math.abs(y) <= + this.planeSize.y + distance * DEFAULT_INTERACTION_ZONE_SLOPE + + // Check if the point is in behind the plane, within the behind zone distance threshold, and within the planeSize boundaries. + const isWithinBehindZone = + distance < 0 && + distance >= -this.behindDistance && + Math.abs(x) <= this.planeSize.x && + Math.abs(y) <= this.planeSize.y + + // If the point is within the interaction zone, return the plane projection data. Otherwise, return null. + const planeProjection = { + point: projectedPoint, + distance: distance, + isWithinInteractionZone: isWithinInteractionZone, + isWithinBehindZone: isWithinBehindZone, + } + return planeProjection + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractionPlane/InteractionPlane.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractionPlane/InteractionPlane.ts.meta new file mode 100644 index 00000000..f13ff752 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractionPlane/InteractionPlane.ts.meta @@ -0,0 +1,47 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! edbbf5fe-8295-4a71-a954-1b265437d6ee + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! edbbf5fe-8295-4a71-a954-1b265437d6ee + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 9b8e0750-02a2-43e5-be2e-b953aebee549 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _behindDistance: false + _drawDebug: false + _planeSize: false + _proximityDistance: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - _planeSize: ! {x: 10.000000, y: 10.000000} + _proximityDistance: ! 20.000000 + _drawDebug: false + _behindDistance: ! 5.000000 + ScriptTypes: + - + {} + InputLines: + - // @input vec2 _planeSize + - // @input float _proximityDistance + - // @input bool _drawDebug + - // @input float _behindDistance diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CircleVisual.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CircleVisual.ts new file mode 100644 index 00000000..e4908358 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CircleVisual.ts @@ -0,0 +1,408 @@ +import {HandType} from "../../../Providers/HandInputData/HandType" +import animate, {CancelSet} from "../../../Utils/animate" +import {validate} from "../../../Utils/validate" +import {Billboard} from "../Billboard/Billboard" +import {CursorMode} from "./InteractorCursor" + +export type CircleVisualTextureConfig = { + translate: Texture + scaleTL: Texture + scaleTR: Texture + disabled: Texture +} + +export type CircleVisualConfig = { + meshSceneObject: SceneObject + textures: CircleVisualTextureConfig +} + +// To make the math of calculating angles easier to follow, the CursorMat graph uses -1 and 1 to represent the left/right hand. +const enum CursorMaterialHandType { + Left = -1, + NonHand = 0, + Right = 1, +} + +const OUTLINE_ANIMATE_DURATION = 0.1 +const DEFAULT_RENDER_ORDER = 100 + +const DEFAULT_SCALE = new vec3(0.8, 0.8, 0.8) + +/** + * CircleVisual provides the circle visual of the cursor & controls the fade in/out animations. + */ +export class CircleVisual { + private _outlineAlpha = 1.0 + private _isShown = false + private _isTriggering = false + private _outlineOffset = 0.0 + private _circleSquishScale = 1.0 + private showCancelSet = new CancelSet() + private outlineAlphaCancelSet = new CancelSet() + private outlineOffsetCancelSet = new CancelSet() + + private _cursorMode: CursorMode = CursorMode.Auto + private _useTexture: boolean = false + private _materialtexture: Texture | null = null + private _customTexture: Texture | null = null + + private visual = this.sceneObject.getComponent("Component.RenderMeshVisual") + + private billboardComponent = this.sceneObject.createComponent( + Billboard.getTypeName() + ) + + constructor(private config: CircleVisualConfig) { + const cloneMaterial = this.visual.mainMaterial.clone() + this.visual.mainMaterial = cloneMaterial + this.renderOrder = DEFAULT_RENDER_ORDER + this.sceneObject.enabled = false + this.visual.getTransform().setWorldScale(DEFAULT_SCALE) + + this.configureBillboardComponent() + } + + private configureBillboardComponent() { + this.billboardComponent.xAxisEnabled = true + this.billboardComponent.yAxisEnabled = true + this.billboardComponent.zAxisEnabled = false + this.billboardComponent.axisEasing = new vec3(1, 1, 1) + this.billboardComponent.axisBufferDegrees = new vec3(0, 0, 0) + } + + get sceneObject(): SceneObject { + return this.config.meshSceneObject + } + + set worldPosition(position: vec3) { + this.sceneObject.getTransform().setWorldPosition(position) + } + + get worldPosition(): vec3 { + return this.sceneObject.getTransform().getWorldPosition() + } + + /** + * Sets whether or not the cursor itself should be shown, and fades it in/out accordingly. + */ + set isShown(show: boolean) { + if (show === this._isShown) { + return + } + + this.showCancelSet() + const initialAlpha = this.visual.mainPass.maxAlpha as number + if (show) { + this.sceneObject.enabled = true + animate({ + cancelSet: this.showCancelSet, + duration: OUTLINE_ANIMATE_DURATION, + update: (t: number) => { + this.visual.mainPass.maxAlpha = MathUtils.lerp(initialAlpha, 1, t) + }, + }) + } else { + animate({ + cancelSet: this.showCancelSet, + duration: OUTLINE_ANIMATE_DURATION, + update: (t: number) => { + this.visual.mainPass.maxAlpha = MathUtils.lerp(initialAlpha, 0, t) + }, + ended: () => { + this.sceneObject.enabled = false + }, + }) + } + this._isShown = show + } + + /** + * Sets whether or not the cursor itself should be shown. + */ + get isShown(): boolean { + return this._isShown + } + + /** + * Sets whether or not the cursor outline should be shown and fades the outline in/out accordingly. + */ + set outlineAlpha(alpha: number) { + if (alpha === this._outlineAlpha) { + return + } + + this.outlineAlphaCancelSet() + const initialAlpha = this.visual.mainPass.outlineAlpha as number + animate({ + cancelSet: this.outlineAlphaCancelSet, + duration: OUTLINE_ANIMATE_DURATION, + update: (t: number) => { + this.visual.mainPass.outlineAlpha = MathUtils.lerp( + initialAlpha, + alpha, + t + ) + }, + }) + this._outlineAlpha = alpha + } + + /** + * Returns the current alpha of the outline. + */ + get outlineAlpha(): number { + return this._outlineAlpha + } + + /** + * Sets the offset to increase the outline radius (both inner and outer edges) + * e.g. outlineOffset = 0.1 changes the outer/inner radii from default of (0.5,0.4) to (0.6,0.5) + */ + set outlineOffset(offset: number) { + if (offset === this._outlineOffset) { + return + } + + this.outlineOffsetCancelSet() + const initialOffset = this.visual.mainPass.outlineOffset as number + animate({ + cancelSet: this.outlineOffsetCancelSet, + duration: OUTLINE_ANIMATE_DURATION, + update: (t: number) => { + this.visual.mainPass.outlineOffset = MathUtils.lerp( + initialOffset, + offset, + t + ) + }, + }) + + this._outlineOffset = offset + } + + /** + * Returns the current outline offset. + */ + get outlineOffset(): number { + return this._outlineOffset + } + + /** + * Sets the squish scale of the inner circle + */ + set circleSquishScale(scale: number) { + if (scale === this._circleSquishScale) { + return + } + + this.visual.mainPass.circleSquishScale = scale + this._circleSquishScale = scale + } + + /** + * Returns the current outline offset. + */ + get circleSquishScale(): number { + return this._circleSquishScale + } + + /** + * Sets if the cursor should reflect a triggered state. + */ + set isTriggering(triggering: boolean) { + if (triggering === this._isTriggering) { + return + } + + this.visual.mainPass.isTriggering = triggering + + this._isTriggering = triggering + } + + /** + * Returns if the cursor is in a triggered state. + */ + get isTriggering(): boolean { + return this._isTriggering + } + + /** + * Sets if the visual should use a texture instead of drawing onto the plane mesh. + */ + set useTexture(useTexture: boolean) { + if (useTexture === this._useTexture) { + return + } + + this.visual.mainPass.useTexture = useTexture + + this._useTexture = useTexture + } + + /** + * Returns if the visual should use a texture instead of drawing onto the plane mesh. + */ + get useTexture(): boolean { + return this._useTexture + } + + /** + * Sets the texture of the cursor material's mainPass to place onto the plane mesh. + */ + set materialTexture(texture: Texture) { + if (texture === this._materialtexture) { + return + } + + this.visual.mainPass.cursorTexture = texture + + this._materialtexture = texture + } + + /** + * Returns the texture to place onto the plane mesh. + */ + get materialTexture(): Texture | null { + return this._materialtexture + } + + /** + * Caches the custom texture to place onto the plane mesh when using {@link CursorMode}.Custom. + */ + set customTexture(texture: Texture) { + if (texture === this._customTexture) { + return + } + + if (this.cursorMode === CursorMode.Custom) { + this.materialTexture = texture + } + + this._customTexture = texture + } + + /** + * Returns the custom texture to place onto the plane mesh when using {@link CursorMode}.Custom. + */ + get customTexture(): Texture | null { + return this._customTexture + } + + /** + * Set the {@link CursorMode} of the cursor to change the visual + * To return the cursor to its default {@link StateMachine} logic, use {@link CursorMode}.Auto + * @param cursorMode - The new mode of the cursor visual + */ + set cursorMode(cursorMode: CursorMode) { + if (cursorMode === this.cursorMode) { + return + } + + this.useTexture = cursorMode !== CursorMode.Auto + + switch (cursorMode) { + case CursorMode.Translate: + this.materialTexture = this.config.textures.translate + break + case CursorMode.ScaleTopLeft: + this.materialTexture = this.config.textures.scaleTL + break + case CursorMode.ScaleTopRight: + this.materialTexture = this.config.textures.scaleTR + break + case CursorMode.Disabled: + this.materialTexture = this.config.textures.disabled + break + case CursorMode.Custom: + validate(this.customTexture) + this.materialTexture = this.customTexture + break + + default: + break + } + + this._cursorMode = cursorMode + } + + /** + * Returns the {@link Texture} of the cursor when using the {@link CursorMode}.Custom mode + * @returns the custom texture (typically cached via requireAsset(.../assetName.png) as Texture) to use + */ + get cursorMode(): CursorMode { + return this._cursorMode + } + + set renderOrder(renderOrder: number) { + this.visual.setRenderOrder(renderOrder) + } + + get renderOrder(): number { + return this.visual.getRenderOrder() + } + + /** + * Set the 'handedness' of the cursor, e.g. left, right, or non-hand. + */ + set handType(type: HandType | null) { + let materialInput: number + + // The material graph uses -1,0,1 to differentiate the types. + switch (type) { + case "left": + materialInput = CursorMaterialHandType.Left + break + case "right": + materialInput = CursorMaterialHandType.Right + break + default: + materialInput = CursorMaterialHandType.NonHand + } + + this.visual.mainPass.handType = materialInput + } + + /** + * Get the 'handedness' of the cursor, e.g. left, right, or non-hand. + * @returns -1 for Left, 0 for Non-Hand, 1 for Right + */ + get handType(): HandType | null { + switch (this.visual.mainPass.handType) { + case -1: + return "left" + case 1: + return "right" + + default: + return null + } + } + + /** + * Set if there are multiple Interactors active in the scene to enable the multi-Interactor look. + */ + set multipleInteractorsActive(active: boolean) { + this.visual.mainPass.multipleInteractorsActive = active + } + + /** + * Returns if there are multiple Interactors active in the scene to enable the multi-Interactor look. + */ + get multipleInteractorsActive(): boolean { + return this.visual.mainPass.multipleInteractorsActive + } + + /** + * Set the world scale of the cursor. + */ + set worldScale(scale: vec3) { + this.visual.getTransform().setWorldScale(scale) + } + + /** + * Returns the world scale of the cursor. + */ + get worldScale(): vec3 { + return this.visual.getTransform().getWorldScale() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CircleVisual.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CircleVisual.ts.meta new file mode 100644 index 00000000..6eae92f3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CircleVisual.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! fe54526f-e42a-4026-97af-89cc58407e76 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! fe54526f-e42a-4026-97af-89cc58407e76 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 6d3b21c7-4208-495e-82bb-2ca39782a9ae + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Cursor.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Cursor.mat new file mode 100644 index 00000000..82f7947f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Cursor.mat @@ -0,0 +1,279 @@ +- ! + PackagePath: "" + PassesInfo: + - ! bcb1bd2b-fd10-4461-b704-9bfc7d1b2471 +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: true + DepthFunction: Always + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Center_N019: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Default_N010: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Default_N048: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + Port_Default_N088: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Default_N131: + typeIdx: 1 + value: 0.000000 + Port_Default_N153: + typeIdx: 1 + value: 0.000000 + Port_Default_N155: + typeIdx: 1 + value: 0.000000 + Port_Default_N156: + typeIdx: 1 + value: 0.000000 + Port_Input0_N083: + typeIdx: 1 + value: 0.700000 + Port_Input1_N020: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Input1_N026: + typeIdx: 1 + value: 1.000000 + Port_Input1_N027: + typeIdx: 1 + value: 0.000000 + Port_Input1_N028: + typeIdx: 1 + value: 0.000000 + Port_Input1_N029: + typeIdx: 1 + value: 1.000000 + Port_Input1_N035: + typeIdx: 1 + value: 0.000000 + Port_Input1_N054: + typeIdx: 1 + value: 2.000000 + Port_Input1_N071: + typeIdx: 1 + value: 2.000000 + Port_Input1_N083: + typeIdx: 1 + value: 1.000000 + Port_Input1_N084: + typeIdx: 1 + value: 2.000000 + Port_Input1_N094: + typeIdx: 1 + value: 2.000000 + Port_Input1_N097: + typeIdx: 1 + value: 1.500000 + Port_Input1_N112: + typeIdx: 1 + value: 2.000000 + Port_Input1_N143: + typeIdx: 1 + value: 2.000000 + Port_RangeMaxA_N001: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N013: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N161: + typeIdx: 1 + value: 0.200000 + Port_RangeMaxB_N001: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N013: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N146: + typeIdx: 1 + value: 0.000000 + Port_RangeMaxB_N151: + typeIdx: 1 + value: 0.000000 + Port_RangeMaxB_N152: + typeIdx: 1 + value: 0.000000 + Port_RangeMaxB_N154: + typeIdx: 1 + value: 0.000000 + Port_RangeMaxB_N161: + typeIdx: 1 + value: 0.500000 + Port_RangeMinA_N001: + typeIdx: 1 + value: 0.000000 + Port_RangeMinA_N013: + typeIdx: 1 + value: 0.000000 + Port_RangeMinA_N161: + typeIdx: 1 + value: 1.000000 + Port_RangeMinB_N001: + typeIdx: 1 + value: -1.000000 + Port_RangeMinB_N013: + typeIdx: 1 + value: -1.000000 + Port_RangeMinB_N161: + typeIdx: 1 + value: 1.000000 + Port_Scale_N002: + typeIdx: 3 + value: {x: 2.000000, y: 2.000000} + Port_Value1_N014: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + Port_Value1_N046: + typeIdx: 1 + value: 0.000000 + Port_Value1_N048: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 0.000000} + Port_Value1_N131: + typeIdx: 1 + value: 1.000000 + Port_Value1_N149: + typeIdx: 1 + value: 0.623400 + Port_Value1_N156: + typeIdx: 1 + value: 1.000000 + Port_Value2_N046: + typeIdx: 1 + value: 0.000000 + Port_Value2_N131: + typeIdx: 1 + value: 1.000000 + Port_Value2_N149: + typeIdx: 1 + value: 0.376600 + Port_Value2_N156: + typeIdx: 1 + value: 1.000000 + Port_Value3_N131: + typeIdx: 1 + value: 1.000000 + Port_Value3_N149: + typeIdx: 1 + value: 0.000000 + Port_Value3_N156: + typeIdx: 1 + value: 1.000000 + Port_Value4_N156: + typeIdx: 1 + value: 1.000000 + Port_Value_N036: + typeIdx: 1 + value: 0.500000 + Port_Value_N037: + typeIdx: 1 + value: 0.400000 + Port_Value_N041: + typeIdx: 0 + value: 60 + Port_Value_N042: + typeIdx: 1 + value: 0.300000 + Port_Value_N068: + typeIdx: 1 + value: 0.900000 + Port_Value_N091: + typeIdx: 0 + value: 45 + Port_Value_N164: + typeIdx: 1 + value: 2.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + circleSquishScale: + typeIdx: 1 + value: 1.000000 + cursorTexture: + typeIdx: 9 + value: + id: 51b1ce57-da27-43f9-af3c-6d08f0445dea + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + cursorTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + cursorTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + cursorTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + cursorTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + handType: + typeIdx: 0 + value: 0 + isTriggering: + typeIdx: 2 + value: false + maxAlpha: + typeIdx: 1 + value: 1.000000 + multipleInteractorsActive: + typeIdx: 2 + value: false + outlineAlpha: + typeIdx: 1 + value: 1.000000 + outlineOffset: + typeIdx: 1 + value: 0.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + shadowGradientOffset: + typeIdx: 1 + value: 0.100000 + shadowOpacity: + typeIdx: 1 + value: 0.100000 + useTexture: + typeIdx: 2 + value: false + Pass: ! 288aad0f-0f63-48be-a2e3-3f8b378d8379 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Cursor.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Cursor.mat.meta new file mode 100644 index 00000000..9adccca3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Cursor.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! cae9a018-3d89-458f-9260-baee98b8a85e + ImporterName: MaterialImporter + PrimaryAsset: ! cae9a018-3d89-458f-9260-baee98b8a85e + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorController.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorController.ts new file mode 100644 index 00000000..8679a96f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorController.ts @@ -0,0 +1,68 @@ +import { + Interactor, + InteractorInputType, +} from "../../../Core/Interactor/Interactor" + +import BaseInteractor from "../../../Core/Interactor/BaseInteractor" +import {CursorControllerProvider} from "../../../Providers/CursorControllerProvider/CursorControllerProvider" +import {InteractionManager} from "../../../Core/InteractionManager/InteractionManager" +import {InteractorCursor} from "./InteractorCursor" + +/** + * This class manages the creation and retrieval of InteractorCursor instances for interactors. It initializes cursors for all interactors on awake and provides methods to get cursors by interactor or input type. + */ +@component +export class CursorController extends BaseScriptComponent { + private cursorControllerProvider = CursorControllerProvider.getInstance() + + onAwake(): void { + const interactors = InteractionManager.getInstance().getInteractorsByType( + InteractorInputType.All, + ) + + interactors.forEach((interactor: Interactor) => { + const cursor = this.getSceneObject().createComponent( + InteractorCursor.getTypeName(), + ) + cursor.interactor = interactor as BaseInteractor + }) + } + + /** + * @deprecated in favor of getCursorByInteractor + * Gets the InteractorCursor for a specified interactor + * @param interactor - The interactor to get the cursor for + * @returns the InteractorCursor for the requested interactor, or null if it doesn't exist + */ + getCursor(interactor: Interactor): InteractorCursor | null { + return this.cursorControllerProvider.getCursor(interactor) + } + + /** + * Gets the InteractorCursor for a specified interactor + * @param interactor - The interactor to get the cursor for + * @returns the InteractorCursor for the requested interactor, or null if it doesn't exist + */ + getCursorByInteractor(interactor: Interactor): InteractorCursor | null { + return this.cursorControllerProvider.getCursorByInteractor(interactor) + } + + /** + * Gets the InteractorCursor for a specified input type + * @param inputType - The InteractorInputType to get the cursor for + * @returns the InteractorCursor for the requested InteractorInputType, or null if it doesn't exist + */ + getCursorByInputType( + inputType: InteractorInputType, + ): InteractorCursor | null { + return this.cursorControllerProvider.getCursorByInputType(inputType) + } + + /** + * Gets all InteractorCursors within the scene + * @returns a list of InteractorCursors + */ + getAllCursors(): InteractorCursor[] { + return this.cursorControllerProvider.getAllCursors() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorController.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorController.ts.meta new file mode 100644 index 00000000..44d7a473 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorController.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! b1bd344a-41d1-4a26-bbbb-6c15ab434046 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! b1bd344a-41d1-4a26-bbbb-6c15ab434046 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 7217890d-94fe-4565-b9c9-df31bdb6e095 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorMat.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorMat.ss_graph new file mode 100644 index 00000000..db7aea30 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorMat.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3172a4684c5d399f7257039391b050c5fedd8af9ae99afb559966874f401a602 +size 859347 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorMat.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorMat.ss_graph.meta new file mode 100644 index 00000000..13d88aab --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorMat.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 288aad0f-0f63-48be-a2e3-3f8b378d8379 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 288aad0f-0f63-48be-a2e3-3f8b378d8379 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorViewModel.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorViewModel.ts new file mode 100644 index 00000000..b180c00a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorViewModel.ts @@ -0,0 +1,688 @@ +import {Interactable} from "../../../Components/Interaction/Interactable/Interactable" +import {InteractableManipulation} from "../../../Components/Interaction/InteractableManipulation/InteractableManipulation" +import {InteractionManager} from "../../../Core/InteractionManager/InteractionManager" +import { + Interactor, + InteractorInputType, + InteractorTriggerType, + TargetingMode, +} from "../../../Core/Interactor/Interactor" +import WorldCameraFinderProvider from "../../../Providers/CameraProvider/WorldCameraFinderProvider" +import {HandInputData} from "../../../Providers/HandInputData/HandInputData" +import {InteractionConfigurationProvider} from "../../../Providers/InteractionConfigurationProvider/InteractionConfigurationProvider" +import animate, {CancelSet, easingFunctions} from "../../../Utils/animate" +import Event, {unsubscribe} from "../../../Utils/Event" +import NativeLogger from "../../../Utils/NativeLogger" +import {OneEuroFilterVec3} from "../../../Utils/OneEuroFilter" +import StateMachine from "../../../Utils/StateMachine" +import {ScrollView} from "../../UI/ScrollView/ScrollView" + +export enum CursorState { + Inactive = "Inactive", + Idle = "Idle", + Hovering = "Hovering", + Manipulating = "Manipulating", + Scrolling = "Scrolling", +} + +export enum CursorInteractor { + Primary, + Secondary, +} + +export type CursorViewState = ( + | { + cursorEnabled: true + cursorData: CursorData + } + | { + cursorEnabled: false + } +) & + ( + | { + lineEnabled: true + lineData: ManipulateLineData + } + | { + lineEnabled: false + } + ) + +export type CursorData = { + position: vec3 | null + interactionStrength: number | null + isTriggering: boolean + scale: number +} + +export type ManipulateLineData = { + origin: vec3 + endPoint: vec3 + delta: vec3 | null +} + +const DISTANCE_SCALE_FACTOR = 10 +const DEFAULT_INITIAL_DISTANCE = 160 +const MIN_DISTANCE = 15 +const DEFAULT_MANIPULATE_STRENGTH = 1 +const DEFAULT_HOVER_ANIMATE_DURATION_SECONDS = 0.2 +const DEFAULT_IDLE_ANIMATE_DURATION_SECONDS = 0.7 + +const DEFAULT_NEAR_FIELD_SCALE = 0.4 +const DEFAULT_MID_FIELD_SCALE = 0.8 +const DEFAULT_FAR_FIELD_SCALE = 1.2 + +const DEFAULT_NEAR_FIELD_THRESHOLD_CM = 70 +const DEFAULT_MID_FIELD_THRESHOLD_CM = 130 +const DEFAULT_FAR_FIELD_THRESHOLD_CM = 200 + +const DEFAULT_CURSOR_FILTER = { + frequency: 60, + dcutoff: 0.16, + minCutoff: 0.5, + beta: 0.2, +} + +const TAG = "CursorViewModel" + +/** + * ViewModel for the InteractorCursor that uses a StateMachine to keep track of cursor updates & state changes. + */ +export class CursorViewModel { + private interactionConfigurationProvider: InteractionConfigurationProvider = + InteractionConfigurationProvider.getInstance() + + private camera = WorldCameraFinderProvider.getInstance() + + // Native Logging + private log = new NativeLogger(TAG) + + private stateMachine = new StateMachine("CursorViewModel") + + private handProvider: HandInputData = HandInputData.getInstance() + + private interactionManager: InteractionManager = + InteractionManager.getInstance() + + private onStateChangeEvent = new Event() + public onStateChange = this.onStateChangeEvent.publicApi() + private onCursorUpdateEvent = new Event() + public onCursorUpdate = this.onCursorUpdateEvent.publicApi() + + private _cursorPosition: vec3 | null = null + + private currentInteractableUnsubscribeCallback: unsubscribe | null = null + private currentInteractable: Interactable | null = null + private currentManipulation: InteractableManipulation | null = null + private isScrolling = false + + private cursorDistance = DEFAULT_INITIAL_DISTANCE + + private distanceCancelSet = new CancelSet() + private isAnimating = false + + private scrollView: ScrollView | null = null + + // Allows the developer to set position manually, setting to null whenever the developer wants to resume default behavior. + positionOverride: vec3 | null = null + + /** + * Currently using a one-euro filter optimized for reducing slow speed jitter. + */ + private filter = new OneEuroFilterVec3(DEFAULT_CURSOR_FILTER) + + constructor( + private enableCursorHolding: boolean, + private enableFilter: boolean, + private _interactor?: Interactor + ) { + // If passing an Interactor within the constructor, ensure the Interactor callbacks are setup correctly. + if (_interactor !== undefined) { + this.setInteractor(_interactor) + } + + this.setupStateMachine() + } + + setInteractor(interactor: Interactor): void { + if (this.currentInteractableUnsubscribeCallback !== null) { + this.currentInteractableUnsubscribeCallback() + this.currentInteractableUnsubscribeCallback = null + } + + this._interactor = interactor + + this.currentInteractableUnsubscribeCallback = + this.interactor?.onCurrentInteractableChanged.add((interactable) => { + this.currentInteractable = interactable + this.currentManipulation = + interactable !== null + ? interactable.sceneObject.getComponent( + InteractableManipulation.getTypeName() + ) + : null + this.isScrolling = + interactable !== null + ? this.checkScrollable(interactable.sceneObject) + : false + }) ?? null + } + + private get interactor(): Interactor | null { + return this._interactor ?? null + } + + get cursorPosition(): vec3 | null { + return this._cursorPosition + } + + private setupStateMachine() { + this.stateMachine.addState({ + name: CursorState.Inactive, + onEnter: () => { + this.onStateChangeEvent.invoke(CursorState.Inactive) + + // If we enter the inactive state due to direct targeting, set the cursor distance to be closer to hand for post-direct interaction. + const isDirect = + this.interactor !== null && + this.interactor.activeTargetingMode === TargetingMode.Direct + this.cursorDistance = isDirect ? MIN_DISTANCE : DEFAULT_INITIAL_DISTANCE + }, + transitions: [ + { + nextStateName: CursorState.Idle, + checkOnUpdate: () => { + return ( + (this.checkVisibleTargetingState() && + this.interactor?.currentInteractable === null) ?? + false + ) + }, + }, + { + nextStateName: CursorState.Hovering, + // If the interactor targets an object on the first frame of being active, jump immediately to the object to avoid jumpy cursor. + checkOnUpdate: () => { + return ( + this.checkVisibleTargetingState() && + this.interactor?.currentInteractable !== null + ) + }, + }, + ], + }) + + this.stateMachine.addState({ + name: CursorState.Idle, + onEnter: () => { + this.onStateChangeEvent.invoke(CursorState.Idle) + + // When entering idle state with no Interactable target, lerp to the default distance + const distance = Math.max(this.cursorDistance, MIN_DISTANCE) + this.animateCursorDistance( + distance, + "ease-in-out-cubic", + DEFAULT_IDLE_ANIMATE_DURATION_SECONDS + ) + }, + onUpdate: (): void => { + const position = this.getFarFieldCursorPosition() + + this.updateIndirectCursorPosition( + this.interactor?.interactionStrength ?? null, + position + ) + }, + transitions: [ + { + nextStateName: CursorState.Inactive, + checkOnUpdate: () => { + return !this.interactor || !this.checkVisibleTargetingState() + }, + }, + { + nextStateName: CursorState.Hovering, + checkOnUpdate: () => { + return this.interactor?.currentInteractable !== null + }, + // Lerp to the targeted Interactable when transitioning to hover state + onExecution: () => { + const origin = this.interactor?.startPoint ?? null + const hitPosition = this.interactor?.targetHitPosition ?? null + + if (origin === null || hitPosition === null) { + return + } + + const distance = origin.distance(hitPosition) + + this.animateCursorDistance( + distance, + "linear", + DEFAULT_HOVER_ANIMATE_DURATION_SECONDS + ) + }, + }, + ], + }) + + this.stateMachine.addState({ + name: CursorState.Hovering, + onEnter: () => { + this.onStateChangeEvent.invoke(CursorState.Hovering) + }, + onUpdate: () => { + // Cancel the animation if a trigger happens mid-animation + if ( + this.isAnimating && + this.interactor?.currentTrigger !== InteractorTriggerType.None + ) { + this.cancelAnimation() + } + + if (!this.isAnimating) { + if (!this.interactor || !this.interactor.startPoint) { + return + } + + this.cursorDistance = + this.interactor?.targetHitInfo?.hit.position.distance( + this.interactor.startPoint + ) ?? this.cursorDistance + } + + const position = this.shouldCursorHold() + ? this.getHeldCursorPosition() + : this.getFarFieldCursorPosition() + + this.updateIndirectCursorPosition( + this.interactor?.interactionStrength ?? null, + position + ) + }, + transitions: [ + { + nextStateName: CursorState.Inactive, + checkOnUpdate: () => { + return !this.interactor || !this.checkVisibleTargetingState() + }, + }, + { + nextStateName: CursorState.Idle, + checkOnUpdate: () => { + return !this.interactor?.currentInteractable + }, + }, + { + nextStateName: CursorState.Manipulating, + checkOnUpdate: () => { + return ( + this.interactor?.currentTrigger !== InteractorTriggerType.None && + this.currentManipulation !== null + ) + }, + }, + { + nextStateName: CursorState.Scrolling, + checkOnUpdate: () => { + return ( + this.interactor?.currentTrigger !== InteractorTriggerType.None && + this.isScrolling && + this.interactor?.currentDragVector !== null + ) + }, + }, + ], + onExit: () => { + this.cancelAnimation() + }, + }) + + this.stateMachine.addState({ + name: CursorState.Manipulating, + onEnter: () => this.onStateChangeEvent.invoke(CursorState.Manipulating), + onUpdate: () => { + /** + * We were showing the cursor held to center as a visual feedback if line is disabled, + * But we disabled this by default in LAF-3485. + */ + this.updateIndirectCursorPosition( + DEFAULT_MANIPULATE_STRENGTH, + this.getHeldCursorPosition() + ) + }, + transitions: [ + { + nextStateName: CursorState.Inactive, + checkOnUpdate: () => { + return !this.interactor || !this.checkVisibleTargetingState() + }, + }, + { + nextStateName: CursorState.Idle, + checkOnUpdate: () => { + return !this.interactor?.currentInteractable + }, + }, + { + nextStateName: CursorState.Hovering, + checkOnUpdate: () => { + return ( + this.interactor?.currentTrigger === InteractorTriggerType.None + ) + }, + }, + ], + }) + + this.stateMachine.addState({ + name: CursorState.Scrolling, + onEnter: () => this.onStateChangeEvent.invoke(CursorState.Scrolling), + onUpdate: () => { + const planecastPosition = this.getPlanecastCursorPosition() + + this.updateIndirectCursorPosition( + this.interactor?.interactionStrength ?? null, + planecastPosition + ) + }, + + transitions: [ + { + nextStateName: CursorState.Inactive, + checkOnUpdate: () => { + return !this.interactor || !this.checkVisibleTargetingState() + }, + }, + { + nextStateName: CursorState.Idle, + checkOnUpdate: () => { + return ( + !this.interactor?.currentInteractable || + // If the planecasted point is not within the ScrollView's bounds, immediately switch to Idle to avoid a flicker. + (!this.checkPlanecastWithinScrollView() && + this.interactor?.currentTrigger === InteractorTriggerType.None) + ) + }, + }, + { + nextStateName: CursorState.Hovering, + checkOnUpdate: () => { + return ( + this.interactor?.currentTrigger === InteractorTriggerType.None + ) + }, + }, + ], + }) + + this.stateMachine.enterState(CursorState.Inactive) + } + + private getPlanecastCursorPosition(): vec3 | null { + if (this.interactor === null) { + this.log.d( + "Cursor failed to get planecast position due to null interactor, and will return null." + ) + return null + } + + const position = this.interactor.planecastPoint + + return this.shouldFilter() && position + ? this.filter.filter(position, getTime()) + : position + } + + private checkPlanecastWithinScrollView() { + const cursorPos = this.getPlanecastCursorPosition() + if (cursorPos === null) { + return false + } + + return ( + this.scrollView + ?.getSceneObject() + ?.getComponent("Component.ScreenTransform") + ?.containsWorldPoint(cursorPos) ?? false + ) + } + + /** + * Calculates the position of the cursor based on the center of the targeting ray. + * @returns the position of the cursor, or null if not applicable + */ + private getFarFieldCursorPosition(): vec3 | null { + const origin = this.interactor?.startPoint ?? null + const direction = this.interactor?.direction ?? null + if (this.interactor === null || origin === null || direction === null) { + this.log.d( + "Cursor failed to get far field position due to null interactor, origin, or direction, and will return null." + ) + return null + } + const position = origin.add(direction.uniformScale(this.cursorDistance)) + return this.shouldFilter() + ? this.filter.filter(position, getTime()) + : position + } + + /** + * Returns the held cursor position, where it's stuck to the center of target when currently selecting, or the hit position otherwise. + * @returns the position of the held cursor, with the regular far field cursor position or null as a fallback if the target hit position cannot be found. + */ + private getHeldCursorPosition(): vec3 | null { + let position: vec3 | null + + if (!this.interactor) { + return null + } + const isTriggering = + (this.interactor.currentTrigger & InteractorTriggerType.Select) !== 0 + + const wasTriggering = + (this.interactor.previousTrigger & InteractorTriggerType.Select) !== 0 + + if (isTriggering) { + // While triggering, ensuring that the initial local position is maintained. + position = + this.interactor?.currentInteractable?.sceneObject + .getTransform() + .getWorldTransform() + .multiplyPoint( + this.interactor?.targetHitInfo?.localHitPosition ?? vec3.zero() + ) ?? null + } else if (wasTriggering && !isTriggering) { + // On the frame that the Interactor stops triggering, maintain the same cursor position as previous frame to account for targeting changes. + position = this.cursorPosition + } else { + // We calculate the direction from the interactor to the hit point, then use the stored cursor distance to respect animated distance. + const origin = this.interactor.startPoint + if (!origin) { + return null + } + const direction = this.interactor.targetHitInfo?.hit.position + ?.sub(origin) + .normalize() + + if (!direction) { + return null + } + + position = origin.add(direction.uniformScale(this.cursorDistance)) + } + + if (position) { + return this.shouldFilter() + ? this.filter.filter(position, getTime()) + : position + } else { + return this.getFarFieldCursorPosition() + } + } + + /** + * @returns if the cursor should be held to the hit position. + * During manipulation, since the interactor is assumed to be triggered, we hold the cursor to maintain local offset. + */ + private shouldCursorHold(): boolean { + return ( + this.enableCursorHolding && + ((this.interactor && + (this.interactor.inputType & InteractorInputType.BothHands) !== 0) ?? + false) + ) + } + + private shouldFilter(): boolean { + return ( + this.enableFilter && + ((this.interactor && + (this.interactor.inputType & InteractorInputType.BothHands) !== 0) ?? + false) + ) + } + + // Animates the cursor to move to a certain distance using easing functions + private animateCursorDistance( + distance: number, + easing: keyof typeof easingFunctions, + duration: number + ) { + // Ensure only one thing is modifying the cursor distance at a time + this.distanceCancelSet.cancel() + this.isAnimating = true + + const initialDistance = this.cursorDistance + animate({ + cancelSet: this.distanceCancelSet, + duration: duration, + update: (t: number) => { + this.cursorDistance = MathUtils.lerp(initialDistance, distance, t) + }, + ended: () => { + this.isAnimating = false + }, + easing: easing, + }) + } + + /** + * Cancel the existing animation and set the isAnimating boolean to false, + * allowing other functions ({@link getFarFieldCursorPosition} and {@link getHeldCursorPosition}) + * to modify {@link cursorDistance} to jump the cursor to the Interactable object + */ + private cancelAnimation() { + this.distanceCancelSet.cancel() + this.isAnimating = false + } + + // Check if interacted item is within a ScrollView + private checkScrollable(sceneObject: SceneObject | null): boolean { + if (sceneObject === null) { + return false + } + + const interactable = + this.interactionManager.getInteractableBySceneObject(sceneObject) + + if (interactable !== null && interactable.isScrollable) { + this.scrollView = sceneObject.getComponent(ScrollView.getTypeName()) + if (this.scrollView !== null) { + return this.scrollView.contentLength > this.scrollView.scrollAreaSize.y + } + } + + return this.checkScrollable(sceneObject.getParent()) + } + + /** + * When in indirect interaction mode while targeting an Interactable, + * positions to interaction hit point if snapping. + * If there is no origin, then hide the cursor instead. + */ + private updateIndirectCursorPosition( + interactionStrength: number | null, + position: vec3 | null + ): void { + if (position !== null) { + if (!this.isAnimating) { + this.cursorDistance = + this.interactor?.startPoint?.distance(position) ?? this.cursorDistance + } + + this._cursorPosition = this.positionOverride ?? position + + this.onCursorUpdateEvent.invoke({ + cursorEnabled: true, + cursorData: { + position: this.cursorPosition, + interactionStrength: interactionStrength ?? null, + isTriggering: + this.interactor?.currentTrigger !== InteractorTriggerType.None, + scale: this.calculateCursorScale(), + }, + lineEnabled: false, + }) + } + } + + // Check if the interactor is not in a state that should hide the cursor (poke or direct), as well as if the interactor is active/targeting. + private checkVisibleTargetingState(): boolean { + if (this.interactor?.enabled) { + // If the interactor is targeting via direct pinch or poke (but not necessarily near field mode due to no plane), hide the cursor. + const isVisibleTargetingMode = + (this.interactor.activeTargetingMode & + (TargetingMode.Poke | TargetingMode.Direct | TargetingMode.None)) === + 0 + + return ( + (isVisibleTargetingMode || + this.interactor.inputType === InteractorInputType.Mouse) && + this.interactor.isActive() && + this.interactor.isTargeting() + ) + } + + return false + } + + private calculateCursorScale(): number { + if (this.cursorDistance > DEFAULT_FAR_FIELD_THRESHOLD_CM) { + return DEFAULT_FAR_FIELD_SCALE + } else if ( + this.cursorDistance > DEFAULT_MID_FIELD_THRESHOLD_CM && + this.cursorDistance <= DEFAULT_FAR_FIELD_THRESHOLD_CM + ) { + const scaleDifference = DEFAULT_FAR_FIELD_SCALE - DEFAULT_MID_FIELD_SCALE + + const t = MathUtils.remap( + this.cursorDistance, + DEFAULT_MID_FIELD_THRESHOLD_CM, + DEFAULT_FAR_FIELD_THRESHOLD_CM, + 0, + 1 + ) + + return DEFAULT_MID_FIELD_SCALE + scaleDifference * t + } else if ( + this.cursorDistance > DEFAULT_NEAR_FIELD_THRESHOLD_CM && + this.cursorDistance <= DEFAULT_MID_FIELD_THRESHOLD_CM + ) { + const scaleDifference = DEFAULT_MID_FIELD_SCALE - DEFAULT_NEAR_FIELD_SCALE + + const t = MathUtils.remap( + this.cursorDistance, + DEFAULT_NEAR_FIELD_THRESHOLD_CM, + DEFAULT_MID_FIELD_THRESHOLD_CM, + 0, + 1 + ) + + return DEFAULT_NEAR_FIELD_SCALE + scaleDifference * t + } else { + return DEFAULT_NEAR_FIELD_SCALE + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorViewModel.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorViewModel.ts.meta new file mode 100644 index 00000000..ce2f023b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/CursorViewModel.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 32a0c15f-9bb8-489e-b94c-d03d3c78a6fe + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 32a0c15f-9bb8-489e-b94c-d03d3c78a6fe + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 61fb97de-3768-43db-b2a2-b70dba7a8077 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/InteractorCursor.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/InteractorCursor.ts new file mode 100644 index 00000000..bdbcd4c4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/InteractorCursor.ts @@ -0,0 +1,353 @@ +import {CircleVisual, CircleVisualConfig} from "./CircleVisual" +import { + CursorData, + CursorState, + CursorViewModel, + CursorViewState, + ManipulateLineData, +} from "./CursorViewModel" +import { + Interactor, + InteractorInputType, +} from "../../../Core/Interactor/Interactor" +import LineRenderer, { + LineViewConfig, +} from "../../../Utils/views/LineRenderer/LineRenderer" + +import BaseInteractor from "../../../Core/Interactor/BaseInteractor" +import {CursorControllerProvider} from "../../../Providers/CursorControllerProvider/CursorControllerProvider" +import Event from "../../../Utils/Event" +import {HandType} from "../../../Providers/HandInputData/HandType" +import {InteractionManager} from "../../../Core/InteractionManager/InteractionManager" +import {validate} from "../../../Utils/validate" + +export enum CursorMode { + Auto = "Auto", + Translate = "Translate", + ScaleTopLeft = "ScaleTopLeft", + ScaleTopRight = "ScaleTopRight", + Disabled = "Disabled", + Custom = "Custom", +} + +const TAG = "InteractorCursor" + +const LINE_VERTICES = 10 +const LINE_MIDPOINT = 0.7 + +const DEFAULT_IDLE_OUTLINE_OFFSET = 0.0 +const DEFAULT_HOVER_OUTLINE_OFFSET = 0.1 + +const DEFAULT_IDLE_SCALE = 1.0 +const DEFAULT_SQUISH_SCALE = 0.6 + +const DEFAULT_IDLE_OUTLINE_ALPHA = 1.0 +const DEFAULT_HOVER_OUTLINE_ALPHA = 0.5 + +const MESH_SCENE_OBJECT_INDEX = 0 + +/** + * This class represents a cursor for interactors, providing visual feedback for different interaction states. It manages the cursor's appearance, including its circle visual and manipulation line, and handles state changes and events. + */ +@component +export class InteractorCursor extends BaseScriptComponent { + private circleVisualConfig!: CircleVisualConfig + + private manipulateLineConfig!: LineViewConfig + + private circleVisual!: CircleVisual + private circleVisualEnabled = true + + private manipulateLine!: LineRenderer + + private viewModel!: CursorViewModel + + private interactionManager = InteractionManager.getInstance() + private cursorController = CursorControllerProvider.getInstance() + + // Events + private onEnableChangedEvent = new Event() + + /** + * Called whenever the cursor changes enabled state (showing / hiding the cursor visual) + */ + onEnableChanged = this.onEnableChangedEvent.publicApi() + + private onStateChange = (state: CursorState) => { + switch (state) { + case CursorState.Inactive: + // If the visual is already hidden, do not invoke the extra event. + if (this.circleVisual.isShown) { + this.onEnableChangedEvent.invoke(false) + } + this.circleVisual.isShown = false + this.circleVisual.outlineOffset = DEFAULT_IDLE_OUTLINE_OFFSET + break + case CursorState.Idle: + this.circleVisual.outlineAlpha = DEFAULT_IDLE_OUTLINE_ALPHA + this.circleVisual.outlineOffset = DEFAULT_IDLE_OUTLINE_OFFSET + break + case CursorState.Hovering: + this.circleVisual.outlineAlpha = DEFAULT_HOVER_OUTLINE_ALPHA + this.circleVisual.outlineOffset = DEFAULT_HOVER_OUTLINE_OFFSET + break + } + } + + private onCursorUpdate = (viewState: CursorViewState) => { + // If the script component has been disabled, do not show the cursor visual. + const shouldShow = viewState.cursorEnabled && this.circleVisualEnabled + if (shouldShow !== this.circleVisual.isShown) { + this.onEnableChangedEvent.invoke(shouldShow) + } + + this.circleVisual.isShown = shouldShow + this.circleVisual.multipleInteractorsActive = + this.checkMultipleInteractorsActive() + + this.manipulateLine.setEnabled(viewState.lineEnabled) + if (viewState.cursorEnabled) { + this.updateWorldCursor(viewState.cursorData) + } + if (viewState.lineEnabled) { + this.updateManipulateLine(viewState.lineData) + } + } + + @input + enableCursorHolding: boolean = true + @input + enableFilter: boolean = false + + @input("Component.ScriptComponent") + @allowUndefined + _interactor?: BaseInteractor + + visual!: SceneObject + + onAwake(): void { + this.defineScriptEvents() + + this.visual = this.createVisual() + + this.circleVisualConfig = { + meshSceneObject: this.visual, + textures: { + translate: requireAsset("./translate.png") as Texture, + scaleTL: requireAsset("./scale-tl.png") as Texture, + scaleTR: requireAsset("./scale-tr.png") as Texture, + disabled: requireAsset("./disabled.png") as Texture, + }, + } + this.manipulateLineConfig = { + points: [new vec3(0, 0, 0), new vec3(0, 100, 0)], + material: requireAsset("./ManipulateLineMaterial.mat") as Material, + startWidth: 0.1, + endWidth: 0.1, + startColor: new vec4(1, 1, 1, 1), + endColor: new vec4(1, 1, 1, 1), + enabled: false, + } + + this.circleVisual = new CircleVisual(this.circleVisualConfig) + + this.manipulateLine = new LineRenderer(this.manipulateLineConfig) + this.manipulateLine.getSceneObject().setParent(this.getSceneObject()) + + this.viewModel = new CursorViewModel( + this.enableCursorHolding, + this.enableFilter, + this.interactor as Interactor, + ) + this.viewModel.onStateChange.add(this.onStateChange) + this.viewModel.onCursorUpdate.add(this.onCursorUpdate) + + if (this._interactor !== undefined) { + this.interactor = this._interactor + } + } + + set interactor(interactor: BaseInteractor) { + validate( + interactor, + "InteractorCursor cannot have an undefined Interactor reference.", + ) + + this._interactor = interactor as BaseInteractor + this.viewModel.setInteractor(interactor) + + this.cursorController.registerCursor(this) + + let handType: HandType | null + switch (interactor.inputType) { + case InteractorInputType.LeftHand: + handType = "left" + break + case InteractorInputType.RightHand: + handType = "right" + break + + default: + return + } + + this.circleVisual.handType = handType + } + + get interactor(): BaseInteractor | null { + return this._interactor ?? null + } + + /** + * Programmatically instantiates the cursor visual + * @returns The SceneObject for the cursor visual + */ + private createVisual(): SceneObject { + const visual = global.scene.createSceneObject("CursorVisual") + visual.setParent(this.getSceneObject()) + + const visualMesh = visual.createComponent("Component.RenderMeshVisual") + visualMesh.mesh = requireAsset("./Plane.mesh") as RenderMesh + visualMesh.mainMaterial = requireAsset("./Cursor.mat") as Material + + return visual + } + + private updateWorldCursor(data: CursorData) { + validate(data.position) + + this.circleVisual.worldPosition = data.position + if (data.interactionStrength !== null) { + this.circleVisual.circleSquishScale = MathUtils.lerp( + DEFAULT_IDLE_SCALE, + DEFAULT_SQUISH_SCALE, + data.interactionStrength, + ) + } else { + this.circleVisual.circleSquishScale = DEFAULT_IDLE_SCALE + } + + this.circleVisual.isTriggering = data.isTriggering + + this.circleVisual.worldScale = vec3.one().uniformScale(data.scale) + } + + /** + * Get the world position of this interactor's cursor visual + * @returns vec3 of the worldPosition + */ + get cursorPosition(): vec3 | null { + return this.viewModel.cursorPosition + } + + /** + * Set the world position of this interactor's cursor visual + * @param position - vec3 of the worldPosition, null to revert to default behavior to follow raycast + */ + set cursorPosition(position: vec3 | null) { + this.viewModel.positionOverride = position + } + + /** + * Set the {@link CursorMode} of the cursor to change the visual + * To return the cursor to its default {@link StateMachine} logic, use {@link CursorMode}.Auto + * @param mode - The new mode of the cursor visual + */ + set cursorMode(mode: CursorMode) { + this.circleVisual.cursorMode = mode + } + + /** + * Set the {@link Texture} of the cursor when using the {@link CursorMode}.Custom mode + * Must explicitly set the {@link CursorMode} to {@link CursorMode}.Custom before the texture appears. + * @param texture - The custom texture (typically cached via requireAsset(.../assetName.png) as Texture) to use + */ + set customTexture(texture: Texture) { + this.circleVisual.customTexture = texture + } + + /** + * Set the render order of the cursor visual. + */ + set renderOrder(renderOrder: number) { + this.circleVisual.renderOrder = renderOrder + } + + private updateManipulateLine(data: ManipulateLineData) { + this.manipulateLine.points = this.getCurvedLinePoints( + data.origin, + data.endPoint, + data.delta, + ) + } + + private defineScriptEvents() { + this.createEvent("OnEnableEvent").bind(() => { + this.onEnable() + }) + + this.createEvent("OnDisableEvent").bind(() => { + this.onDisable() + }) + + this.createEvent("OnDestroyEvent").bind(() => { + this.onDestroy() + }) + } + + /** + * Enable the cursor visual. + */ + private onEnable() { + this.circleVisualEnabled = true + } + + /** + * Disable the cursor visual. + */ + private onDisable() { + this.circleVisualEnabled = false + } + + private onDestroy() { + this.visual.destroy() + } + + /** + * Creates the points of the curved line used for far field manipulation. + * @param start - where the line starts + * @param end - where the line ends + * @param curveOffset - the vector that the line's midpoint will be offset by to create the curve + * @returns an array of points along the curved line created from start to end. + */ + private getCurvedLinePoints( + start: vec3, + end: vec3, + curveOffset: vec3 | null, + ): vec3[] { + let midPoint = vec3.lerp(start, end, LINE_MIDPOINT) + if (curveOffset !== null) { + midPoint = midPoint.add(curveOffset) + } + const points = [] + for (let ratio = 0; ratio <= 1; ratio += 1 / LINE_VERTICES) { + const tangent1 = vec3.lerp(start, midPoint, ratio) + const tangent2 = vec3.lerp(midPoint, end, ratio) + const curve = vec3.lerp(tangent1, tangent2, ratio) + points.push(curve) + } + return points + } + + private checkMultipleInteractorsActive(): boolean { + const interactors = this.interactionManager.getInteractorsByType( + InteractorInputType.All, + ) + + const activeInteractors = interactors.filter((interactor) => { + return interactor.isActive() && interactor.isTargeting() + }) + + return activeInteractors.length > 1 + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/InteractorCursor.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/InteractorCursor.ts.meta new file mode 100644 index 00000000..18978a89 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/InteractorCursor.ts.meta @@ -0,0 +1,45 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 9269b22e-25c9-41f2-adf8-4c557341e25f + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 9269b22e-25c9-41f2-adf8-4c557341e25f + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 200fbd88-9fca-42b8-912c-c98225fdbca1 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _interactor: false + enableCursorHolding: false + enableFilter: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - enableFilter: false + _interactor: ! 00000000-0000-0000-0000-000000000000 + enableCursorHolding: true + ScriptTypes: + - + {} + InputLines: + - // @input bool enableCursorHolding = true + - // @input bool enableFilter + - // @input Component.ScriptComponent _interactor + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMat.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMat.ss_graph new file mode 100644 index 00000000..3da09588 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMat.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15d90b6accc7074c1d01d5e67cb5a9289248633215b2ea578a848381a552303b +size 459580 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMat.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMat.ss_graph.meta new file mode 100644 index 00000000..c23fa880 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMat.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! b4a4847a-aa6c-4fb3-b3e6-d2bf7f550eb2 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! b4a4847a-aa6c-4fb3-b3e6-d2bf7f550eb2 + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMaterial.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMaterial.mat new file mode 100644 index 00000000..9e3c3f82 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMaterial.mat @@ -0,0 +1,93 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 820b696c-e593-4322-a9f8-d4aacc697c23 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Disabled + Properties: + Port_Input1_N014: + typeIdx: 1 + value: 2.000000 + Port_Position1_N066: + typeIdx: 1 + value: 0.200000 + Port_Position1_N070: + typeIdx: 1 + value: 1.000000 + Port_Position1_N073: + typeIdx: 1 + value: 0.300000 + Port_Position1_N077: + typeIdx: 1 + value: 0.700000 + Port_Position2_N073: + typeIdx: 1 + value: 0.700000 + Port_Value0_N077: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.000000, w: 0.000000} + Port_Value2_N067: + typeIdx: 1 + value: 0.000000 + Port_Value2_N077: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.000000, w: 0.000000} + Port_Value3_N040: + typeIdx: 1 + value: 0.000000 + Port_Value3_N060: + typeIdx: 1 + value: 0.000000 + Port_Value_N008: + typeIdx: 2 + value: true + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 77 + endColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + endWidth: + typeIdx: 1 + value: 0.100000 + maxAlpha: + typeIdx: 1 + value: 1.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + startColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + startWidth: + typeIdx: 1 + value: 0.100000 + visualStyle: + typeIdx: 0 + value: 3 + Pass: ! b4a4847a-aa6c-4fb3-b3e6-d2bf7f550eb2 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMaterial.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMaterial.mat.meta new file mode 100644 index 00000000..fc321b41 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/ManipulateLineMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! ef78ad11-68e1-4523-a61f-e5aa54e554c0 + ImporterName: MaterialImporter + PrimaryAsset: ! ef78ad11-68e1-4523-a61f-e5aa54e554c0 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Plane.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Plane.mesh new file mode 100644 index 00000000..861851fc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Plane.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9385db440b20fced91ff6a93efa38d2fb30d0c7ea60377e4b25e346df83838c +size 1450 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Plane.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Plane.mesh.meta new file mode 100644 index 00000000..fbf6a2d3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/Plane.mesh.meta @@ -0,0 +1,29 @@ +- ! + ImporterSettings: ! + ModifiedVertexFormats: + color: UNorm Byte + normal: Float + position: Float + tangent: Float + texture0: Float + ImportedAssetIds: + FileMesh: ! 3f783937-5580-41ea-b408-6cb2d7866d25 + ImporterName: FileMeshImporter + PrimaryAsset: ! 3f783937-5580-41ea-b408-6cb2d7866d25 + PackageType: NotAPackage + AssetDataMap: + FileMesh: ! 00000000-0000-0000-0000-000000000000 + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/disabled.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/disabled.png new file mode 100644 index 00000000..ffb4094c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/disabled.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e0a9ca84b4193da0a4970b29a30c5bf37e6380e6beae3267a025937bb426b7a +size 2491 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/disabled.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/disabled.png.meta new file mode 100644 index 00000000..4394b1e8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/disabled.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! f2ce530f-fa20-4482-9d27-0ee7ef3fb716 + ImporterName: FileTextureImporter + PrimaryAsset: ! f2ce530f-fa20-4482-9d27-0ee7ef3fb716 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! + Level: Medium + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tl.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tl.png new file mode 100644 index 00000000..18d31425 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tl.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db1967179afeea5bd9ee122f48862afe6c4958d198fcb7c0d8007152259891c7 +size 4836 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tl.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tl.png.meta new file mode 100644 index 00000000..075759b9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tl.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 83ac226a-d970-42ee-9efa-1d3f435f82a4 + ImporterName: FileTextureImporter + PrimaryAsset: ! 83ac226a-d970-42ee-9efa-1d3f435f82a4 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! + Level: Medium + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tr.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tr.png new file mode 100644 index 00000000..8fcc3bf0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tr.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a16407f4fb61619cc268b75a3b2d7eb2d87f08f5fe22bcd6f38cfd2ef8ad839 +size 859 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tr.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tr.png.meta new file mode 100644 index 00000000..d7747553 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/scale-tr.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! b1d51e70-570b-454c-8fbc-f882b5d94e38 + ImporterName: FileTextureImporter + PrimaryAsset: ! b1d51e70-570b-454c-8fbc-f882b5d94e38 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! + Level: Medium + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/translate.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/translate.png new file mode 100644 index 00000000..bfe88156 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/translate.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c334d32b2ee20f9136f792d25ba3b54f2bf06ca700cee426c365d6c72f527642 +size 1048 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/translate.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/translate.png.meta new file mode 100644 index 00000000..0e5bca30 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorCursor/translate.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! a45b1ba5-feb4-494a-b6b4-0e710768a4df + ImporterName: FileTextureImporter + PrimaryAsset: ! a45b1ba5-feb4-494a-b6b4-0e710768a4df + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! + Level: Medium + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMat.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMat.ss_graph new file mode 100644 index 00000000..3da09588 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMat.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15d90b6accc7074c1d01d5e67cb5a9289248633215b2ea578a848381a552303b +size 459580 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMat.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMat.ss_graph.meta new file mode 100644 index 00000000..8a2a38b1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMat.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ShaderGraph: ! 9d012abc-f38f-4f1c-88bf-8967fa2d87fe + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 9d012abc-f38f-4f1c-88bf-8967fa2d87fe + PackageType: NotAPackage + AssetDataMap: + ShaderGraph: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMaterial.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMaterial.mat new file mode 100644 index 00000000..7b9cdfd1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMaterial.mat @@ -0,0 +1,93 @@ +- ! + PackagePath: "" + PassesInfo: + - ! c319275e-877b-41fe-9e1a-089a8e753feb +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Disabled + Properties: + Port_Input1_N014: + typeIdx: 1 + value: 2.000000 + Port_Position1_N066: + typeIdx: 1 + value: 0.200000 + Port_Position1_N070: + typeIdx: 1 + value: 1.000000 + Port_Position1_N073: + typeIdx: 1 + value: 0.300000 + Port_Position1_N077: + typeIdx: 1 + value: 0.700000 + Port_Position2_N073: + typeIdx: 1 + value: 0.700000 + Port_Value0_N077: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.000000, w: 0.000000} + Port_Value2_N067: + typeIdx: 1 + value: 0.000000 + Port_Value2_N077: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 0.000000, w: 0.000000} + Port_Value3_N040: + typeIdx: 1 + value: 0.000000 + Port_Value3_N060: + typeIdx: 1 + value: 0.000000 + Port_Value_N008: + typeIdx: 2 + value: true + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 77 + endColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + endWidth: + typeIdx: 1 + value: 0.100000 + maxAlpha: + typeIdx: 1 + value: 1.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + startColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + startWidth: + typeIdx: 1 + value: 0.100000 + visualStyle: + typeIdx: 0 + value: 3 + Pass: ! 9d012abc-f38f-4f1c-88bf-8967fa2d87fe + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMaterial.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMaterial.mat.meta new file mode 100644 index 00000000..5b376baa --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 9fc7f9a1-6d20-4e6a-9c4a-268d15228b42 + ImporterName: MaterialImporter + PrimaryAsset: ! 9fc7f9a1-6d20-4e6a-9c4a-268d15228b42 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineRenderer.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineRenderer.ts new file mode 100644 index 00000000..bd1484eb --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineRenderer.ts @@ -0,0 +1,42 @@ +import LineRenderer from "../../../Utils/views/LineRenderer/LineRenderer" + +export enum VisualStyle { + Full = 0, + Split = 1, + FadedEnd = 2, + FadedStart = 3, +} + +/** + * InteractorLineRenderer is a modified LineRenderer meant for use with Interactors. + * It uses a special shader material in order to display the line gradients and visuals shown in the spec. + */ +export default class InteractorLineRenderer extends LineRenderer { + /** + * @returns visual gradient style of the line + */ + get visualStyle(): VisualStyle { + return this.material.mainPass.visualStyle as VisualStyle + } + + /** + * Set the visual gradient style of the line + */ + set visualStyle(style: VisualStyle) { + this.material.mainPass.visualStyle = style + } + + /** + * @returns maximum opacity level of the line + */ + get opacity(): number { + return this.material.mainPass.maxAlpha as number + } + + /** + * Set the maximum opacity level of the line + */ + set opacity(opacity: number) { + this.material.mainPass.maxAlpha = opacity + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineRenderer.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineRenderer.ts.meta new file mode 100644 index 00000000..e099671f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineRenderer.ts.meta @@ -0,0 +1,40 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 48778cd1-cf1d-4ee4-bca0-8fe118f56188 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 48778cd1-cf1d-4ee4-bca0-8fe118f56188 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! 6b134150-15a6-4728-b105-5597676deed9 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineVisual.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineVisual.ts new file mode 100644 index 00000000..be46a9c0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineVisual.ts @@ -0,0 +1,302 @@ +import { + Interactor, + InteractorTriggerType, + TargetingMode, +} from "../../../Core/Interactor/Interactor" +import InteractorLineRenderer, {VisualStyle} from "./InteractorLineRenderer" +import animate, {CancelSet} from "../../../Utils/animate" +import {withAlpha, withoutAlpha} from "../../../Utils/color" + +import BaseInteractor from "../../../Core/Interactor/BaseInteractor" +import {InteractionManager} from "../../../Core/InteractionManager/InteractionManager" +import {ViewConfig} from "../../../Utils/views/View" +import WorldCameraFinderProvider from "../../../Providers/CameraProvider/WorldCameraFinderProvider" + +const FADE_DURATION_SECS = 0.21 + +const TAG = "InteractorLineVisual" + +export type InteractorLineConfig = ViewConfig & { + interactor: Interactor + material: Material + visualStyle: VisualStyle + beginColor: vec3 + endColor: vec3 + width: number + defaultLength?: number + stickyTrigger?: boolean +} + +/** + * This class provides visual representation for interactor lines. It allows customization of the line's material, colors, width, length, and visual style. The class integrates with the InteractionManager and WorldCameraFinderProvider to manage interactions and camera positioning. + */ +@component +export class InteractorLineVisual extends BaseScriptComponent { + private camera = WorldCameraFinderProvider.getInstance() + private interactionManager: InteractionManager = + InteractionManager.getInstance() + + @input + private lineMaterial!: Material + + @input("vec3", "{1, 1, 0}") + @widget(new ColorWidget()) + public _beginColor: vec3 = new vec3(1, 1, 0) + + @input("vec3", "{1, 1, 0}") + @widget(new ColorWidget()) + public _endColor: vec3 = new vec3(1, 1, 0) + + @input + private lineWidth: number = 0.5 + + @input + private lineLength: number = 160 + + @input + @widget( + new ComboBoxWidget() + .addItem("Full", 0) + .addItem("Split", 1) + .addItem("FadedEnd", 2), + ) + public lineStyle: number = 2 + + @input + private shouldStick: boolean = true + + @input("Component.ScriptComponent") + @allowUndefined + _interactor?: BaseInteractor + + private _enabled = true + private isShown = false + private animationCancelSet = new CancelSet() + private defaultScale = new vec3(1, 1, 1) + private maxLength: number = 500 + private line!: InteractorLineRenderer + private transform!: Transform + + /** + * Sets whether the visual can be shown, so developers can show/hide the ray in certain parts of their lens. + */ + set isEnabled(isEnabled: boolean) { + this._enabled = isEnabled + } + + /** + * Gets whether the visual is active (can be shown if hand is in frame and we're in far field targeting mode). + */ + get isEnabled(): boolean { + return this._enabled + } + + /** + * Sets how the visuals for the line drawer should be shown. + */ + set visualStyle(style: VisualStyle) { + this.line.visualStyle = style + } + + /** + * Gets the current visual style. + */ + get visualStyle(): VisualStyle { + return this.line.visualStyle + } + + /** + * Sets the color of the visual from the start. + */ + set beginColor(color: vec3) { + this.line.startColor = withAlpha(color, 1) + } + + /** + * Gets the color of the visual from the start. + */ + get beginColor(): vec3 { + return withoutAlpha(this.line.startColor) + } + + /** + * Sets the color of the visual from the end. + */ + set endColor(color: vec3) { + this.line.endColor = withAlpha(color, 1) + } + + /** + * Gets the color of the visual from the end. + */ + get endColor(): vec3 { + return withoutAlpha(this.line.endColor) + } + + onAwake() { + this.transform = this.sceneObject.getTransform() + this.defaultScale = this.transform.getWorldScale() + + this.line = new InteractorLineRenderer({ + material: this.lineMaterial, + points: [vec3.zero(), vec3.up().uniformScale(this.maxLength)], + startColor: withAlpha(this._beginColor, 1), + endColor: withAlpha(this._endColor, 1), + startWidth: this.lineWidth, + endWidth: this.lineWidth, + }) + + this.line.getSceneObject().setParent(this.sceneObject) + + if (this.lineStyle !== undefined) { + this.line.visualStyle = this.lineStyle + } + + if (this.lineLength && this.lineLength > 0) { + this.defaultScale = new vec3(1, this.lineLength / this.maxLength, 1) + } + + this.showVisual(false) + + this.defineScriptEvents() + } + + private defineScriptEvents() { + this.createEvent("OnEnableEvent").bind(() => { + this.isEnabled = true + }) + + this.createEvent("OnDisableEvent").bind(() => { + this.isEnabled = false + }) + + this.createEvent("UpdateEvent").bind(() => { + this.update() + }) + + this.createEvent("OnDestroyEvent").bind(() => { + this.onDestroy() + }) + } + + private showVisual(isShown: boolean) { + if (this.isShown === isShown) { + return + } + + this.isShown = isShown + + this.animationCancelSet() + animate({ + cancelSet: this.animationCancelSet, + duration: FADE_DURATION_SECS, + easing: "ease-out-cubic", + update: (t) => { + this.line.opacity = isShown ? t : 1 - t + }, + }) + } + + private rotationFromOrthogonal(right: vec3, up: vec3, fwd: vec3): quat { + const vec3to4 = (v3: vec3) => new vec4(v3.x, v3.y, v3.z, 0) + const rotationMatrix = new mat4() + rotationMatrix.column0 = vec3to4(right) + rotationMatrix.column1 = vec3to4(up) + rotationMatrix.column2 = vec3to4(fwd) + return quat.fromEulerVec(rotationMatrix.extractEulerAngles()) + } + + /** + * Calculates the world scale of the line visual, if distance is valid (greater than the minimum distance to show the visual). + * If an item is targeted directly and the distance is valid, returns a vec3 representing the ray scaled to the distance to the target. + * If an item is targeted indirectly, returns the default scale so as not to throw the user off. + * Otherwise, returns default scale if no item is targeted, or null if the distance is not valid. + */ + private getScale(): vec3 | null { + const distance = this.interactor?.distanceToTarget ?? null + if (distance === null) { + return this.defaultScale + } + + return this.interactor?.activeTargetingMode === TargetingMode.Direct || + this.shouldStick + ? new vec3(1, distance / this.maxLength, 1) + : this.defaultScale + } + + /** + * Updates the line visual each frame + */ + update() { + if ( + this.interactor === null || + !this.isEnabled || + !this.interactor.enabled || + this.interactor.activeTargetingMode !== TargetingMode.Indirect || + !this.interactor.isTargeting() + ) { + this.showVisual(false) + return + } + + this.updateActiveCursor() + } + + /** + * Moves and rotates cursor based on locus and direction updates + * Scales cursor length to nearest interactable if it is being hit + */ + private updateActiveCursor(): void { + if (!this.interactor) { + return + } + + // Hide ray if the scale is below the minimum distance, or if locus/direction aren't provided. + const distanceScale = this.getScale() + const locus: vec3 | null = this.interactor.startPoint + let direction: vec3 | null = this.interactor.direction + + if (distanceScale === null || locus === null || direction === null) { + this.showVisual(false) + return + } + + this.transform.setWorldPosition(locus) + this.transform.setWorldScale(distanceScale) + + if ( + this.shouldStick && + (InteractorTriggerType.Select & this.interactor.currentTrigger) !== 0 + ) { + const target = this.interactor.currentInteractable + if (target) { + const targetPos: vec3 = target.sceneObject + .getTransform() + .getWorldPosition() + direction = targetPos.sub(locus).normalize() + } + } + // Create rotation from orthogonal vectors & set world rotation + const locusToCamera = this.camera.getWorldPosition().sub(locus).normalize() + const newRight = direction.cross(locusToCamera).normalize() + const newForward = newRight.cross(direction) + + this.transform.setWorldRotation( + this.rotationFromOrthogonal(newRight, direction, newForward), + ) + + this.showVisual(true) + } + + /** + * Destroys cursor & line renderer when the custom component is destroyed. + */ + onDestroy(): void { + this.line.destroy() + this.sceneObject.destroy() + } + + private get interactor(): Interactor | null { + return this._interactor ?? null + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineVisual.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineVisual.ts.meta new file mode 100644 index 00000000..9d533d1a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/Interaction/InteractorLineVisual/InteractorLineVisual.ts.meta @@ -0,0 +1,60 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! a6105daf-0f11-45a0-8684-102e44534dbb + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! a6105daf-0f11-45a0-8684-102e44534dbb + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! e5dc66fb-d375-465a-a8b2-83f0853cf4d8 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + - // @input Asset.Material lineMaterial + - '// @input vec3 _beginColor = "{1, 1, 0}" {"widget":"color"}' + - '// @input vec3 _endColor = "{1, 1, 0}" {"widget":"color"}' + - // @input float lineWidth = 0.5 + - // @input float lineLength = 160 + - '// @input float lineStyle = 2 {"widget":"combobox", "values":[{"label":"Full", "value":0}, {"label":"Split", "value":1}, {"label":"FadedEnd", "value":2}]}' + - // @input bool shouldStick = true + - // @input Component.ScriptComponent _interactor + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _beginColor: false + _endColor: false + _interactor: false + lineLength: false + lineMaterial: false + lineStyle: false + lineWidth: false + shouldStick: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - lineMaterial: ! 00000000-0000-0000-0000-000000000000 + lineWidth: 0.500000 + lineLength: ! 160.000000 + lineStyle: ! 2.000000 + shouldStick: true + _beginColor: ! {x: 1.000000, y: 1.000000, z: 0.000000} + _endColor: ! {x: 1.000000, y: 1.000000, z: 0.000000} + _interactor: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/ContainerFrame.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/ContainerFrame.ts new file mode 100644 index 00000000..fe29e756 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/ContainerFrame.ts @@ -0,0 +1,1740 @@ +import animate, {AnimationManager, CancelSet} from "../../../Utils/animate" +import Event, {PublicApi, unsubscribe} from "../../../Utils/Event" +import {FrameInputHandler, FrameInputOptions} from "./modules/FrameInputHandler" + +import {Billboard} from "../../../Components/Interaction/Billboard/Billboard" +import {Interactable} from "../../../Components/Interaction/Interactable/Interactable" +import {InteractableManipulation} from "../../../Components/Interaction/InteractableManipulation/InteractableManipulation" +import {InteractionPlane} from "../../../Components/Interaction/InteractionPlane/InteractionPlane" +import {Interactor} from "../../../Core/Interactor/Interactor" +import {InteractorEvent} from "../../../Core/Interactor/InteractorEvent" +import WorldCameraFinderProvider from "../../../Providers/CameraProvider/WorldCameraFinderProvider" +import {CursorControllerProvider} from "../../../Providers/CursorControllerProvider/CursorControllerProvider" +import {lerp} from "../../../Utils/mathUtils" +import NativeLogger from "../../../Utils/NativeLogger" +import {validate} from "../../../Utils/validate" +import {CursorHandler} from "./modules/CursorHandler" +import {HoverBehavior} from "./modules/HoverBehavior" +import {LabeledPinchButton} from "./modules/LabeledPinchButton" +import {SmoothFollow} from "./modules/SmoothFollow" +import {SnappableBehavior} from "./modules/SnappableBehavior" + +const log = new NativeLogger("ContainerFrame") + +export type InputState = { + isHovered: boolean + rawHovered: boolean + isPinching: boolean + position: vec3 + drag: vec3 + innerInteractableActive: boolean +} + +export type ContainerFrameConfig = { + target: SceneObject + parent: SceneObject +} + +const OPACITY_TWEEN_DURATION = 0.2 +const SQUEEZE_TWEEN_DURATION = 0.4 + +const DEFAULT_BACKING_ALPHA = 1 +const CAPTURE_BACKING_ALPHA = 0.1 + +/* + * use forced depth for now + * only 2d content + */ +const scaleZ = 1 + +/* + * ratio for scaling between world space and margin space + * testing different values here, leaving for reference during continued visdev + * const scaleFactor = 90 + * const scaleFactor = 70 + */ +const scaleFactor = 50 +// frame depth factor +const zScaleAdjuster = 15 + +const CURSOR_HIGHLIGHT_ANIMATION_DURATION = 0.15 + +/** + * History of this magic number: + * I added the frame mesh to the scene with a basic material + * And overlayed it on a Unit Plane + * I switched the camera to orthographic + * And scaled up the Frame Mesh until it's edges just touched the edges of the unit plane + * That was at scale 8.24 + * So without any stretching, the mesh is 1 / 8.24 + * 1 / 8.24 = 0.1213592233 + * And since we set the base scale of the mesh to a constant and then stretch with vertex shader + * I multiply that base scale by this number above, to get the size of the frame that isn't stretched + * And subtract that from the amount we need to stretch + * ヽ(`Д´)⊃━☆゚. * ・ 。゚, + */ +const magicScalar = 0.1213592233 + +/** + * the base scale of the frame + */ +const scaleFactorVector = new vec3( + scaleFactor + magicScalar, + scaleFactor + magicScalar, + scaleZ * zScaleAdjuster +) + +// the current system UI button is not unit sized +// it's closer to 2.35 in X and Y +const buttonMagicNumber = 0.4474272931 +// constant size of button +const defaultButtonSize = 3 * buttonMagicNumber + +const BUTTON_CORNER_OFFSET = 1 / scaleFactor + +const NEAR_FIELD_INTERACTION_ZONE_DISTANCE_CM = 30 + +/** + * This class represents a container frame that can hold and manage UI elements. It provides settings for auto show/hide, inner size, border, constant padding, and scaling. The class uses prefabs for the frame and labeled buttons, and textures for icons. + */ +@component +export class ContainerFrame extends BaseScriptComponent { + private framePrefab: ObjectPrefab = requireAsset( + "./Prefabs/FramePrefab.prefab" + ) as ObjectPrefab + private labeledButtonPrefab = requireAsset( + "./Prefabs/container-button.prefab" + ) as ObjectPrefab + private closeIcon: Texture = requireAsset( + "./Textures/close-icon-1.png" + ) as Texture + private followIcon: Texture = requireAsset( + "./Textures/follow-white.png" + ) as Texture + private unfollowIcon: Texture = requireAsset( + "./Textures/follow-black.png" + ) as Texture + + @ui.group_start("Frame Settings") + @input + autoShowHide: boolean = true + @input("vec2", "{32,32}") + innerSize: vec2 = new vec2(32, 32) + @input + border: number = 7 + @input("vec2", "{0,0}") + @hint("In world units (cm), stays constant through scaling") + constantPadding: vec2 = new vec2(0, 0) + @input + private allowScaling: boolean = true + @input + autoScaleContent: boolean = true + @input + private isContentInteractable: boolean = false + @input + allowTranslation: boolean = true + @ui.group_end + @ui.label("") + @ui.group_start("Min/Max Size") + @input("vec2", "{10,10}") + @hint("In world units (cm)") + private minimumSize: vec2 = new vec2(10, 10) + @input("vec2", "{150,150}") + @hint("In world units (cm)") + private maximumSize: vec2 = new vec2(150, 150) + @ui.group_end + @ui.label("") + @ui.group_start("Billboarding") + @input + private useBillboarding: boolean = false + @input + @showIf("useBillboarding") + private xOnTranslate: boolean = false + @input + @showIf("xOnTranslate") + private xAlways: boolean = false + @input + @showIf("useBillboarding") + private yOnTranslate: boolean = false + @input + @showIf("yOnTranslate") + private yAlways: boolean = false + @ui.group_end + @ui.label("") + @ui.group_start("Snapping") + @input + @hint("Use Snapping Behaviors") + private useSnapping: boolean = false + @input + @showIf("useSnapping") + @hint("Container to Container Snapping") + private itemSnapping: boolean = false + @input + @showIf("useSnapping") + @hint("Container to World Snapping") + private worldSnapping: boolean = false + @ui.group_end + @ui.label("") + @ui.group_start("Follow Behavior") + @input + private showFollowButton: boolean = false + @input + @label("Front Follow Behavior") + @showIf("showFollowButton") + private useFOVFollow: boolean = false + @input + @showIf("useFOVFollow") + isFollowing: boolean = false + @ui.group_end + @ui.label("") + @ui.group_start("Close Button") + @input + private showCloseButton: boolean = true + @ui.group_end + @ui.group_start("Interaction Plane") + @input + private _enableInteractionPlane: boolean = false + @ui.group_end + @ui.separator + private squeezeAmount = this.border * 0.15 + + private frame!: SceneObject + material!: Material + private frameTransform!: Transform + private target!: SceneObject + private targetTransform!: Transform + private targetScaleCache!: vec2 + private originalScale!: vec2 + scalingSizeStart: vec2 | null = null + private parent!: SceneObject + parentTransform!: Transform + private collider: ColliderComponent | null = null + private colliderShape: BoxShape | null = null + private colliderTransform: Transform | null = null + + closeButton!: LabeledPinchButton + /** + * event for callback on close button trigger + */ + followButton!: LabeledPinchButton + /** + * event for callback on follow button toggle on + */ + + private buttonSize: number = defaultButtonSize + + private buttonScaleVector: vec3 = vec3 + .one() + .uniformScale(defaultButtonSize) + .div(scaleFactorVector) + + private cursorHandler!: CursorHandler + + private animationManager: AnimationManager = new AnimationManager() + + /** + * event handler for frame scaling update + */ + private onScalingUpdate: Event = new Event() + /** + * event handler for frame scaling started + */ + onScalingStart: Event = new Event() + /** + * event handler for frame scaling ended + */ + onScalingEnd: Event = new Event() + /** + * public api for adding functions to the onScalingUpdate event handler + */ + onScalingUpdateEvent = this.onScalingUpdate.publicApi() + /** + * public api for adding functions to the onScalingStart event handler + */ + onScalingStartEvent = this.onScalingStart.publicApi() + /** + * public api for adding functions to the onScalingEnd event handler + */ + onScalingEndEvent = this.onScalingEnd.publicApi() + + private onTranslationStartEvent = new Event() + /** + * public api for adding functions to the onTranslationStartEvent event handler + */ + onTranslationStart = this.onTranslationStartEvent.publicApi() + + private onTranslationEndEvent = new Event() + /** + * public api for adding functions to the onTranslationEndEvent event handler + */ + onTranslationEnd = this.onTranslationEndEvent.publicApi() + + private onHoverEnterInnerInteractableEvent = new Event() + onHoverEnterInnerInteractable = + this.onHoverEnterInnerInteractableEvent.publicApi() + + private onHoverExitInnerInteractableEvent = new Event() + onHoverExitInnerInteractable = + this.onHoverExitInnerInteractableEvent.publicApi() + + forceTranslate: boolean = false + + private inputState: InputState = { + isHovered: false, + rawHovered: false, + isPinching: false, + position: vec3.zero(), + drag: vec3.zero(), + innerInteractableActive: false, + } + + private _opacity: number = 1 + private opacityCancel: CancelSet = new CancelSet() + + /** + * boolean tracking visibility of frame + */ + private _isVisible: boolean = true + + private set isVisible(isVisible: boolean) { + this._isVisible = isVisible + } + + get isVisible() { + return this._isVisible + } + + private scalingLastFrame: boolean = false + private translatingLastFrame: boolean = false + + private onMovingShrinkFactor: number = 0 + private squeezeCancel: CancelSet = new CancelSet() + + private translateMode: number = 0 + private translateModeCancel: CancelSet = new CancelSet() + + private interactable!: Interactable + private manipulate!: InteractableManipulation + + private allInteractables: Interactable[] = [] + + billboardComponent: Billboard | null = null + private interactableCached: Interactable | null = null + private manipulateCached: InteractableManipulation | null = null + + // Parent Hover state of frame + private parentCollider!: ColliderComponent + private parentInteractable!: Interactable + + /** + * reference to HoverBehavior on parent element + */ + parentHoverBehavior!: HoverBehavior + + private renderMeshVisual: RenderMeshVisual | null = null + + private inputHandlerOptions!: FrameInputOptions + + private inputHandler!: FrameInputHandler + + private snapBehavior: SnappableBehavior | null = null + + currentInteractor: Interactor | null = null + + /** + * public api for adding functions to the onSnappingComplete event handler + */ + onSnappingComplete: PublicApi | null = null + + /** + * reference to world camera + */ + worldCamera: Camera = WorldCameraFinderProvider.getInstance().getComponent() + + /** + * reference to frame's default front follow behavior + */ + smoothFollow: SmoothFollow | null = null + + private currentBorder: number = this.border + + private destroyed: boolean = false + + private hoveringInnerInteractableLast: boolean = false + private interactableHoverOpacity: number = 0.34 + + private backingAlphaCache: number = DEFAULT_BACKING_ALPHA + + private hoveringContentInteractable: boolean = false + private hoveringContentInteractableLast: boolean = false + private cursorHighlightCancel = new CancelSet() + + private forcePreserveScale: boolean = false + + private lastConstantPadding: vec2 = this.constantPadding.uniformScale(1) + + // tweakable for frustum optimizations + private frustumBuffer: number = 0 + + private unSubscribeList: unsubscribe[] = [] + + private interactionPlane: InteractionPlane + + onAwake() { + // frame + this.frame = this.framePrefab.instantiate(null) + this.frameTransform = this.frame.getTransform() + + this.targetScaleCache = new vec2(this.innerSize.x, this.innerSize.y) + this.originalScale = new vec2(this.innerSize.x, this.innerSize.y) + // parent + this.parent = this.getSceneObject() + this.parentTransform = this.parent.getTransform() + // target + this.target = global.scene.createSceneObject("ContainerInner") + this.targetTransform = this.target.getTransform() + this.parent.children.forEach((child: SceneObject) => { + child.setParent(this.target) + }) + this.target.setParent(this.parent) + + // collider + this.collider = this.frame.getComponent("Physics.ColliderComponent") + this.colliderShape = this.collider.shape as BoxShape + this.colliderTransform = this.collider.getSceneObject().getTransform() + // buttons + this.closeButton = new LabeledPinchButton({ + prefab: this.labeledButtonPrefab, + parent: this.frame, + labels: [this.closeIcon], + }) + + this.closeButton.onTrigger.add(() => { + this.inputState.isPinching = false + }) + + this.followButton = new LabeledPinchButton({ + prefab: this.labeledButtonPrefab, + parent: this.frame, + labels: [this.followIcon, this.unfollowIcon], + toggle: true, + triggerColor: new vec4(0.8, 0.8, 0.8, 1), + }) + this.followButton.setIconScale(new vec2(1.85, 1.85)) + + this.followButton.onTrigger.add(() => { + this.inputState.isPinching = false + this.setIsFollowing(!this.isFollowing) + }) + + // cursor + this.cursorHandler = new CursorHandler({ + target: this.target, + frame: this, + margin: this.border, + }) + + // SIK Components + this.interactable = this.frame.createComponent(Interactable.getTypeName()) + + /* + * indirect targeting only with one interactor + * prevents direct manipulation controls which are undesired for frame + */ + this.interactable.targetingMode = 2 + this.interactable.allowMultipleInteractors = false + + this.manipulate = this.frame.createComponent( + InteractableManipulation.getTypeName() + ) + + this.billboardComponent = this.useBillboarding + ? this.parent.createComponent(Billboard.getTypeName()) + : null + + if (this.billboardComponent !== null) { + this.billboardComponent.xAxisEnabled = false || this.xAlways + this.billboardComponent.yAxisEnabled = false || this.yAlways + } + + // material + this.renderMeshVisual = this.frame.getComponent( + "Component.RenderMeshVisual" + ) + this.material = this.renderMeshVisual.mainMaterial.clone() + this.renderMeshVisual.mainMaterial = this.material + + this.material.mainPass.frustumCullMode = FrustumCullMode.UserDefinedAABB + + // input handler + this.inputHandlerOptions = { + frame: this, + manipulate: this.manipulate, + target: this.target, + parentTransform: this.parentTransform, + cursorHandler: this.cursorHandler, + isInteractable: this.isContentInteractable, + scaleSpeed: undefined, + allowScaling: this.allowScaling, + minimumSize: this.minimumSize, + maximumSize: this.maximumSize, + } + + this.inputHandler = new FrameInputHandler(this.inputHandlerOptions) + + // Use the FrameInputHandler as the authoritative source on when translation starts + this.inputHandler.onTranslationStart.add(() => { + this.onTranslationStartEvent.invoke() + this.smoothFollow?.startDragging() + }) + this.inputHandler.onTranslationEnd.add(() => { + this.onTranslationEndEvent.invoke() + this.smoothFollow?.finishDragging() + }) + + // button logic + this.enableCloseButton(this.showCloseButton) + this.enableFollowButton(this.showFollowButton) + + // following logic + this.setIsFollowing(this.isFollowing) + + this.manipulate.setManipulateRoot(this.parentTransform) + this.manipulate.setCanScale(false) + + this.parentTransform.setWorldPosition( + this.targetTransform.getWorldPosition() + ) + this.parentTransform.setWorldRotation( + this.targetTransform.getWorldRotation() + ) + this.frame.setParentPreserveWorldTransform(this.parent) + + this.frameTransform.setLocalPosition(vec3.zero()) + this.frameTransform.setLocalRotation(quat.quatIdentity()) + this.frameTransform.setWorldScale(scaleFactorVector) + + this.targetTransform.setLocalPosition(new vec3(0, 0, 0.5)) + this.targetTransform.setLocalRotation(quat.quatIdentity()) + + this.opacity = this.material.mainPass.opacity as number + this.scaleFrame() + + // We need a collider or one is created. We don't actually use it for anything + this.parentCollider = this.parent.createComponent( + "Physics.ColliderComponent" + ) + const shape = Shape.createBoxShape() + shape.size = new vec3(0.01, 0.01, 0.01) + this.parentCollider.shape = shape + + this.parentInteractable = this.parent.createComponent( + Interactable.getTypeName() + ) + this.parentHoverBehavior = new HoverBehavior(this.parentInteractable) + + this.unSubscribeList.push( + this.parentHoverBehavior.onHoverStart.add((e: InteractorEvent) => { + this.cursorHandler.setCursor( + CursorControllerProvider.getInstance().getCursorByInteractor( + e.interactor + ) + ) + if (this.autoShowHide) this.showVisual() + if (this.material.mainPass.isHovered === 0) { + this.showCursorHighlight() + } + this.inputState.isHovered = true + this.inputState.rawHovered = true + }) + ) + + this.unSubscribeList.push( + this.parentHoverBehavior.onHoverUpdate.add((e: InteractorEvent) => { + const targetObject = e?.target.sceneObject + + this.updateCursorHighlightPosition(e) + + let targetParent: SceneObject | null = targetObject + let hoveringInteractable = false + + while ( + targetParent !== null && + !targetParent.isSame(this.sceneObject) + ) { + if (targetObject === this.target || targetParent === this.target) { + hoveringInteractable = true + break + } + targetParent = isNull(targetParent) ? null : targetParent.getParent() + } + + // hovering over interactable container content ONLY + if (hoveringInteractable) { + if (!this.hoveringContentInteractableLast) { + this.hideCursorHighlight() + } + } else { + if (this.hoveringContentInteractableLast) { + this.showCursorHighlight() + } + } + this.hoveringContentInteractableLast = hoveringInteractable + + // hover over interactable area ( non border container ) OR interactable container content + if ( + hoveringInteractable || + this.inputHandler.state.hoveringInteractable + ) { + this.inputState.innerInteractableActive = true + } else { + this.inputState.innerInteractableActive = false + } + }) + ) + + this.unSubscribeList.push( + this.parentHoverBehavior.onHoverEnd.add(() => { + if (this.autoShowHide) this.hideVisual() + if (this.material.mainPass.isHovered > 0) { + this.hideCursorHighlight() + } + this.inputState.isHovered = false + this.inputState.rawHovered = false + this.inputState.innerInteractableActive = false + }) + ) + + this.unSubscribeList.push( + this.interactable.onHoverUpdate.add((event: InteractorEvent) => { + if (event.interactor.targetHitInfo) { + this.updateCursorHighlightPosition(event) + + if (event.target === this.interactable) + this.inputHandler.lastHovered = true + } + }) + ) + + let dragStart = vec3.zero() + + this.unSubscribeList.push( + this.interactable.onTriggerStart((e: InteractorEvent) => { + const targetObject = e?.target.sceneObject + let targetParent: SceneObject | null = targetObject + validate(e.interactor.planecastPoint) + dragStart = this.parentTransform + .getInvertedWorldTransform() + .multiplyPoint(e.interactor.planecastPoint) + + while ( + targetParent !== null && + !targetParent.isSame(this.sceneObject) + ) { + if ( + targetObject === this.target || + targetObject === this.frame || + targetParent === this.target + ) { + this.inputState.isPinching = true + this.currentInteractor = e.interactor + } + if (targetObject === this.target || targetParent === this.target) { + break + } + targetParent = targetParent?.getParent() + } + }) + ) + + this.unSubscribeList.push( + this.interactable.onTriggerUpdate((event: InteractorEvent) => { + if (event.interactor.targetHitInfo && this.inputHandler.state.scaling) { + validate(event.interactor.planecastPoint) + validate(this.scalingSizeStart) + const dragPos = this.parentTransform + .getInvertedWorldTransform() + .multiplyPoint(event.interactor.planecastPoint) + const dragSign = new vec3( + Math.sign(dragStart.x), + Math.sign(dragStart.y), + Math.sign(dragStart.z) + ) + const dragDeltaTemp = dragPos.sub(dragStart).mult(dragSign) + const dragDelta = new vec2(dragDeltaTemp.x, dragDeltaTemp.y) + const dragScaleVec = dragDelta.div( + this.scalingSizeStart.uniformScale(0.5) + ) + const dragScale = Math.max(dragScaleVec.x, dragScaleVec.y) + const newInnerSize = this.scalingSizeStart.uniformScale(1 + dragScale) + + if ( + newInnerSize.x > this.minimumSize.x && + newInnerSize.y > this.minimumSize.y && + newInnerSize.x < this.maximumSize.x && + newInnerSize.y < this.maximumSize.y + ) { + this.innerSize = newInnerSize + this.interactionPlane.planeSize = this.totalInnerSize.add( + vec2.one().uniformScale(this.border * 2) + ) + } + } + }) + ) + + this.unSubscribeList.push( + this.interactable.onTriggerEnd(() => { + this.inputState.isPinching = false + this.currentInteractor = null + }) + ) + + this.unSubscribeList.push( + this.interactable.onTriggerCanceled(() => { + this.inputState.isPinching = false + this.currentInteractor = null + }) + ) + + if (this.useSnapping) { + this.createSnappableBehavior() + } + + if (this.useFOVFollow) { + this.setUseFollow(true) + } + + this.allInteractables.push(this.interactable) + this.allInteractables.push(this.parentInteractable) + const closeButton = this.closeButton.getInteractable() + if (closeButton) { + this.allInteractables.push(closeButton) + } + const followButton = this.followButton.getInteractable() + if (followButton) { + this.allInteractables.push(followButton) + } + + // start hidden + if (this.autoShowHide) { + this.hideVisual() + } else { + this._opacity = 0 + this.showVisual() + } + + // handle scaling affordances + this.setAllowScaling(this.allowScaling) + + this.createEvent("OnDestroyEvent").bind(this.onDestroy) + + // hide cursorHighlight on start + this.material.mainPass.isHovered = 0 + this.backingAlpha = this.material.mainPass.backingAlpha + + this.interactionPlane = this.sceneObject.createComponent( + InteractionPlane.getTypeName() + ) + this.interactionPlane.planeSize = this.totalInnerSize.add( + vec2.one().uniformScale(this.border * 2) + ) + this.interactionPlane.proximityDistance = + NEAR_FIELD_INTERACTION_ZONE_DISTANCE_CM + + this.interactionPlane.enabled = this.enableInteractionPlane + + this.createEvent("LateUpdateEvent").bind(this.lateUpdate) + + this.update() + } + + set enableInteractionPlane(enabled: boolean) { + this.interactionPlane.enabled = enabled + this._enableInteractionPlane = enabled + } + + get enableInteractionPlane(): boolean { + return this._enableInteractionPlane + } + + private updateCursorHighlightPosition = (e: InteractorEvent) => { + validate(this.colliderShape) + validate(this.colliderTransform) + + if (e.interactor.targetHitInfo) { + const hitPosition = e.interactor.targetHitInfo?.hit.position + const normalizer = vec3.one().div(this.colliderShape.size) + this.inputState.position = this.colliderTransform + .getInvertedWorldTransform() + .multiplyPoint(hitPosition) + .mult(normalizer) + } + } + + private showCursorHighlight = () => { + if (this.cursorHighlightCancel) this.cursorHighlightCancel.cancel() + const startingHighlight = this.material.mainPass.isHovered + animate({ + duration: CURSOR_HIGHLIGHT_ANIMATION_DURATION * (1 - startingHighlight), + cancelSet: this.cursorHighlightCancel, + update: (t) => { + this.material.mainPass.isHovered = t + }, + }) + } + + private hideCursorHighlight = () => { + if (this.cursorHighlightCancel) this.cursorHighlightCancel.cancel() + const startingHighlight = this.material.mainPass.isHovered + animate({ + duration: CURSOR_HIGHLIGHT_ANIMATION_DURATION * startingHighlight, + cancelSet: this.cursorHighlightCancel, + update: (t) => { + this.material.mainPass.isHovered = + startingHighlight - t * startingHighlight + }, + }) + } + + /** + * set diameter of buttons in centimeters + * @param size + */ + + setButtonScale = (size: number) => { + this.buttonSize = size * buttonMagicNumber + this.buttonScaleVector = vec3 + .one() + .uniformScale(this.buttonSize) + .div(scaleFactorVector) + this.scaleAndPositionButtons() + } + + private update = () => { + /// if in capture getDeltaTime returns 0 + if (getDeltaTime() === 0) { + // lighten background if in capture + if (this.backingAlpha !== CAPTURE_BACKING_ALPHA) { + // set directly to not update backingAlphaCache + this.material.mainPass.backingAlpha = CAPTURE_BACKING_ALPHA + } + } else { + //not in capture + if (this.backingAlpha !== this.backingAlphaCache) { + // reset to stored value + this.backingAlpha = this.backingAlphaCache + } + } + + // confirm not destroyed before looping more + if (this.destroyed) { + // if destroyed return will stop looping as update requests itself + return + } + + this.inputHandler.update(this.inputState) + + // only billboard on translate + if (this.inputHandler.state.translating) { + if (this.billboardComponent !== null) { + this.billboardComponent.xAxisEnabled = + (this.xOnTranslate && + (this.allowTranslation || this.forceTranslate)) || + this.xAlways + this.billboardComponent.yAxisEnabled = + (this.yOnTranslate && + (this.allowTranslation || this.forceTranslate)) || + this.yAlways + } + if (!this.translatingLastFrame) { + // just started translating + const currentSqueeze = this.onMovingShrinkFactor + this.tweenMarginSqueeze(currentSqueeze, this.squeezeAmount) + const currentTranslateMode = this.translateMode + this.tweenTranslateMode(currentTranslateMode, 1) + } + this.translatingLastFrame = true + } else { + if ( + this.billboardComponent !== null && + (!this.isFollowing || this.xAlways || this.yAlways) + ) { + this.billboardComponent.xAxisEnabled = false || this.xAlways + this.billboardComponent.yAxisEnabled = false || this.yAlways + } + if (this.translatingLastFrame) { + // just stopped translating + const currentSqueeze = this.onMovingShrinkFactor + this.tweenMarginSqueeze(currentSqueeze, 0) + const currentTranslateMode = this.translateMode + this.tweenTranslateMode(currentTranslateMode, 0) + } + this.translatingLastFrame = false + } + + this.currentBorder = this.border - this.onMovingShrinkFactor + + if ( + !this.innerSize.equal(this.targetScaleCache) || + this.currentBorder !== this.material.mainPass.frameMargin || + !this.constantPadding.equal(this.lastConstantPadding) + ) { + this.targetScaleCache.x = this.innerSize.x + this.targetScaleCache.y = this.innerSize.y + this.lastConstantPadding.x = this.constantPadding.x + this.lastConstantPadding.y = this.constantPadding.y + this.scaleFrame() + } + + this.inputState.innerInteractableActive = + this.inputState.innerInteractableActive || + this.inputHandler.state.hoveringInteractable + + if ( + this.inputState.innerInteractableActive && + !this.hoveringInnerInteractableLast + ) { + const currentOpacity = this._opacity + if (this.autoShowHide) { + this.tweenOpacity(currentOpacity, this.interactableHoverOpacity) + } + // start hovering inner interactable + this.onHoverEnterInnerInteractableEvent.invoke() + } else if ( + !this.inputState.innerInteractableActive && + this.hoveringInnerInteractableLast + ) { + const currentOpacity = this._opacity + if (this.inputState.rawHovered) { + if (this.autoShowHide) { + this.tweenOpacity(currentOpacity, 1) + } + } + // stop hovering inner interactable + this.onHoverExitInnerInteractableEvent.invoke() + } + this.hoveringInnerInteractableLast = this.inputState.innerInteractableActive + + this.cursorHandler.update(this.inputState, this.inputHandler.state) + + this.material.mainPass.translateMode = this.translateMode + + if (!this.scalingLastFrame && !this.translatingLastFrame) { + this.material.mainPass.touchPosition = this.inputState.position + } + + if (this.inputHandler.state.scaling && !this.scalingLastFrame) { + // first frame scaling + this.smoothFollow?.startDragging() + } + + if (!this.inputHandler.state.scaling && this.scalingLastFrame) { + // first frame NOT scaling + this.smoothFollow?.finishDragging() + } + + this.scalingLastFrame = this.inputHandler.state.scaling + + this.snapBehavior?.setScaling(this.inputHandler.state.scaling) + + if (this.inputHandler.state.translating) this.snapBehavior?.update() + + if (this.isFollowing) { + this.smoothFollow?.onUpdate() + } + + this.animationManager.requestAnimationFrame(this.update) + } + + private lateUpdate = () => { + this.parentHoverBehavior.lateUpdate() + } + + private scaleFrame = () => { + validate(this.colliderShape) + validate(this.renderMeshVisual) + + this.material.mainPass.frameMargin = this.currentBorder + + this.material.mainPass.scaleFactor = scaleFactor + + const doubleMargin = this.currentBorder * 2 + + const meshEdges = scaleFactor * magicScalar + + this.material.mainPass.scaleX = + this.targetScaleCache.x + + doubleMargin - + meshEdges + + this.constantPadding.x + this.material.mainPass.scaleY = + this.targetScaleCache.y + + doubleMargin - + meshEdges + + this.constantPadding.y + + this.material.mainPass.scaleZ = scaleZ / zScaleAdjuster + + this.material.mainPass.rawScale = new vec2( + this.targetScaleCache.x + this.constantPadding.x, + this.targetScaleCache.y + this.constantPadding.y + ) + + const fullScale = new vec2( + this.targetScaleCache.x + this.constantPadding.x + doubleMargin, + this.targetScaleCache.y + this.constantPadding.y + doubleMargin + ) + + this.material.mainPass.fullScale = new vec2(fullScale.x, fullScale.y) + + let aspectRatio = new vec2(1, 1) + if (fullScale.x > fullScale.y) { + aspectRatio.y = fullScale.x / fullScale.y + } else { + aspectRatio.x = fullScale.y / fullScale.x + } + + this.material.mainPass.aspectRatio = new vec2(aspectRatio.x, aspectRatio.y) + + this.material.mainPass.originalScale = new vec2( + this.originalScale.x + this.currentBorder, + this.originalScale.y + this.currentBorder + ) + + this.colliderShape.size = new vec3( + (this.targetScaleCache.x + + this.currentBorder * 2 + + this.constantPadding.x) / + scaleFactor, + (this.targetScaleCache.y + + this.currentBorder * 2 + + this.constantPadding.y) / + scaleFactor, + scaleZ / zScaleAdjuster + ) + + this.renderMeshVisual.mainMaterial.mainPass.frustumCullMin = new vec3( + this.colliderShape.size.x * -0.5 - this.frustumBuffer, + this.colliderShape.size.y * -0.5 - this.frustumBuffer, + this.colliderShape.size.z * -0.5 + ) + + this.renderMeshVisual.mainMaterial.mainPass.frustumCullMax = new vec3( + this.colliderShape.size.x * 0.5 + this.frustumBuffer, + this.colliderShape.size.y * 0.5 + this.frustumBuffer, + this.colliderShape.size.z * 0.5 + ) + + this.inputHandler.gutterSize.x = + this.currentBorder / (scaleFactor * this.colliderShape.size.x) + this.inputHandler.gutterSize.y = + this.currentBorder / (scaleFactor * this.colliderShape.size.y) + + this.scaleAndPositionButtons() + + this.frameTransform.setLocalPosition(vec3.zero()) + this.frameTransform.setLocalRotation(quat.quatIdentity()) + + this.targetTransform.setLocalPosition(new vec3(0, 0, scaleZ + 0.5)) + this.targetTransform.setLocalRotation(quat.quatIdentity()) + + if (this.autoScaleContent) { + if (!this.forcePreserveScale) { + const factor = this.innerSize.div(this.originalScale) + this.targetTransform.setLocalScale(new vec3(factor.x, factor.y, 1)) + } else { + // update original with cloned cache to prevent reset on next scaling + this.originalScale = this.targetScaleCache.uniformScale(1) + } + } + + this.smoothFollow?.resize( + this.innerSize.x + doubleMargin + this.constantPadding.x + ) + + if (!this.forcePreserveScale) { + this.onScalingUpdate.invoke() + } else { + this.forcePreserveScale = false + } + } + + private scaleAndPositionButtons = () => { + this.closeButton.transform.setLocalScale(this.buttonScaleVector) + this.followButton.transform.setLocalScale(this.buttonScaleVector) + + const halfFrameWidth = + (this.innerSize.x * 0.5 + + this.constantPadding.x * 0.5 + + this.currentBorder) / + scaleFactor + const halfFrameHeight = + (this.innerSize.y * 0.5 + + this.constantPadding.y * 0.5 + + this.currentBorder) / + scaleFactor + + const buttonOffset = + (this.buttonSize / scaleFactor) * -1 - BUTTON_CORNER_OFFSET + + // CORNER POSITIONING + this.closeButton.transform.setLocalPosition( + new vec3( + -halfFrameWidth - buttonOffset, + halfFrameHeight + buttonOffset, + 0.1 + ) + ) + + this.followButton.transform.setLocalPosition( + new vec3( + halfFrameWidth + buttonOffset, + halfFrameHeight + buttonOffset, + 0.1 + ) + ) + } + + /** + * setup billboarding component with the following parameters + * @param useBillboard + * @param xOnTranslate + * @param xAlways + * @param yOnTranslate + * @param yAlways + */ + setBillboarding = ( + useBillboard: boolean, + xOnTranslate: boolean = false, + xAlways: boolean = false, + yOnTranslate: boolean = false, + yAlways: boolean = false + ): void => { + this.useBillboarding = useBillboard + + if (this.useBillboarding) { + this.xOnTranslate = xOnTranslate + this.xAlways = xAlways + this.yOnTranslate = yOnTranslate + this.yAlways = yAlways + + if (this.billboardComponent === null) { + this.billboardComponent = this.parent.createComponent( + Billboard.getTypeName() + ) + } + + this.billboardComponent.xAxisEnabled = false || this.xAlways + this.billboardComponent.yAxisEnabled = false || this.yAlways + } else { + if (this.billboardComponent) { + this.billboardComponent.xAxisEnabled = false + this.billboardComponent.yAxisEnabled = false + } + } + } + + setYAlways = (yAlways: boolean) => { + this.setBillboarding( + this.useBillboarding, + this.xOnTranslate, + this.xAlways, + this.yOnTranslate, + yAlways + ) + } + + setUseBillboarding = (useBillboarding: boolean): void => { + this.setBillboarding( + useBillboarding, + this.xOnTranslate, + this.xAlways, + this.yOnTranslate, + this.yAlways + ) + } + + /** + * @returns frame's Interactable + */ + getInteractable = (): Interactable => { + if (this.interactableCached === null) { + this.interactableCached = this.interactable + } + return this.interactableCached + } + + /** + * @returns frame's parent's Interactable + */ + getParentInteractable = (): Interactable => { + return this.parentInteractable + } + + /** + * @returns frame's InteractableManipulation + */ + getInteractableManipulation = (): InteractableManipulation => { + if (this.manipulateCached === null) { + this.manipulateCached = this.manipulate + } + return this.manipulateCached + } + + /** + * @param isInteractable set if content is interactable + */ + setIsContentInteractable = (isInteractable: boolean) => { + this.isContentInteractable = isInteractable + this.inputHandlerOptions.isInteractable = isInteractable + } + + /** + * @param isSnappable turns on or off snappableBehavior + */ + setIsSnappable = (isSnappable: boolean) => { + this.useSnapping = isSnappable + if (isSnappable) { + if (!this.snapBehavior) { + this.createSnappableBehavior() + } + } + if (this.snapBehavior) { + this.snapBehavior.isEnabled = isSnappable + } + } + + setUseWorldSnapping = (enable: boolean) => { + validate(this.snapBehavior) + + this.worldSnapping = enable + + if (!this.snapBehavior && enable) { + this.createSnappableBehavior() + } + + this.snapBehavior.enableWorldSnapping(enable) + } + + setUseItemSnapping = (enable: boolean) => { + validate(this.snapBehavior) + + this.itemSnapping = enable + + if (!this.snapBehavior && enable) { + this.createSnappableBehavior() + } + + this.snapBehavior.enableItemSnapping(enable) + } + + private createSnappableBehavior = () => { + this.snapBehavior = new SnappableBehavior({ + frame: this, + worldSnapping: this.worldSnapping, + itemSnapping: this.itemSnapping, + }) + this.onSnappingComplete = this.snapBehavior.snappingComplete() + } + + /** + * abort snapping behavior + */ + abortSnapping = (): void => { + this.snapBehavior?.abortSnapping() + } + + /** + * @param allowScaling enable or disable user scaling + */ + setAllowScaling = (allowScaling: boolean) => { + this.allowScaling = allowScaling + this.inputHandler.allowScaling = this.allowScaling + + const scaleHandles = vec4.zero() + if (allowScaling) { + if (!this.showFollowButton) scaleHandles.x = 1 + scaleHandles.y = 1 + scaleHandles.z = 1 + if (!this.showCloseButton) scaleHandles.w = 1 + } + this.material.mainPass.scaleHandles = scaleHandles + } + + setInnerSizePreserveScale = (newSize: vec2) => { + this.forcePreserveScale = true + this.innerSize = newSize + + this.interactionPlane.planeSize = this.totalInnerSize.add( + vec2.one().uniformScale(this.border * 2) + ) + } + + /** + * @param useFollow enable or disable the option to turn on the default follow behavior with the follow button + */ + setUseFollow = (useFollow: boolean) => { + this.useFOVFollow = useFollow + if (useFollow && !this.smoothFollow) { + this.smoothFollow = new SmoothFollow({ + frame: this, + }) + } + } + + /** + * @param isFollowing enable or disable the following button and defualt behavior ( if it is enabled ) + */ + setIsFollowing = (isFollowing: boolean): void => { + this.isFollowing = isFollowing + + if (this.isFollowing) { + if (this.billboardComponent !== null) { + this.billboardComponent.xAxisEnabled = + (this.xOnTranslate && this.allowTranslation) || this.xAlways + this.billboardComponent.yAxisEnabled = + (this.yOnTranslate && this.allowTranslation) || this.yAlways + } + this.followButton.toggled = true + this.followButton.setColor("trigger") + this.followButton.setTexture(1) + } else { + this.followButton.setColor("default") + this.followButton.toggled = false + this.followButton.setTexture(0) + } + } + + /** + * @returns whether the snapping behavior is currently tweening + */ + isSnappingTweening = (): boolean => { + if (this.snapBehavior) { + return this.snapBehavior.isTweening + } + return false + } + + /** + * @returns whether the snapping behavior is checking for snappable elements + */ + isSnappingActive = (): boolean => { + if (this.snapBehavior) { + return this.snapBehavior.isActive + } + return false + } + + /** + * @param isActive whether or not to activate snapping + */ + setSnappingActive = (isActive: boolean): void => { + if (this.snapBehavior) { + this.snapBehavior.isActive = isActive + } + } + + /** + * @returns inner object which contains original children + */ + getTargetObject = () => this.target + + /** + * @returns returns the frame sceneobject + */ + getFrameObject = () => this.frame + + /** + * @param opacity + * sets opacity of frame when hovering interactable content in the frame + */ + setHoverInteractableOpacity = (opacity: number) => { + this.interactableHoverOpacity = opacity + } + + /** + * @param minimumSize set minimum scale of frame + */ + setminimumSize = (minimumSize: vec2) => { + this.inputHandler.minimumSize = minimumSize + } + + /** + * @param maximumSize set maximum scale of frame + */ + setmaximumSize = (maximumSize: vec2) => { + this.inputHandler.maximumSize = maximumSize + } + + /** + * @param isInteractable enable or disable interactable elements of the frame + */ + enableInteractables = (isInteractable: boolean) => { + for (let i = 0; i < this.allInteractables.length; i++) { + this.allInteractables[i].enabled = isInteractable + } + } + + /** + * @returns vec2 of the total size of the container, including constant padding + */ + get totalInnerSize(): vec2 { + return new vec2( + this.innerSize.x + this.constantPadding.x, + this.innerSize.y + this.constantPadding.y + ) + } + + /* + * + * worldTransform api + * + */ + + /** + * @returns current world position of frame + */ + get worldPosition(): vec3 { + return this.parentTransform.getWorldPosition() + } + + /** + * @param position sets current world position of frame + */ + set worldPosition(position: vec3) { + this.parentTransform.setWorldPosition(position) + } + + /** + * Gets current world position of frame + * @returns {vec3} + */ + public getWorldPosition(): vec3 { + return this.parentTransform.getWorldPosition() + } + + /** + * @param position sets current world position of frame + */ + public setWorldPosition(position: vec3) { + this.parentTransform.setWorldPosition(position) + } + + /** + * @returns current local position of frame + */ + get localPosition(): vec3 { + return this.parentTransform.getLocalPosition() + } + + /** + * @param position sets current local position of frame + */ + set localPosition(position: vec3) { + this.parentTransform.setLocalPosition(position) + } + + /** + * @returns current local position of frame + */ + getLocalPosition(): vec3 { + return this.parentTransform.getLocalPosition() + } + + /** + * @param position sets current local position of frame + */ + setLocalPosition(position: vec3) { + this.parentTransform.setLocalPosition(position) + } + + /** + * @returns current world rotation of frame + */ + get worldRotation(): quat { + return this.parentTransform.getWorldRotation() + } + + /** + * @param rotation sets current local position of frame + */ + set worldRotation(rotation: quat) { + this.parentTransform.setWorldRotation(rotation) + } + + /** + * @returns current world rotation of frame + */ + getWorldRotation(): quat { + return this.parentTransform.getWorldRotation() + } + + /** + * @param rotation sets current local position of frame + */ + setWorldRotation(rotation: quat) { + this.parentTransform.setWorldRotation(rotation) + } + + /** + * @returns current local rotation of frame + */ + get localRotation(): quat { + return this.parentTransform.getLocalRotation() + } + + /** + * @param rotation set current local rotation of frame + */ + set localRotation(rotation: quat) { + this.parentTransform.setLocalRotation(rotation) + } + /** + * @returns current local rotation of frame + */ + getLocalRotation(): quat { + return this.parentTransform.getLocalRotation() + } + + /** + * @param rotation set current local rotation of frame + */ + setLocalRotation(rotation: quat) { + this.parentTransform.setLocalRotation(rotation) + } + + /** + * @returns current world scale of frame + */ + get worldScale(): vec3 { + return this.parentTransform.getWorldScale() + } + + /** + * @param scale set current world scale of frame + */ + set worldScale(scale: vec3) { + this.parentTransform.setWorldScale(scale) + } + + /** + * @returns current world scale of frame + */ + get localScale(): vec3 { + return this.parentTransform.getLocalScale() + } + + /** + * @param scale set current local scale of frame + */ + set localScale(scale: vec3) { + this.parentTransform.setLocalScale(scale) + } + + /** + * @returns current renderOrder for the renderMeshVisual of the frame itself + */ + get renderOrder(): number { + validate(this.renderMeshVisual) + return this.renderMeshVisual.getRenderOrder() + } + + /** + * @param renderOrder sets renderOrder for the renderMeshVisual of the frame itself + */ + set renderOrder(renderOrder: number) { + validate(this.renderMeshVisual) + this.renderMeshVisual.setRenderOrder(renderOrder) + this.closeButton.setRenderOrder(renderOrder) + this.followButton.setRenderOrder(renderOrder) + } + + /** + * function for fully destroying the frame + */ + onDestroy = (): void => { + log.d("destroy isDestroyed:" + this.destroyed) + if (!this.destroyed) { + this.destroyed = true + this.unSubscribeList.forEach((sub) => { + sub() + }) + this.parentHoverBehavior.destroy() + this.snapBehavior?.destroy() + + if (!isNull(this.frame)) { + this.frame.destroy() + } + + this.enabled = false + } + } + + /** + * @returns ContainerFrame frame sceneObject + */ + get object() { + return this.frame + } + + /** + * + * @returns parent transform of top container object + */ + getParentTransform = () => this.parentTransform + + /** + * tween to show visuals of frame and elements + */ + showVisual = () => { + validate(this.renderMeshVisual) + const currentOpacity = this._opacity + // enable on show + this.renderMeshVisual.enabled = true + if (this.closeButton && this.showCloseButton) + this.closeButton.object.enabled = true + if (this.followButton && this.showFollowButton) + this.followButton.object.enabled = true + + this.tweenOpacity(currentOpacity, 1) + } + + /** + * tween to hide visuals of frame and elementss + */ + hideVisual = () => { + const currentOpacity = this._opacity + this.tweenOpacity(currentOpacity, 0, () => { + // disable on hide + validate(this.renderMeshVisual) + this.renderMeshVisual.enabled = false + if (this.closeButton) this.closeButton.object.enabled = false + if (this.followButton) this.followButton.object.enabled = false + }) + } + + /** + * tween from current opacity to target opacity, will cancel existing opacity tweens + * @param currentOpacity + * @param targetOpacity + */ + tweenOpacity = ( + currentOpacity: number, + targetOpacity: number, + endCallback = () => {} + ) => { + if (this.opacityCancel) this.opacityCancel.cancel() + animate({ + duration: + OPACITY_TWEEN_DURATION * Math.abs(targetOpacity - currentOpacity), + update: (t: number) => { + this.opacity = lerp(currentOpacity, targetOpacity, t) + }, + ended: endCallback, + cancelSet: this.opacityCancel, + }) + } + + /** + * @param opacity sets opacity for all frame elements + * note this parameter is effected by calls to `showVisual` and `hideVisual` + */ + set opacity(opacity: number) { + if (opacity > 0) { + this.isVisible = true + } else { + this.isVisible = false + } + if (!this.destroyed) { + this._opacity = opacity + this.material.mainPass.opacity = opacity + this.closeButton.setAlpha(opacity) + this.followButton.setAlpha(opacity) + } + } + + /** + * @returns current opacity of frame elements + */ + get opacity(): number { + return this._opacity + } + + /** + * @param alpha sets alpha of the glass border of the frame + */ + set borderAlpha(alpha: number) { + if (!this.destroyed) { + this.material.mainPass.borderAlpha = alpha + } + } + + /** + * @returns alpha of the glass border of the frame + */ + get borderAlpha(): number { + return this.material.mainPass.borderAlpha + } + + /** + * @param alpha sets alpha of the dark backing effect of the frame + */ + set backingAlpha(alpha: number) { + if (!this.destroyed) { + this.backingAlphaCache = alpha + this.material.mainPass.backingAlpha = alpha + } + } + + /** + * @returns alpha of the dark backing effect of the frame + */ + get backingAlpha(): number { + return this.material.mainPass.backingAlpha + } + + /** + * @param enabled set close button enabled or disabled + */ + enableCloseButton = (enabled: boolean) => { + this.closeButton.object.enabled = enabled + const scaleHandles = this.material.mainPass.scaleHandles + scaleHandles.w = enabled && this.allowScaling ? 1 : 0 + this.material.mainPass.scaleHandles = scaleHandles + } + + /** + * @param enabled set follow button enabled or disabled + */ + enableFollowButton = (enabled: boolean) => { + this.followButton.object.enabled = enabled + const scaleHandles = this.material.mainPass.scaleHandles + scaleHandles.y = enabled && this.allowScaling ? 1 : 0 + this.material.mainPass.scaleHandles = scaleHandles + } + + private tweenMarginSqueeze = ( + currentSqueeze: number, + targetSqueeze: number + ) => { + animate({ + duration: SQUEEZE_TWEEN_DURATION, + easing: "ease-out-back-cubic", + update: (t: number) => { + this.onMovingShrinkFactor = lerp(currentSqueeze, targetSqueeze, t) + }, + cancelSet: this.squeezeCancel, + }) + } + + private tweenTranslateMode = (current: number, target: number) => { + animate({ + duration: SQUEEZE_TWEEN_DURATION, + update: (t: number) => { + this.translateMode = lerp(current, target, t) + }, + cancelSet: this.translateModeCancel, + }) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/ContainerFrame.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/ContainerFrame.ts.meta new file mode 100644 index 00000000..b7052af9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/ContainerFrame.ts.meta @@ -0,0 +1,124 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 1f1999da-36f1-4f0d-9e61-26400b8aeb8d + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + - '// @ui {"widget":"group_start", "label":"Frame Settings"}' + - // @input bool autoShowHide = true + - '// @input vec2 innerSize = "{32,32}"' + - // @input float border = 7 + - '// @input vec2 constantPadding = "{0,0}" {"hint":"In world units (cm), stays constant through scaling"}' + - // @input bool allowScaling = true + - // @input bool autoScaleContent = true + - // @input bool isContentInteractable + - // @input bool allowTranslation = true + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"label", "label":""}' + - '// @ui {"widget":"group_start", "label":"Min/Max Size"}' + - '// @input vec2 minimumSize = "{10,10}" {"hint":"In world units (cm)"}' + - '// @input vec2 maximumSize = "{150,150}" {"hint":"In world units (cm)"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"label", "label":""}' + - '// @ui {"widget":"group_start", "label":"Billboarding"}' + - // @input bool useBillboarding + - '// @input bool xOnTranslate {"showIf":"useBillboarding"}' + - '// @input bool xAlways {"showIf":"xOnTranslate"}' + - '// @input bool yOnTranslate {"showIf":"useBillboarding"}' + - '// @input bool yAlways {"showIf":"yOnTranslate"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"label", "label":""}' + - '// @ui {"widget":"group_start", "label":"Snapping"}' + - '// @input bool useSnapping {"hint":"Use Snapping Behaviors"}' + - '// @input bool itemSnapping {"hint":"Container to Container Snapping", "showIf":"useSnapping"}' + - '// @input bool worldSnapping {"hint":"Container to World Snapping", "showIf":"useSnapping"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"label", "label":""}' + - '// @ui {"widget":"group_start", "label":"Follow Behavior"}' + - // @input bool showFollowButton + - '// @input bool useFOVFollow {"label":"Front Follow Behavior", "showIf":"showFollowButton"}' + - '// @input bool isFollowing {"showIf":"useFOVFollow"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"label", "label":""}' + - '// @ui {"widget":"group_start", "label":"Close Button"}' + - // @input bool showCloseButton = true + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Interaction Plane"}' + - // @input bool _enableInteractionPlane + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"separator"}' + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _enableInteractionPlane: false + allowScaling: false + allowTranslation: false + autoScaleContent: false + autoShowHide: false + border: false + constantPadding: false + innerSize: false + isContentInteractable: false + isFollowing: false + itemSnapping: false + maximumSize: false + minimumSize: false + showCloseButton: false + showFollowButton: false + useBillboarding: false + useFOVFollow: false + useSnapping: false + worldSnapping: false + xAlways: false + xOnTranslate: false + yAlways: false + yOnTranslate: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - allowScaling: true + useBillboarding: false + useSnapping: false + showFollowButton: false + useFOVFollow: false + isFollowing: false + showCloseButton: true + border: ! 4.000000 + autoScaleContent: true + isContentInteractable: false + autoShowHide: true + minimumSize: ! {x: 10.000000, y: 10.000000} + maximumSize: ! {x: 300.000000, y: 300.000000} + yOnTranslate: false + xOnTranslate: false + xAlways: false + yAlways: false + innerSize: ! {x: 32.000000, y: 32.000000} + constantPadding: ! {x: 0.000000, y: 0.000000} + allowTranslation: true + worldSnapping: false + itemSnapping: false + _enableInteractionPlane: false + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.mat new file mode 100644 index 00000000..8aa2a36f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.mat @@ -0,0 +1,288 @@ +- ! + PackagePath: "" + PassesInfo: + - ! ead50f94-a77b-4983-bf19-9a0e5aa3b6cb +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 2.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Input0_N024: + typeIdx: 5 + value: {x: 0.612177, y: 0.612177, z: 0.612177, w: 1.000000} + Port_Input0_N055: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input0_N091: + typeIdx: 1 + value: 1.000000 + Port_Input0_N096: + typeIdx: 3 + value: {x: -0.250000, y: -0.250000} + Port_Input0_N106: + typeIdx: 1 + value: 0.000000 + Port_Input0_N107: + typeIdx: 1 + value: 1.000000 + Port_Input0_N109: + typeIdx: 1 + value: 1.000000 + Port_Input0_N125: + typeIdx: 1 + value: 1.000000 + Port_Input0_N157: + typeIdx: 1 + value: 0.000000 + Port_Input0_N166: + typeIdx: 1 + value: 5.500000 + Port_Input1_N002: + typeIdx: 1 + value: -1.000000 + Port_Input1_N008: + typeIdx: 1 + value: 0.500000 + Port_Input1_N018: + typeIdx: 1 + value: 0.500000 + Port_Input1_N021: + typeIdx: 1 + value: 0.500000 + Port_Input1_N024: + typeIdx: 5 + value: {x: 0.738949, y: 0.738949, z: 0.738949, w: 1.000000} + Port_Input1_N033: + typeIdx: 1 + value: 0.000000 + Port_Input1_N052: + typeIdx: 1 + value: 0.700000 + Port_Input1_N059: + typeIdx: 1 + value: 2.000000 + Port_Input1_N062: + typeIdx: 1 + value: 1.000000 + Port_Input1_N072: + typeIdx: 1 + value: 6.000000 + Port_Input1_N084: + typeIdx: 1 + value: 6.000000 + Port_Input1_N085: + typeIdx: 1 + value: 0.500000 + Port_Input1_N087: + typeIdx: 1 + value: 2.750000 + Port_Input1_N093: + typeIdx: 1 + value: 0.000100 + Port_Input1_N102: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Input1_N149: + typeIdx: 1 + value: 1.750000 + Port_Input1_N157: + typeIdx: 1 + value: 0.500000 + Port_Input1_N160: + typeIdx: 1 + value: 1.500000 + Port_Input1_N165: + typeIdx: 1 + value: 0.000000 + Port_Input2_N014: + typeIdx: 1 + value: 1.000000 + Port_Input2_N019: + typeIdx: 1 + value: 1.000000 + Port_Input2_N023: + typeIdx: 1 + value: -1.000000 + Port_RangeMaxA_N053: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N110: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N112: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N129: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N053: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N110: + typeIdx: 1 + value: 2.750000 + Port_RangeMaxB_N112: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N129: + typeIdx: 1 + value: 0.330000 + Port_RangeMinA_N053: + typeIdx: 1 + value: 0.200000 + Port_RangeMinA_N110: + typeIdx: 1 + value: 0.000000 + Port_RangeMinA_N112: + typeIdx: 1 + value: 0.500000 + Port_RangeMinA_N129: + typeIdx: 1 + value: 0.000000 + Port_RangeMinB_N053: + typeIdx: 1 + value: 0.000000 + Port_RangeMinB_N110: + typeIdx: 1 + value: 5.000000 + Port_RangeMinB_N112: + typeIdx: 1 + value: 0.330000 + Port_RangeMinB_N129: + typeIdx: 1 + value: 1.000000 + Port_Value1_N050: + typeIdx: 1 + value: 1.000000 + Port_Value1_N065: + typeIdx: 1 + value: 1.000000 + Port_Value1_N156: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + Port_Value2_N049: + typeIdx: 1 + value: 1.000000 + Port_Value2_N064: + typeIdx: 1 + value: 1.000000 + Port_Value_N054: + typeIdx: 4 + value: {x: 0.752499, y: 0.717098, z: 0.044266} + Port_Value_N073: + typeIdx: 4 + value: {x: 0.599130, y: 0.319539, z: 0.000000} + Port_Value_N151: + typeIdx: 4 + value: {x: 0.019608, y: 0.019608, z: 0.019608} + Port_backingSoftness_N104: + typeIdx: 1 + value: 5.000000 + Port_borderOffset_N104: + typeIdx: 3 + value: {x: 2.000000, y: 2.000000} + Port_borderSoftness_N104: + typeIdx: 1 + value: 3.500000 + Port_handleOffset_N104: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_handleRadius_N104: + typeIdx: 1 + value: 1.660000 + Port_handleWidth_N104: + typeIdx: 1 + value: 0.500000 + Port_radius_N104: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + aspectRatio: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + backingAlpha: + typeIdx: 1 + value: 1.000000 + borderAlpha: + typeIdx: 1 + value: 1.000000 + cutOutCenter: + typeIdx: 1 + value: 0.000000 + frameMargin: + typeIdx: 1 + value: 1.000000 + fullScale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + isHovered: + typeIdx: 1 + value: 1.000000 + matcapTexture: + typeIdx: 9 + value: + id: b602e9a0-f2ff-435d-aec2-fce5eb07c4ba + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + matcapTextureBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + matcapTextureDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + matcapTextureTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + matcapTextureUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + opacity: + typeIdx: 1 + value: 1.000000 + rawScale: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + scaleFactor: + typeIdx: 1 + value: 1.000000 + scaleHandles: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + scaleX: + typeIdx: 1 + value: 1.000000 + scaleY: + typeIdx: 1 + value: 1.000000 + scaleZ: + typeIdx: 1 + value: 1.000000 + touchPosition: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + Pass: ! 2f6b7f77-9b41-47c1-a2ab-4ee6a1b56c8b + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.mat.meta new file mode 100644 index 00000000..04f7cf30 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 7b3d45fc-ecf3-49d9-996b-a3508971e038 + ImporterName: MaterialImporter + PrimaryAsset: ! 7b3d45fc-ecf3-49d9-996b-a3508971e038 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.ss_graph new file mode 100644 index 00000000..a391c70a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:850fe2a7cdde1aa7e2d2ccae4f9e539f85d887d8b6ad471a9de9bc82497b70f0 +size 829743 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.ss_graph.meta new file mode 100644 index 00000000..ebb9b568 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/FrameMaterial.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 2f6b7f77-9b41-47c1-a2ab-4ee6a1b56c8b + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 2f6b7f77-9b41-47c1-a2ab-4ee6a1b56c8b + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.mat new file mode 100644 index 00000000..980550f6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.mat @@ -0,0 +1,114 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 6580fa8f-1083-452c-b24b-65d7c6426868 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Input0_N042: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Input0_N073: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Input1_N046: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Input1_N047: + typeIdx: 1 + value: 1.360000 + Port_Input1_N057: + typeIdx: 1 + value: 0.500000 + Port_Input1_N070: + typeIdx: 1 + value: 0.500000 + Port_Input1_N073: + typeIdx: 4 + value: {x: 0.870558, y: 0.870558, z: 0.870558} + Port_Input1_N078: + typeIdx: 1 + value: 2.000000 + Port_Input1_N079: + typeIdx: 1 + value: 0.000000 + Port_Input1_N080: + typeIdx: 1 + value: 2.000000 + Port_Input1_N085: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Input1_N089: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Input1_N094: + typeIdx: 1 + value: 0.000000 + Port_Input1_N098: + typeIdx: 1 + value: -1.000000 + Port_Input1_N099: + typeIdx: 1 + value: 0.000100 + Port_Input2_N045: + typeIdx: 1 + value: 0.560000 + Port_Input2_N082: + typeIdx: 1 + value: 0.150000 + Port_Multiplier_N054: + typeIdx: 1 + value: 2.800000 + Port_Scale_N081: + typeIdx: 3 + value: {x: 1024.000000, y: 1024.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 0.999969, z: 0.999985, w: 0.330007} + blur: + typeIdx: 1 + value: 0.001000 + boxSize: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + cornerRadius: + typeIdx: 1 + value: 0.050000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! a1b542fe-e397-4f4a-955a-136d667d6e20 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.mat.meta new file mode 100644 index 00000000..4cb5c11f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! edf564d4-1379-427c-b4e3-dd439e6fa663 + ImporterName: MaterialImporter + PrimaryAsset: ! edf564d4-1379-427c-b4e3-dd439e6fa663 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.ss_graph new file mode 100644 index 00000000..fcee3e0b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27d6ef136edf52be1ab3abab627e3e4e7a2b06f87e53779a95fd75cadc6753f2 +size 726265 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.ss_graph.meta new file mode 100644 index 00000000..8ca12f60 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Ghost Material.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! a1b542fe-e397-4f4a-955a-136d667d6e20 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! a1b542fe-e397-4f4a-955a-136d667d6e20 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Image.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Image.mat new file mode 100644 index 00000000..6d3871cc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Image.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 686d4ed8-5ad4-4a78-8db2-c6e1ea8261bf +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + - ENABLE_BASE_TEX + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 02736e7d-b89c-4105-9cec-c32963b1f434 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! ed11a32f-2415-41b3-8eac-cfb2cd729437 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Image.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Image.mat.meta new file mode 100644 index 00000000..49a77f0f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Image.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 1759fdb8-549f-44f7-a05c-bff29f04c3f7 + ImporterName: MaterialImporter + PrimaryAsset: ! 1759fdb8-549f-44f7-a05c-bff29f04c3f7 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Label.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Label.mat new file mode 100644 index 00000000..890e0dd9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Label.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 783dda67-13f7-4f2b-880e-f2134774a365 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: f4d898cf-6a34-4025-9fec-7e9eef7c3d99 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Label.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Label.mat.meta new file mode 100644 index 00000000..9d92495d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/Label.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! ecfdbbfe-8ed8-459e-8bfd-4518842ca72e + ImporterName: MaterialImporter + PrimaryAsset: ! ecfdbbfe-8ed8-459e-8bfd-4518842ca72e + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.mat new file mode 100644 index 00000000..2d4162ca --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.mat @@ -0,0 +1,171 @@ +- ! + PackagePath: "" + PassesInfo: + - ! f40b938a-74b9-40cf-8696-9944efe7428f +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Input0_N018: + typeIdx: 1 + value: 0.330000 + Port_Input0_N038: + typeIdx: 1 + value: 1.300000 + Port_Input1_N009: + typeIdx: 3 + value: {x: 0.850000, y: 0.850000} + Port_Input1_N014: + typeIdx: 1 + value: 1.200000 + Port_Input1_N018: + typeIdx: 1 + value: 1.000000 + Port_Input1_N019: + typeIdx: 5 + value: {x: 0.400000, y: 0.400000, z: 0.400000, w: 1.000000} + Port_Input1_N022: + typeIdx: 1 + value: 2.000000 + Port_Input1_N028: + typeIdx: 1 + value: 0.000000 + Port_Input1_N031: + typeIdx: 1 + value: 1.000000 + Port_Input1_N034: + typeIdx: 1 + value: 2.000000 + Port_Input1_N041: + typeIdx: 1 + value: 2.500000 + Port_Input1_N043: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Input2_N009: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Input2_N028: + typeIdx: 1 + value: 1.000000 + Port_Input2_N043: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Position1_N007: + typeIdx: 1 + value: 0.470000 + Port_Position2_N007: + typeIdx: 1 + value: 0.700000 + Port_Value2_N007: + typeIdx: 5 + value: {x: 0.800000, y: 0.800000, z: 0.800000, w: 1.000000} + Port_Value3_N007: + typeIdx: 5 + value: {x: 0.800977, y: 0.800977, z: 0.800977, w: 1.000000} + Port_Value_N026: + typeIdx: 5 + value: {x: 0.200000, y: 0.200000, z: 0.200000, w: 1.000000} + Port_Value_N027: + typeIdx: 5 + value: {x: 0.594049, y: 0.594049, z: 0.594049, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: -1 + additional_settings_btn_refl_tex: + typeIdx: 9 + value: + id: 659a0716-80c9-467b-8d31-f63a01cfec82 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + additional_settings_btn_refl_texBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + additional_settings_btn_refl_texTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + additional_settings_btn_refl_texUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + alpha: + typeIdx: 1 + value: 1.000000 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + hoverColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + hovered: + typeIdx: 1 + value: 0.000000 + icon: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + iconBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + iconScale: + typeIdx: 3 + value: {x: 2.600000, y: 2.600000} + iconTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + iconUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + isToggle: + typeIdx: 1 + value: 0.000000 + triggered: + typeIdx: 1 + value: 1.000000 + Pass: ! c46734a1-2314-4e4a-89ca-d61a55ed2c41 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.mat.meta new file mode 100644 index 00000000..176346ff --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 097b95d9-9213-47f0-8fdb-bc23cab972a8 + ImporterName: MaterialImporter + PrimaryAsset: ! 097b95d9-9213-47f0-8fdb-bc23cab972a8 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.ss_graph new file mode 100644 index 00000000..88e64b10 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65496bcf672114313a73aa2e6072bc34d41687b9eaf439fc694979ec24b6cd79 +size 318735 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.ss_graph.meta new file mode 100644 index 00000000..34ba1968 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/container-button.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! c46734a1-2314-4e4a-89ca-d61a55ed2c41 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! c46734a1-2314-4e4a-89ca-d61a55ed2c41 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/flat.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/flat.ss_graph new file mode 100644 index 00000000..90b1283f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/flat.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2822a574174679230e64213eadcc87794821bc75a83c817321b072d4e9e5d3e7 +size 513589 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/flat.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/flat.ss_graph.meta new file mode 100644 index 00000000..916659ed --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Materials/flat.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! ed11a32f-2415-41b3-8eac-cfb2cd729437 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! ed11a32f-2415-41b3-8eac-cfb2cd729437 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame.mesh new file mode 100644 index 00000000..5e10e780 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63a5408eb471be1c2c0f0be5065b47715bc405388e908e1378883867bc6d1ed8 +size 16318 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame.mesh.meta new file mode 100644 index 00000000..655bb35e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame.mesh.meta @@ -0,0 +1,28 @@ +- ! + ImportedAssetIds: + FileMesh: ! e11c4e94-d7df-4d11-81bc-fa0695eae712 + ImporterName: FileMeshImporter + PrimaryAsset: ! e11c4e94-d7df-4d11-81bc-fa0695eae712 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + ModifiedVertexFormats: + color: Float + normal: Float + position: Float + texture0: Float + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_High.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_High.mesh new file mode 100644 index 00000000..074526e1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_High.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84ff24a4649aa152ecaf016cea1771995b18e25f2a6e4b0f0b29dab2952000f6 +size 215830 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_High.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_High.mesh.meta new file mode 100644 index 00000000..be2db91a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_High.mesh.meta @@ -0,0 +1,28 @@ +- ! + ImportedAssetIds: + FileMesh: ! df3feb8c-76d3-409a-b35f-f4e154fb1610 + ImporterName: FileMeshImporter + PrimaryAsset: ! df3feb8c-76d3-409a-b35f-f4e154fb1610 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + ModifiedVertexFormats: + color: Float + normal: Float + position: Float + texture0: Float + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_Mid.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_Mid.mesh new file mode 100644 index 00000000..1c2f6bbc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_Mid.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56de076eacaa4ceb069e1a1b5751639aa390d36b913ec5262b89e3e705f697d0 +size 57142 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_Mid.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_Mid.mesh.meta new file mode 100644 index 00000000..c8b8ede6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/Frame_Mid.mesh.meta @@ -0,0 +1,28 @@ +- ! + ImportedAssetIds: + FileMesh: ! f84a6abe-6576-4da5-abd6-723374d539e1 + ImporterName: FileMeshImporter + PrimaryAsset: ! f84a6abe-6576-4da5-abd6-723374d539e1 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + ModifiedVertexFormats: + color: Float + normal: Float + position: Float + texture0: Float + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SphereButton.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SphereButton.mesh new file mode 100644 index 00000000..87518e36 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SphereButton.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dcaf2b2475303f513453c358ad3619acffb3d8a8ce9e0791ba64cb547126c38c +size 52766 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SphereButton.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SphereButton.mesh.meta new file mode 100644 index 00000000..e5207ff1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SphereButton.mesh.meta @@ -0,0 +1,29 @@ +- ! + ImportedAssetIds: + FileMesh: ! 3647f7d4-b357-4261-9a5d-430f8a249f77 + ImporterName: FileMeshImporter + PrimaryAsset: ! 3647f7d4-b357-4261-9a5d-430f8a249f77 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + texture1: Float + CompressionSettings: ! + CompressionSettings: ! + EnableDracoCompression: false + CompressionLevel: 0 + PositionBits: 11 + TexcoordBits: 10 + NormalBits: 8 + ColorBits: 8 + CompressorName: Draco + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SysSettings_settings_button.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SysSettings_settings_button.mesh new file mode 100644 index 00000000..48125813 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SysSettings_settings_button.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63d12f76e80d601fc347dca9745ee304218faadb8ffc1c897726e5a349f2c306 +size 41430 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SysSettings_settings_button.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SysSettings_settings_button.mesh.meta new file mode 100644 index 00000000..c96a6535 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/SysSettings_settings_button.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! bf1f1c8a-e09f-4466-b725-db70b9f52b0f + ImporterName: FileMeshImporter + PrimaryAsset: ! bf1f1c8a-e09f-4466-b725-db70b9f52b0f + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + texture0: Float + texture1: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/pinch-depth-button.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/pinch-depth-button.mesh new file mode 100644 index 00000000..38514e49 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/pinch-depth-button.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e68268ad85ba07bbec2fb0d2ce38fda4d14e6f99f02406cbca822e342b96966 +size 52766 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/pinch-depth-button.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/pinch-depth-button.mesh.meta new file mode 100644 index 00000000..5f8b373b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Meshes/pinch-depth-button.mesh.meta @@ -0,0 +1,23 @@ +- ! + ImportedAssetIds: + FileMesh: ! 0479aeb4-3ef2-48f7-8cd9-338b07c4e893 + ImporterName: FileMeshImporter + PrimaryAsset: ! 0479aeb4-3ef2-48f7-8cd9-338b07c4e893 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + texture1: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/FramePrefab.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/FramePrefab.prefab new file mode 100644 index 00000000..56f01c1d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/FramePrefab.prefab @@ -0,0 +1,60 @@ +- ! + PackagePath: "" + objects: + - ! 2de514b9-1878-47c7-83ca-0661d1b4d70b + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: FramePrefab + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 63679e27-dd2a-43d2-92a3-7a3b18faeabd + - ! a829bb2f-bf3c-4fe7-b747-09f382bf0a6c +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 1.000000, y: 1.000000, z: 0.050000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7b3d45fc-ecf3-49d9-996b-a3508971e038 + Mesh: ! f84a6abe-6576-4da5-abd6-723374d539e1 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/FramePrefab.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/FramePrefab.prefab.meta new file mode 100644 index 00000000..00c6d165 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/FramePrefab.prefab.meta @@ -0,0 +1,82 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 124d8042-863d-4c36-86dc-ef584ae3db5d + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 124d8042-863d-4c36-86dc-ef584ae3db5d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! a56a49ce-202c-4251-8468-f0aa953e37f1 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: FramePrefab + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b37c1b5e-556c-4ab7-b42c-88bff5b0552b + - ! 859802e3-44af-40cb-96b8-a2463da44d2f +- ! + PackagePath: "" + objects: + - ! 47c9e01e-d3b9-4b4a-8cde-9456d0d0406c + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7b3d45fc-ecf3-49d9-996b-a3508971e038 + Mesh: ! f84a6abe-6576-4da5-abd6-723374d539e1 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + SourceRemaps: + - 2de514b9-1878-47c7-83ca-0661d1b4d70b: 47c9e01e-d3b9-4b4a-8cde-9456d0d0406c + - 63679e27-dd2a-43d2-92a3-7a3b18faeabd: b37c1b5e-556c-4ab7-b42c-88bff5b0552b + - a829bb2f-bf3c-4fe7-b747-09f382bf0a6c: 859802e3-44af-40cb-96b8-a2463da44d2f + SourceState: ! 51fcf0a2-a995-41b0-bd78-31368c7200ab +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + Size: {x: 1.000000, y: 1.000000, z: 0.050000} + FitVisual: false + ForceCompound: false + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + ShowCollider: false + Intangible: false + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/container-button.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/container-button.prefab new file mode 100644 index 00000000..50c50fc7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/container-button.prefab @@ -0,0 +1,85 @@ +- ! + PackagePath: "" + objects: + - ! 08d63cc3-1e18-4065-9034-c456dfdf8cfd + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: container-button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -1.935684, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e1d8a241-a4de-4e2c-8389-4c6aa5f625d2 + - ! 439858c2-8703-4372-975b-55fdc80d571d + - ! 1dfab4fc-760d-4222-900d-82dfd0850d2e +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_6 + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 097b95d9-9213-47f0-8fdb-bc23cab972a8 + Mesh: ! bf1f1c8a-e09f-4466-b725-db70b9f52b0f + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 + Z depth: 1.000000 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/container-button.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/container-button.prefab.meta new file mode 100644 index 00000000..b70ef972 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Prefabs/container-button.prefab.meta @@ -0,0 +1,108 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 7a73ddb7-46a8-4f5e-9db3-f117cda5a64b + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 7a73ddb7-46a8-4f5e-9db3-f117cda5a64b + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! 6181b45e-d7c3-445c-bd43-a884f45c6938 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_6 + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 097b95d9-9213-47f0-8fdb-bc23cab972a8 + Mesh: ! bf1f1c8a-e09f-4466-b725-db70b9f52b0f + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 + Z depth: 1.000000 +- ! + PrefabRemaps: + [] + Name: container-button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -1.935684, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1d4cd7ee-36e5-4a68-a92f-3a7d3dfebcd2 + - ! 0811cea8-bd72-4778-8689-b33698739f3f + - ! 5fd932eb-4fda-4426-b438-145e2a16a143 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + SourceRemaps: + - 08d63cc3-1e18-4065-9034-c456dfdf8cfd: 28f6d674-53cb-41c2-a53c-fe21acb81df4 + - 1dfab4fc-760d-4222-900d-82dfd0850d2e: 5fd932eb-4fda-4426-b438-145e2a16a143 + - 439858c2-8703-4372-975b-55fdc80d571d: 0811cea8-bd72-4778-8689-b33698739f3f + - e1d8a241-a4de-4e2c-8389-4c6aa5f625d2: 1d4cd7ee-36e5-4a68-a92f-3a7d3dfebcd2 + SourceState: ! cff380da-1fc0-47b8-aaec-f3167ccf669a +- ! + PackagePath: "" + objects: + - ! 28f6d674-53cb-41c2-a53c-fe21acb81df4 + LazyLoading: false + RetainAssets: true diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/README.md b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/README.md new file mode 100644 index 00000000..54b79235 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/README.md @@ -0,0 +1,93 @@ +# :framed_picture: Container Frame :framed_picture: + +## A window for your AR Content + + +### Setup + +- Create a Scene Object +- Add the ContainerFrame typsescript component to the new object +- Set the target content as the child of the new object created above +- Adjust the frameSize attribute for the desired appearance +- Adjust the border attribute for desired experience +- Check the UI and API below for additional functionality + +--- + +### Usage + +The frame requires a specific hierarchy setup in your scene. + +Create a SceneObject that is a parent to the content you want to contain in the frame: + +``` +\__> Parent (add the ContainerFrame component here) + \__> Content (can be multiple items) +``` + +This will result in the ContainerFrame generating the following hierarchy at runtine: + +``` +\__> Parent (with ContainerFrame component) + \__> ContainerInner (automatically created by ContainerFrame) + \__> Content (can be multiple items) + \__> Frame SceneObject (automatically created by ContainerFrame) + \__> Frame UI SceneObjects... + \__> ... +``` + +--- + +### UI + +![Current Container UI](./container-ui.png) + +--- + +### API + +ContainerFrame.autoShowHide
    `boolean` if true, ContainerFrame will auto show and hide on hover +

ContainerFrame.frameSize
    `vec2` size of the frame +

ContainerFrame.border
    `number` thickness of border +

ContainerFrame.autoScaleContent
    `boolean` if true, ContainerFrame content will scale along with frame when scaled +

ContainerFrame.addCloseButtonOnTrigger( `function` )
    called when close button is triggered +

ContainerFrame.addFollowButtonOnTrigger( `function` )
    called when follow button is triggered +

ContainerFrame.onScalingUpdateEvent
    `publicApi` event api for user scaling update +

ContainerFrame.onScalingStartEvent
    `publicApi` event api for user scaling start +

ContainerFrame.onScalingEndEvent
    `publicApi` event api for user scaling end +

ContainerFrame.isVisible
    `boolean` readOnly boolean for if the ContainerFrame isVisible +

ContainerFrame.onSnappingComplete
    `publicApi` event api for snapping tween completed +

ContainerFrame.frontFollowBehavior
    `FrontFollowBehavior` reference to default FrontFollowBehavior packaged with ContainerFrame +

ContainerFrame.getInteractable()
    `returns Interactable` gets Interactable for the frame itself +

ContainerFrame.getInteractableManipulation()
    `returns InteractableManipulation` gets InteractableManipulation for the frame itself +

ContainerFrame.setIsContentInteractable( `boolean` )
    `void` updates input handler to handle interactions as if content is interactable +

ContainerFrame.setIsSnappable( `boolean` )
    enable or disable SnappableBehavior +

ContainerFrame.setAllowScaling( `boolean` )
    enable or disable user scaling +

ContainerFrame.setUseFollow( `boolean` )
    attach default FrontFollowBehavior to FollowButton +

ContainerFrame.setIsFollowing( `boolean` )
    enable or disable frontFollowBehavior ( the following itself! ) +

ContainerFrame.isSnappingTweening()
    `boolean` returns whether the ContainerFrame is currently tweening +

ContainerFrame.isSnappingActive()
    `boolean` returns whether the ContainerFrame is actively looking for anotehr snappable frame +

ContainerFrame.getTargetObject()
    `SceneObject` returns innerContainer which contains all the provided content +

ContainerFrame.getFrameObject()
    `SceneObject` returns the FramePrefab object itself +

ContainerFrame.setHoverInteractableOpacity( `number` )
    `0-1` set the opacity of the frame when hovering interactive children +

ContainerFrame.setMinimumScale( `vec2` )
    set the minimum scale of the frame +

ContainerFrame.setMaximumScale( `vec2` )
    set the maximum scale of the frame +

ContainerFrame.enableInteractables( `boolean` )
    enable or disable the interactable elements of the frame itself ( frame, buttons ) +

ContainerFrame.worldPosition
    get or set the current worldPosition of the parentTransform +

ContainerFrame.localPosition
    get or set the current localPosition of the parentTransform +

ContainerFrame.worldRotation
    get or set the current worldRotation of the parentTransform +

ContainerFrame.localRotation
    get or set the current localRotation of the parentTransform +

ContainerFrame.worldScale
    get or set the current worldScale of the parentTransform +

ContainerFrame.localScale
    get or set the current localScale of the parentTransform +

ContainerFrame.renderOrder
    get or set the renderOrder for the frame itself +

ContainerFrame.destroy()
    function for destroying and disposing of the frame and its components +

ContainerFrame.getFollowButton()
    returns follow button SceneObject +

ContainerFrame.getCloseButton()
    returns close button SceneObject +

ContainerFrame.enableFollowButton( `boolean` )
    enable or disable the follow button SceneObject +

ContainerFrame.enableCloseButton( `boolean` )
    enable or disable the close button SceneObject +

ContainerFrame.setButtonsOnLeft( `boolean` )
    enable or disable positioning both buttons to left of frame +

ContainerFrame.setButtonsAbove( `boolean` )
    enable or disable positioning both buttons to above the frame +

ContainerFrame.getParentTransform()
    returns container parent Transform +

ContainerFrame.showVisual()
    tween up the opacity of the frame and its elements to 1 +

ContainerFrame.hideVisual()
    tween down the opacity of the frame and its elements to 0 +

ContainerFrame.opacity
    get or set the current opacity of the frame and its elements diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/README.md.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/README.md.meta new file mode 100644 index 00000000..22ef056d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/README.md.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + BinAsset: ! 43515302-9836-4261-8f1e-4b55b50f846d + ImporterName: BinAssetImporter + PrimaryAsset: ! 43515302-9836-4261-8f1e-4b55b50f846d + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon-1.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon-1.png new file mode 100644 index 00000000..ffcd7cd7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon-1.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6e0b1f8ac90517e4a11f9d33f121c45c95155e2db28c1384527a604f20e91e2 +size 707 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon-1.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon-1.png.meta new file mode 100644 index 00000000..255d7052 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon-1.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 93ccce6d-acaf-463c-a766-245dfa12e12c + ImporterName: FileTextureImporter + PrimaryAsset: ! 93ccce6d-acaf-463c-a766-245dfa12e12c + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! + Level: Medium + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon.png new file mode 100644 index 00000000..a95e881f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82c6d50af66975cbb4452c53721fb3373cd027fa6c86f8b14716e156728d254f +size 7435 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon.png.meta new file mode 100644 index 00000000..706665ff --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/close-icon.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 4f595fd6-dfe7-420c-a4c4-7271b7f1954b + ImporterName: FileTextureImporter + PrimaryAsset: ! 4f595fd6-dfe7-420c-a4c4-7271b7f1954b + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! + Level: Medium + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/container-button-matcap.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/container-button-matcap.jpg new file mode 100644 index 00000000..bb5c1a52 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/container-button-matcap.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98589b58ff5d117e6e898f49d0b5505203bff6951668bc4bf110986d6287f27c +size 60024 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/container-button-matcap.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/container-button-matcap.jpg.meta new file mode 100644 index 00000000..05acf183 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/container-button-matcap.jpg.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 659a0716-80c9-467b-8d31-f63a01cfec82 + ImporterName: FileTextureImporter + PrimaryAsset: ! 659a0716-80c9-467b-8d31-f63a01cfec82 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Size + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-black.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-black.png new file mode 100644 index 00000000..702f805b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-black.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91cbdad7cfc6b685dfa3dd98752c6de2b01bce379a699f3c79d93b2dded2f8d2 +size 5841 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-black.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-black.png.meta new file mode 100644 index 00000000..23c20f20 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-black.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 9dac95d8-45f0-4521-bd7c-5f0a0449fb10 + ImporterName: FileTextureImporter + PrimaryAsset: ! 9dac95d8-45f0-4521-bd7c-5f0a0449fb10 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white-shadow.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white-shadow.png new file mode 100644 index 00000000..b91fc581 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white-shadow.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9eb29966736b2f246252ab043b5943e93cf1fc049c94ce5f11f9c12ea5136633 +size 9934 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white-shadow.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white-shadow.png.meta new file mode 100644 index 00000000..7b39c668 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white-shadow.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 4323d3e4-ba63-4f75-845f-85d1e68c9e59 + ImporterName: FileTextureImporter + PrimaryAsset: ! 4323d3e4-ba63-4f75-845f-85d1e68c9e59 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white.png new file mode 100644 index 00000000..d1b25100 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfd8e3bd90d28b7f908c256b2296cd92bbb0027423fe49cd6622b2625df13e4a +size 6095 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white.png.meta new file mode 100644 index 00000000..0e9eeb9d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/follow-white.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 38a80afd-b944-4c91-bc1b-8b3e3b07b2ba + ImporterName: FileTextureImporter + PrimaryAsset: ! 38a80afd-b944-4c91-bc1b-8b3e3b07b2ba + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1-cube.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1-cube.png new file mode 100644 index 00000000..e8aaf190 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1-cube.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b249565f48bf47b392849152c008bb4707eed91009d4e81509960440a7529d65 +size 423156 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1-cube.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1-cube.png.meta new file mode 100644 index 00000000..33d7b3fe --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1-cube.png.meta @@ -0,0 +1,18 @@ +- ! + ImportedAssetIds: + Texture: ! b9152339-32ec-4c08-b30a-839b0c131b06 + ImporterName: FileTextureImporter + PrimaryAsset: ! b9152339-32ec-4c08-b30a-839b0c131b06 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1.jpg new file mode 100644 index 00000000..9b562422 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb79debd1ea7a841eed24517f6a7e2a9a375267893da451aaf5a05f664c1dfab +size 21057 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1.jpg.meta new file mode 100644 index 00000000..0a6f0207 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/reflection-map-1.jpg.meta @@ -0,0 +1,18 @@ +- ! + ImportedAssetIds: + Texture: ! b602e9a0-f2ff-435d-aec2-fce5eb07c4ba + ImporterName: FileTextureImporter + PrimaryAsset: ! b602e9a0-f2ff-435d-aec2-fce5eb07c4ba + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + CompressorName: None + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/soft-reflection.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/soft-reflection.jpg new file mode 100644 index 00000000..7cf2eb71 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/soft-reflection.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7debbb5331cbba64080e43eac0102debe4edc2fc0922d18785b516c6a4a3939a +size 9513 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/soft-reflection.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/soft-reflection.jpg.meta new file mode 100644 index 00000000..6ce157d2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/Textures/soft-reflection.jpg.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 165a47ec-9edf-426b-b3fa-4c00cb192365 + ImporterName: FileTextureImporter + PrimaryAsset: ! 165a47ec-9edf-426b-b3fa-4c00cb192365 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! + Level: Medium + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/container-ui.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/container-ui.png new file mode 100644 index 00000000..662c36d9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/container-ui.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee3080c80fd8dcb0c97b01b1affaa7e1033ab491b790434d12793c682829dfde +size 113813 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/container-ui.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/container-ui.png.meta new file mode 100644 index 00000000..5340ac02 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/container-ui.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 0434ca42-6607-4b63-b843-af63f9648134 + ImporterName: FileTextureImporter + PrimaryAsset: ! 0434ca42-6607-4b63-b843-af63f9648134 + PackageType: NotAPackage + AssetDataMap: + {} + ImporterSettings: ! + {} + CompressionSettings: ! + CompressionSettings: ! + Level: Medium + CompressorName: Size + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/CursorHandler.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/CursorHandler.ts new file mode 100644 index 00000000..ffa6a808 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/CursorHandler.ts @@ -0,0 +1,149 @@ +import { + CursorMode, + InteractorCursor, +} from "../../../../Components/Interaction/InteractorCursor/InteractorCursor" +import NativeLogger from "../../../../Utils/NativeLogger" +import {validate} from "../../../../Utils/validate" +import {ContainerFrame, InputState} from "../ContainerFrame" +import {FrameState} from "./FrameInputHandler" + +const log = new NativeLogger("CursorManager") + +export type CursorManagerOptions = { + interactorCursor?: InteractorCursor + target: SceneObject + frame: ContainerFrame + margin: number +} + +export enum CursorModes { + auto = 0, + scaleTlBr = 1, + scaleTrBl = 2, + translate = 3, +} + +export class CursorHandler { + /** + * + * Manages custom cursor states + * used for indicating contextual functionality + * swaps textures + * animates effects + * + */ + + /** + * mode is used to select the current active texture + * updated in ContainerFrame update loop to match the FrameInputController state + */ + mode: CursorMode = CursorMode.Auto + private lastMode: CursorMode = this.mode + private target: SceneObject = this.options.target + private targetTransform: Transform = this.target.getTransform() + private frame: ContainerFrame = this.options.frame + private parentTransform: Transform | undefined = + this.frame.object?.getTransform() + private lockMode: boolean = false + private lockPosition: vec3 = vec3.zero() + private margin: number = this.options.margin + private interactorCursor: InteractorCursor | null = null + + private _enabled: boolean = false + + constructor(private options: CursorManagerOptions) { + this.interactorCursor = options.interactorCursor ?? null + } + + /** + * sets current position of cursor + * ignored if cursor is in lockMode + */ + set position(pos: vec3 | null) { + if (!this.lockMode && this.interactorCursor) { + this.interactorCursor.cursorPosition = pos + } + } + + /** + * update + * @param inputState + * @param frameState + * + * method called in main loop + * watches for changed CursorModes to swap textures + * updates position and triggers animations + */ + + update = (inputState: InputState, frameState: FrameState) => { + if (!this.interactorCursor) { + return + } + + validate(this.parentTransform) + + if (this.lockMode) { + const ogScale = this.parentTransform.getWorldScale() + const tempScale = new vec3( + this.frame.innerSize.x + + this.frame.constantPadding.x + + this.frame.border * 2, + this.frame.innerSize.y + + this.frame.constantPadding.y + + this.frame.border * 2, + 1 + ) + this.parentTransform.setWorldScale(tempScale) + const tempWorld = this.parentTransform.getWorldTransform() + const lockedPosition = tempWorld.multiplyPoint(this.lockPosition) + this.parentTransform.setWorldScale(ogScale) + this.interactorCursor.cursorPosition = lockedPosition + } else { + // use default position, without override + this.interactorCursor.cursorPosition = null + } + + // prevent switching to translate while over inner interactables + if (!inputState.isHovered) { + this.mode = CursorMode.Auto + } + // handle switching cursors + if (this.mode !== this.lastMode && !this.lockMode) { + this.interactorCursor.cursorMode = this.mode + this.lastMode = this.mode + } + + if (frameState.scaling && !this.lockMode) { + this.lockMode = true + this.lockPosition = inputState.position + } + + if (!frameState.scaling && this.lockMode) { + this.lockMode = false + this.resetCursor() + } + } + + /** + * Sets the InteractorCursor for the handler to control. + * @param cursor + */ + setCursor(cursor: InteractorCursor | null): void { + if (this.interactorCursor !== cursor && this.interactorCursor) { + this.resetCursor() + } + this.interactorCursor = cursor + } + + /** + * Reset the position override & mode of the interactor cursor. + */ + resetCursor() { + if (this.interactorCursor) { + this.interactorCursor.cursorMode = CursorMode.Auto + this.interactorCursor.cursorPosition = null + } + this.lastMode = CursorMode.Auto + this.mode = CursorMode.Auto + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/CursorHandler.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/CursorHandler.ts.meta new file mode 100644 index 00000000..b9e478f1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/CursorHandler.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! b8f7da42-f5ed-4473-9d34-8ffa198f4e1b + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! b8f7da42-f5ed-4473-9d34-8ffa198f4e1b + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 65187ddb-6a99-4f74-9d8f-0a30055e6a6d + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/ForceContainerParent.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/ForceContainerParent.ts new file mode 100644 index 00000000..435724e1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/ForceContainerParent.ts @@ -0,0 +1,28 @@ +export type ContainerParentConfig = { + target: SceneObject +} + +// auto parenting +// to prevent collisions with existing ancestry +// hardcoded hash appended to name used across container components +// generated beforehand and will remain static, actual values not important, except that they match across components +const SECRET_HASH = "a43675b3f" +export const FRAME_PARENT_NAME = "ContainerParent" + SECRET_HASH +export const forceContainerParent = ( + options: ContainerParentConfig +): SceneObject => { + const thisObject = options.target + const currentParent = thisObject.getParent() + let containerParent: SceneObject + if (currentParent === null || currentParent?.name !== FRAME_PARENT_NAME) { + containerParent = global.scene.createSceneObject(FRAME_PARENT_NAME) + if (currentParent !== null) { + containerParent.setParent(currentParent) + } + thisObject.setParentPreserveWorldTransform(containerParent) + } else { + containerParent = currentParent + } + + return containerParent +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/ForceContainerParent.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/ForceContainerParent.ts.meta new file mode 100644 index 00000000..eb982db6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/ForceContainerParent.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 05f7137c-4023-46ff-8668-3e766d4a236f + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 05f7137c-4023-46ff-8668-3e766d4a236f + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 6ab67a7c-a51f-42c6-846a-839001a0594e + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/FrameInputHandler.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/FrameInputHandler.ts new file mode 100644 index 00000000..1c37c37a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/FrameInputHandler.ts @@ -0,0 +1,347 @@ +import {InteractableManipulation} from "../../../../Components/Interaction/InteractableManipulation/InteractableManipulation" +import {CursorMode} from "../../../../Components/Interaction/InteractorCursor/InteractorCursor" +import Event from "../../../../Utils/Event" +import NativeLogger from "../../../../Utils/NativeLogger" +import {ContainerFrame, InputState} from "../ContainerFrame" +import {CursorHandler} from "./CursorHandler" + +const TAG = "FrameInputController" +const log = new NativeLogger(TAG) + +export type FrameInputOptions = { + frame: ContainerFrame + manipulate: InteractableManipulation + target: SceneObject + parentTransform: Transform + cursorHandler: CursorHandler + isInteractable: boolean + scaleSpeed: number | undefined + allowScaling: boolean + allowScalingTopLeft?: boolean + allowScalingTopRight?: boolean + minimumSize?: vec2 + maximumSize?: vec2 +} + +/** + * + * Which state is the input handler in currently + * + */ +export type FrameState = { + scaling: boolean + translating: boolean + rotating: boolean + ignoring: boolean + interacting: boolean + hoveringInteractable: boolean +} + +/** + * + * Container Frame Input Modes + * Auto ( no explicit mode ) + * Scaling ( with corners defined ) + * Rotating + * Translating + * + */ +export enum Modes { + Auto = "auto", + ScaleTopLeft = "scaleTopLeft", + ScaleBottomRight = "scaleBottomRight", + ScaleTopRight = "scaleTopRight", + ScaleBottomLeft = "scaleBottomLeft", + Translating = "translating", +} + +// affects speed of scaling +const SCALE_AMPLIFIER = 0.2 + +export class FrameInputHandler { + /** + * + * This class takes the inputs from the raycaster + * and uses it to control the frame manipulations + * as well as provide that information to visual affordances + * + */ + private edge: number = 0.5 + gutterSize: vec2 = new vec2(0.08, 0.08) + allowScaling: boolean = this.options.allowScaling + allowScalingTopLeft: boolean = this.options.allowScalingTopLeft ?? true + allowScalingTopRight: boolean = this.options.allowScalingTopRight ?? true + private corner: vec2 = new vec2(1, 1) + private aspect: vec2 = new vec2(1, 1) + private frame: ContainerFrame = this.options.frame + private parentTransform: Transform = this.options.parentTransform + private manipulate: InteractableManipulation = this.options.manipulate + private target: SceneObject = this.options.target + private targetTransform: Transform = this.target.getTransform() + private targetWorldScaleCache: vec3 = this.targetTransform.getWorldScale() + private lastTouch = vec3.zero() + lastHovered: boolean = false + private scalingStarted: boolean = false + private cursorHandler = this.options.cursorHandler + private mode: Modes = Modes.Auto + readonly state: FrameState = { + rotating: false, + scaling: false, + translating: false, + ignoring: false, + hoveringInteractable: false, + interacting: false, + } + + private onTranslationStartEvent = new Event() + /** + * Callback for when translation begins + * + * NOTE: The reason we need to add this event in FrameInputHandler, instead of relying on the container frame's + * internal InteractableManipulation component is because the way this class keeps track of state means that + * we don't set the InteractableManipulation's canTranslate property until after the user has started translating, + * which has the effect of causing InteractableManipulation to NOT invoke the onTranslationStart event. + */ + onTranslationStart = this.onTranslationStartEvent.publicApi() + + private onTranslationEndEvent = new Event() + /** + * Callback for when translation ends + */ + onTranslationEnd = this.onTranslationEndEvent.publicApi() + + minimumSize: vec2 = + this.targetWorldScaleCache.x > this.targetWorldScaleCache.y + ? new vec2( + 3, + (3 * this.targetWorldScaleCache.y) / this.targetWorldScaleCache.x + ) + : new vec2( + (3 * this.targetWorldScaleCache.x) / this.targetWorldScaleCache.y, + 3 + ) + + maximumSize: vec2 = + this.targetWorldScaleCache.x > this.targetWorldScaleCache.y + ? new vec2( + 400, + (400 * this.targetWorldScaleCache.y) / this.targetWorldScaleCache.x + ) + : new vec2( + (400 * this.targetWorldScaleCache.x) / this.targetWorldScaleCache.y, + 400 + ) + + constructor(private options: FrameInputOptions) { + if (this.options.minimumSize) { + this.minimumSize = this.options.minimumSize + } + if (this.options.maximumSize) { + this.maximumSize = this.options.maximumSize + } + } + + /* + * Helper for programatic components + */ + private get isInteractable(): boolean { + return this.options.isInteractable + } + + private get scaleAmplifier(): number { + return this.options.scaleSpeed ?? SCALE_AMPLIFIER + } + + update = (inputState: InputState) => { + const touch = inputState.position + this.state.hoveringInteractable = false + if ( + touch.x < -this.edge + this.gutterSize.x && + touch.y < -this.edge + this.gutterSize.y && + this.allowScaling + ) { + this.mode = Modes.ScaleBottomLeft + } else if ( + touch.x < -this.edge + this.gutterSize.x && + touch.y > this.edge - this.gutterSize.y && + this.allowScaling + ) { + if (this.allowScalingTopLeft) { + this.mode = Modes.ScaleTopLeft + } else { + this.state.ignoring = true + } + } else if ( + touch.x > this.edge - this.gutterSize.x && + touch.y < -this.edge + this.gutterSize.y && + this.allowScaling + ) { + this.mode = Modes.ScaleBottomRight + } else if ( + touch.x > this.edge - this.gutterSize.x && + touch.y > this.edge - this.gutterSize.y && + this.allowScaling + ) { + if (this.allowScalingTopRight) { + this.mode = Modes.ScaleTopRight + } else { + this.state.ignoring = true + } + } else if (touch.x > this.edge - this.gutterSize.x) { + // right edge + this.mode = Modes.Translating + } else if (touch.x < -this.edge + this.gutterSize.x) { + // left edge + this.mode = Modes.Translating + } else if (touch.y < -this.edge + this.gutterSize.y) { + // bottom edge + this.mode = Modes.Translating + } else if (touch.y > this.edge - this.gutterSize.y) { + // top edge + this.mode = Modes.Translating + } else { + // not in corner or on edge + + if (this.isInteractable === false) { + this.mode = Modes.Translating + } else if ( + !this.state.ignoring && + !this.state.scaling && + !this.state.translating + ) { + // hovering interactable + this.mode = Modes.Auto + + if (inputState.rawHovered) { + this.state.hoveringInteractable = true + } else { + this.state.hoveringInteractable = false + } + } + } + + if (inputState.isPinching) { + if ( + !this.state.ignoring && + !this.state.scaling && + !this.state.translating && + !this.state.rotating && + !this.state.interacting + ) { + // if pinching and not already in am ode + if (this.mode === Modes.ScaleBottomLeft) { + this.corner.x = -1 + this.corner.y = -1 + this.startScaling(touch) + } else if (this.mode === Modes.ScaleTopLeft) { + this.corner.x = -1 + this.corner.y = 1 + this.startScaling(touch) + } else if (this.mode === Modes.ScaleBottomRight) { + this.corner.x = 1 + this.corner.y = -1 + this.startScaling(touch) + } else if (this.mode === Modes.ScaleTopRight) { + this.corner.x = 1 + this.corner.y = 1 + this.startScaling(touch) + } else if (this.mode === Modes.Translating) { + this.setStateTranslating(true) + } else { + // touching but not in corner or on edge + if (this.isInteractable === false) { + // content is not interactable, activating translation + this.setStateTranslating(true) + } else { + // content is interactable + this.state.interacting = true + } + } + } + } else { + if (this.state.scaling) { + // end scaling + this.frame.onScalingEnd.invoke() + } + + this.setStateTranslating(false) + this.state.scaling = false + this.state.rotating = false + this.state.ignoring = false + this.state.interacting = false + this.lastTouch = vec3.zero() + } + + if (this.frame.forceTranslate) { + this.mode = Modes.Translating + this.setStateTranslating(true) + } + + if ( + (this.frame.allowTranslation && this.state.translating) || + this.frame.forceTranslate + ) { + this.manipulate.setCanTranslate(true) + } else if (this.manipulate.canTranslate()) { + this.manipulate.setCanTranslate(false) + } + + // + // handle cursor swaps + if (!this.state.scaling || !this.state.translating) { + if (!this.state.interacting) { + if ( + this.mode === Modes.ScaleBottomLeft || + this.mode === Modes.ScaleTopRight + ) { + this.cursorHandler.mode = CursorMode.ScaleTopRight + } else if ( + this.mode === Modes.ScaleBottomRight || + this.mode === Modes.ScaleTopLeft + ) { + this.cursorHandler.mode = CursorMode.ScaleTopLeft + } else if ( + this.mode === Modes.Translating && + (this.frame.allowTranslation || this.frame.forceTranslate) + ) { + this.cursorHandler.mode = CursorMode.Translate + } else { + this.cursorHandler.mode = CursorMode.Auto + } + } + + if (!this.state.scaling) { + this.lastTouch = vec3.zero() + } + + if (this.lastHovered === false && inputState.isHovered) { + inputState.isHovered = false + } + + if (this.lastHovered === true && !inputState.isHovered) { + inputState.isHovered = true + } + + this.lastHovered = false + } + } + + private startScaling = (touchPosition: vec3) => { + this.lastTouch = touchPosition + this.state.scaling = true + this.frame.scalingSizeStart = this.frame.innerSize.uniformScale(1) + this.frame.onScalingStart.invoke() + } + + private setStateTranslating(isTranslating: boolean) { + if (isTranslating === this.state.translating) { + return + } + + this.state.translating = isTranslating + + this.state.translating + ? this.onTranslationStartEvent.invoke() + : this.onTranslationEndEvent.invoke() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/FrameInputHandler.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/FrameInputHandler.ts.meta new file mode 100644 index 00000000..e9a87ee6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/FrameInputHandler.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! fc8a63e6-ab4a-42a6-bbfa-3acd99a54fc7 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! fc8a63e6-ab4a-42a6-bbfa-3acd99a54fc7 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 47831816-f086-44ad-bfcd-2571ee35e150 + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/HoverBehavior.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/HoverBehavior.ts new file mode 100644 index 00000000..6cb82950 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/HoverBehavior.ts @@ -0,0 +1,194 @@ +import {Interactable} from "../../../../Components/Interaction/Interactable/Interactable" +import {InteractorEvent} from "../../../../Core/Interactor/InteractorEvent" +import Event, {unsubscribe} from "../../../../Utils/Event" +import NativeLogger from "../../../../Utils/NativeLogger" +import StateMachine from "../../../../Utils/StateMachine" + +const TAG = "HoverBehavior" + +enum State { + Inactive = "Inactive", + InactiveToActive = "InactiveToActive", + Active = "Active", + ActiveToInactive = "ActiveToInactive", +} + +enum Signal { + RequestActive = "RequestActive", + RequestInActive = "RequestInActive", +} + +const STATE_CHANGE_DEBOUNCE_TIME_S = 0.05 // 50ms + +const DEBUG_MESSAGES = false + +/** + * Behavior for handling nested interactable hover events + */ +export class HoverBehavior { + private hoverStart = new Event() + public onHoverStart = this.hoverStart.publicApi() + + private hoverEnd = new Event() + public onHoverEnd = this.hoverEnd.publicApi() + + private hoverUpdate = new Event() + public onHoverUpdate = this.hoverUpdate.publicApi() + + private stateMachine = new StateMachine(this.name) + private isActive = false + private requestActive = false + + private eventData!: InteractorEvent + + private unsubscribeList: unsubscribe[] = [] + private isDestroyed: boolean = false + + private log = new NativeLogger(TAG) + + constructor( + private interactable: Interactable, + private name: string = "HoverBehavior" + ) { + this.setupStateMachine() + + this.bindHoverEvents() + + this.stateMachine.enterState(State.Inactive) + } + + destroy(): void { + this.log.d(`has been destroyed!`) + this.isDestroyed = true + this.unBindHoverEvents() + } + + private bindHoverEvents(): void { + this.unsubscribeList.push(this.interactable.onHoverEnter(this.onHoverEnter)) + this.unsubscribeList.push(this.interactable.onHoverExit(this.onHoverExit)) + this.unsubscribeList.push( + this.interactable.onHoverUpdate(this.onHoverUpdated) + ) + } + + private unBindHoverEvents(): void { + this.unsubscribeList.forEach((sub) => { + sub() + }) + this.unsubscribeList = [] + } + + private onHoverEnter = (eventData: InteractorEvent): void => { + this.requestActive = true + this.eventData = eventData + } + + private onHoverExit = (eventData: InteractorEvent): void => { + this.requestActive = false + this.eventData = eventData + } + + private onHoverUpdated = (eventData: InteractorEvent): void => { + this.eventData = eventData + } + + lateUpdate = (): void => { + if (this.isActive !== this.requestActive) { + if (DEBUG_MESSAGES) { + this.log.d(`container requested active state:${this.requestActive}`) + } + this.stateMachine.sendSignal( + this.requestActive ? Signal.RequestActive : Signal.RequestInActive + ) + } + + // Update actual state immediately + this.isActive = this.requestActive + } + + private setupStateMachine(): void { + // Inactive State + this.stateMachine.addState({ + name: State.Inactive, + onEnter: (state) => { + this.hoverEnd.invoke(this.eventData) + }, + transitions: [ + { + nextStateName: State.InactiveToActive, + checkOnSignal: (signal, data) => { + return signal === Signal.RequestActive + }, + }, + ], + }) + + // Inactive Transition State + this.stateMachine.addState({ + name: State.InactiveToActive, + transitions: [ + { + nextStateName: State.Inactive, + checkOnSignal: (signal, data) => { + return signal === Signal.RequestInActive + }, + }, + { + nextStateName: State.Active, + checkOnUpdate: (state) => { + return state.stateElapsedTime > STATE_CHANGE_DEBOUNCE_TIME_S + }, + }, + ], + }) + + // Active State + this.stateMachine.addState({ + name: State.Active, + onEnter: (state) => { + this.hoverStart.invoke(this.eventData) + }, + onUpdate: (state) => { + if (this.isDestroyed) { + this.log.d("Already destroyed!") + return + } + + try { + this.hoverUpdate.invoke(this.eventData) + } catch (e) { + // If we arrive here, the script is dead and will be cleaned up eventually + // Any calls that cross the native boundry could throw an exception + this.log.e("Error invoking hoverUpdate!") + } + }, + transitions: [ + { + nextStateName: State.ActiveToInactive, + checkOnSignal: (signal, data) => { + return signal === Signal.RequestInActive + }, + }, + ], + }) + + // Active Transition State + this.stateMachine.addState({ + name: State.ActiveToInactive, + transitions: [ + { + nextStateName: State.Inactive, + checkOnUpdate: (state) => { + return state.stateElapsedTime > STATE_CHANGE_DEBOUNCE_TIME_S + }, + }, + { + nextStateName: State.Active, + checkOnSignal: (signal, data) => { + return signal === Signal.RequestActive + }, + }, + ], + }) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/HoverBehavior.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/HoverBehavior.ts.meta new file mode 100644 index 00000000..8d291655 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/HoverBehavior.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 39c8b7df-5161-415a-9548-e9dd3cf41eb0 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 39c8b7df-5161-415a-9548-e9dd3cf41eb0 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 96c78815-237f-43a6-9a83-279da2b5aeac + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/LabeledPinchButton.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/LabeledPinchButton.ts new file mode 100644 index 00000000..1ccd46a9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/LabeledPinchButton.ts @@ -0,0 +1,155 @@ +import {Interactable} from "../../../../Components/Interaction/Interactable/Interactable" +import {PinchButton} from "../../../../Components/UI/PinchButton/PinchButton" +import {InteractorEvent} from "../../../../Core/Interactor/InteractorEvent" +import Event, {PublicApi} from "../../../../Utils/Event" +import NativeLogger from "../../../../Utils/NativeLogger" +import {validate} from "../../../../Utils/validate" + +const log = new NativeLogger("LabeledPinchButton") + +export type LabeledPinchButtonOptions = { + parent: SceneObject + prefab: ObjectPrefab + labels: Texture[] + toggle?: boolean + defaultColor?: vec4 + hoverColor?: vec4 + triggerColor?: vec4 +} + +export class LabeledPinchButton { + defaultColor: vec4 = this.options.defaultColor || new vec4(0.5, 0.5, 0.5, 1) + hoverColor: vec4 = this.options.hoverColor || new vec4(0.9, 0.8, 0.2, 1) + triggerColor: vec4 = this.options.triggerColor || new vec4(0.8, 0.7, 0.2, 1) + private labeledPinchButtonPrefab: ObjectPrefab + object: SceneObject + private isToggle = this.options.toggle ?? false + toggled = false + private interactable: Interactable | null + private pinchButton: PinchButton | null + private triggerEvent: Event = new Event() + onTrigger: PublicApi = this.triggerEvent.publicApi() + + private colors: {[index: string]: vec4[]} = { + default: [this.defaultColor], + hover: [this.hoverColor], + trigger: [this.triggerColor], + } + + transform: Transform + alpha: number = 1 + private rmv: RenderMeshVisual + private material: Material + private baseAlpha: number + private labels = this.options.labels + private _labelIndex: number = 0 + + constructor(private options: LabeledPinchButtonOptions) { + this.labeledPinchButtonPrefab = options.prefab + this.object = this.labeledPinchButtonPrefab.instantiate(null) + this.interactable = this.object.getComponent(Interactable.getTypeName()) + this.pinchButton = this.object.getComponent(PinchButton.getTypeName()) + + validate(this.interactable) + validate(this.pinchButton) + + this.transform = this.object.getTransform() + + this.rmv = this.object.getComponent("Component.RenderMeshVisual") + this.material = this.rmv.mainMaterial.clone() + this.baseAlpha = this.material.mainPass.alpha as number + this.material.mainPass.icon = this.labels[this.labelIndex] + this.material.mainPass.hoverColor = this.hoverColor + this.material.mainPass.isToggle = this.isToggle ? 1 : 0 + + this.rmv.mainMaterial = this.material + this.object.setParent(this.options.parent) + + this.setupButtonTrigger() + + this.setColor("default") + + this.interactable.onHoverEnter.add(() => { + if (!this.toggled) { + this.setColor("hover") + } else { + this.material.mainPass.hovered = 1 + } + }) + this.interactable.onHoverExit.add(() => { + if (!this.isToggle) { + this.setColor("default") + } else { + if (this.toggled) { + this.setColor("trigger") + } else { + this.setColor("default") + } + } + this.material.mainPass.hovered = 0 + }) + } + + setRenderOrder = (newOrder: number) => { + this.rmv.setRenderOrder(newOrder) + } + + setAlpha = (alpha: number) => { + this.alpha = alpha + this.material.mainPass.alpha = this.baseAlpha * this.alpha + } + + setColor = (state: string) => { + const [color] = this.colors[state] + this.material.mainPass.baseColor = color + if (state === "trigger") { + this.material.mainPass.triggered = 1 + } else { + this.material.mainPass.triggered = 0 + } + } + + setTexture = (labelIndex: number) => { + this._labelIndex = labelIndex + this.material.mainPass.icon = this.labels[this._labelIndex] + } + + get labelIndex() { + return this._labelIndex + } + + private setupButtonTrigger = () => { + validate(this.interactable) + + let isTriggered = false + this.interactable.onTriggerStart.add((e: InteractorEvent) => { + e.stopPropagation() + this.setColor("trigger") + this.rmv.setBlendShapeWeight("Pinch", 1) + isTriggered = true + }) + this.interactable.onTriggerEnd.add((e: InteractorEvent) => { + e.stopPropagation() + this.rmv.setBlendShapeWeight("Pinch", 0) + if (isTriggered) { + this.triggerEvent.invoke() + if (!this.isToggle) { + this.setColor("hover") + } else { + if (!this.toggled) this.setColor("hover") + } + } + isTriggered = false + }) + this.interactable.onTriggerCanceled.add(() => { + this.rmv.setBlendShapeWeight("Pinch", 0) + isTriggered = false + }) + } + + setIconScale = (scale: vec2) => { + this.material.mainPass.iconScale = scale + } + + getInteractable = () => this.interactable +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/LabeledPinchButton.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/LabeledPinchButton.ts.meta new file mode 100644 index 00000000..ad5a8057 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/LabeledPinchButton.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 2caed9d2-942f-44c3-b753-c8ad5e32e022 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 2caed9d2-942f-44c3-b753-c8ad5e32e022 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! d36e98f5-ab77-49dc-a91d-652fc00ec938 + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SimpleLODRenderMeshVisual/SimpleLODRenderMeshVisual.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SimpleLODRenderMeshVisual/SimpleLODRenderMeshVisual.ts new file mode 100644 index 00000000..810d54b9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SimpleLODRenderMeshVisual/SimpleLODRenderMeshVisual.ts @@ -0,0 +1,103 @@ +import NativeLogger from "../../../../../Utils/NativeLogger" +import WorldCameraFinderProvider from "../../../../../Providers/CameraProvider/WorldCameraFinderProvider" +import {validate} from "../../../../../Utils/validate" + +const log = new NativeLogger("SimpleLODRMV") +const DEFAULT_SPACER = 50 + +/** + * This class provides a naive and simple Level Of Detail (LOD) implementation for RenderMeshVisual. It switches between different meshes based on the distance from the camera to the center of the object. The class does not support fading between meshes, but simply switches to the defined mesh at the specified depth. + * + * USAGE: + * - Drop this component onto a scene object. + * - Add meshes to the meshes array. + * - Select thresholds at the given index (or else it falls back to default). + * - Add the material that is shared across the RenderMeshVisuals. + */ +@component +export class SimpleLODRenderMeshVisual extends BaseScriptComponent { + @input() + meshes: RenderMesh[] = [] + @input() + thresholds: number[] = [] + @input() + material!: Material + + private rmvs: RenderMeshVisual[] = [] + private distances: number[] = [] + private object: SceneObject | undefined + private transform: Transform | undefined + private worldCamera: WorldCameraFinderProvider = + WorldCameraFinderProvider.getInstance() + private cameraTransform: Transform = this.worldCamera.getTransform() + private currentIndex: number = 0 + + onAwake() { + this.object = this.getSceneObject() + this.transform = this.object.getTransform() + const clonedMaterial = this.material.clone() + + for (let i = 0; i < this.meshes.length; i++) { + const distanceMesh = this.meshes[i] + const thisRMV = this.object.createComponent("RenderMeshVisual") + thisRMV.mesh = distanceMesh + thisRMV.mainMaterial = clonedMaterial + thisRMV.enabled = false + this.rmvs.push(thisRMV) + this.addDistance(this.thresholds[i] ? this.thresholds[i] : DEFAULT_SPACER) + } + + this.rmvs[this.currentIndex].enabled = true + + this.createEvent("UpdateEvent").bind(this.update) + } + + setRenderOrder = (order: number) => { + for (let i = 0; i < this.rmvs.length; i++) { + const thisRmv = this.rmvs[i] + thisRmv.setRenderOrder(order) + } + } + + addDistance = (distance: number) => { + let lastDistance = 0 + if (this.distances.length) { + lastDistance = this.distances[this.distances.length - 1] + } + + this.distances.push(distance + lastDistance) + } + + update = () => { + validate(this.transform) + // + // check and compare distances from camera + // + const currentDistanceSquared = this.cameraTransform + .getWorldPosition() + .distanceSquared(this.transform.getWorldPosition()) + let from = 0 + let thisIndex = 0 + let to + while (thisIndex < this.distances.length) { + to = this.distances[thisIndex] * this.distances[thisIndex] + if (currentDistanceSquared >= from && currentDistanceSquared < to) { + break + } else { + from = to + thisIndex += 1 + } + } + + // + // if at a new threshold, swap the active rmv + // + if (thisIndex < this.rmvs.length && this.currentIndex !== thisIndex) { + this.currentIndex = thisIndex + for (let rmv of this.rmvs) { + rmv.enabled = false + } + this.rmvs[this.currentIndex].enabled = true + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SimpleLODRenderMeshVisual/SimpleLODRenderMeshVisual.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SimpleLODRenderMeshVisual/SimpleLODRenderMeshVisual.ts.meta new file mode 100644 index 00000000..7ea6993b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SimpleLODRenderMeshVisual/SimpleLODRenderMeshVisual.ts.meta @@ -0,0 +1,46 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 641bbf2b-86e0-4512-81ce-2685a349a2c7 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 641bbf2b-86e0-4512-81ce-2685a349a2c7 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! f9bebe37-b676-4133-8698-f5a9790a816a + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + - "// @input Asset.RenderMesh[] meshes" + - "// @input float[] thresholds" + - // @input Asset.Material material + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + material: false + meshes: false + thresholds: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - meshes: ! + [] + material: ! 00000000-0000-0000-0000-000000000000 + thresholds: ! + [] + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SmoothFollow.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SmoothFollow.ts new file mode 100644 index 00000000..638a2b32 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SmoothFollow.ts @@ -0,0 +1,211 @@ +import {setTimeout} from "../../../../Utils/debounce" +import { + clamp, + DegToRad, + smoothDamp, + smoothDampAngle, +} from "../../../../Utils/mathUtils" +import {validate} from "../../../../Utils/validate" +import {ContainerFrame} from "../ContainerFrame" + +export class SmoothFollowOptions { + public frame: ContainerFrame + constructor(frame: ContainerFrame) { + this.frame = frame + } +} + +/** + * SmoothFollow is a body dynamic behavior which when applied to a scene object, + * makes it stay in the same relative horizontal position and distance to the + * user's field of view as they turn their head left and right and move around. + * It doesn't affect the positioning of the scene object when the user looks up + * and down or changes elevation. Interpolation is handled by a spring-damper + * in cylindrical coordinates. + */ +export class SmoothFollow { + private frame: ContainerFrame = this.options.frame + private mainCamera: Camera = this.frame.worldCamera + private cameraTransform: Transform = this.mainCamera.getTransform() + private transform: Transform | undefined = this.frame.parentTransform + private fieldOfView: number = 26 + private visibleWidth: number = 20 + private minDistance: number = 25 + private maxDistance: number = 110 + private minElevation: number = -40 + private maxElevation: number = 40 + private translationTime: number = 0.35 + private rotationTime: number = 0.55 + + private target: vec3 // cylindrical coords of where the follower wants to be + private velocity: vec3 // current velocity of follower in cylindrical space + private omega: number // current rotational velocity of the follower's heading + private heading: number // current direction the follower is facing in world space, with -z being 0 + private initialRot: quat // original orientation of the follower that the dynamic heading is applied to + private dragging: boolean // to reposition the follow position, the manipulator will turn this on then back off + + constructor(private options: SmoothFollowOptions) { + validate(this.transform) + + this.target = vec3.zero() + this.velocity = vec3.zero() + this.omega = 0 + this.heading = 0 + this.dragging = false + this.initialRot = this.transform.getLocalRotation() + this.heading = this.cameraHeading + + this.worldRot = quat + .angleAxis(this.heading, vec3.up()) + .multiply(this.initialRot) + this.resize( + this.frame.innerSize.x + + this.frame.border * 2 + + this.frame.constantPadding.x + ) + setTimeout(() => { + this.clampPosition() + }, 32) + } + + startDragging(): void { + this.dragging = true + } + + finishDragging(): void { + this.dragging = false + this.clampPosition() + } + + resize(visibleWidth: number): void { + this.visibleWidth = visibleWidth + this.clampPosition() + } + + private clampPosition(): void { + // the initial goal of the follower is whereever it is relative to the + // camera when the component gets enabled. the grab bar works by disabling + // this component when grabbed, and reenables it when let go. + + if (this.dragging) return // skip while actively scaling + + this.target = this.cartesianToCylindrical(this.worldToBody(this.worldPos)) + + this.target.z = clamp(this.target.z, this.minDistance, this.maxDistance) + this.target.z = Math.max( + this.target.z, + (1.1 * this.visibleWidth) / + 2 / + Math.tan((this.fieldOfView / 2) * DegToRad) + ) // handle very wide panels + this.target.y = clamp(this.target.y, this.minElevation, this.maxElevation) + const dist = new vec2(this.target.y, this.target.z).length + const halfFov = Math.atan( + (Math.tan((this.fieldOfView / 2) * DegToRad) * dist - + this.visibleWidth / 2) / + this.target.z + ) + this.target.x = clamp(this.target.x, -halfFov, halfFov) + this.velocity = vec3.zero() + this.omega = 0 + } + + onUpdate() { + if (!this.dragging) { + const pos = this.cartesianToCylindrical(this.worldToBody(this.worldPos)) + + // y is special because target elevation is leashed between a range of values, + // rather + ImportedAssetIds: + TypeScriptAsset: ! 43ab76e9-da0d-4d18-aaeb-c0abad190f9d + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 43ab76e9-da0d-4d18-aaeb-c0abad190f9d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 46e614b9-2a7b-43c5-b0dd-beeed28e1c06 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SnappableBehavior.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SnappableBehavior.ts new file mode 100644 index 00000000..70ee5115 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SnappableBehavior.ts @@ -0,0 +1,892 @@ +import {Interactable} from "../../../../Components/Interaction/Interactable/Interactable" +import {InteractableManipulation} from "../../../../Components/Interaction/InteractableManipulation/InteractableManipulation" +import {InteractorEvent} from "../../../../Core/Interactor/InteractorEvent" +import TrackedHand from "../../../../Providers/HandInputData/TrackedHand" +import animate, {CancelSet, mix} from "../../../../Utils/animate" +import {setTimeout} from "../../../../Utils/debounce" +import Event, {unsubscribe} from "../../../../Utils/Event" +import NativeLogger from "../../../../Utils/NativeLogger" + +import {InteractorInputType} from "../../../../Core/Interactor/Interactor" +import {HandInputData} from "../../../../Providers/HandInputData/HandInputData" +import {validate} from "../../../../Utils/validate" +import {ContainerFrame} from "../ContainerFrame" + +const TAG = "SnappableBehavior" +const log = new NativeLogger(TAG) + +export type SnappableOptions = { + frame: ContainerFrame + worldSnapping: boolean + itemSnapping: boolean +} + +// A variable for 'up' (but not exactly up) We can't have it be exactly up because when +// we do a cross to get our angles and our raycast result points straiught up we cross two +// vectors that are the same and it won't give us a sane result +const NOT_QUITE_UP = new vec3(0.0000001, 0.9999999, 0.0000001).normalize() + +/* + * Class for the snapping behavior of quickview items + * Specifically implemented for 2D content... so far! + * + */ + +export class SnappableBehavior { + stickyZoneSize: number = 1 + gutterSize: number = 4 + ghostMaterial: Material = requireAsset( + "../Materials/Ghost Material.mat" + ) as Material + snappableDebugDraw: boolean = false + private frame: ContainerFrame = this.options.frame + private frameTransform: Transform | undefined = this.frame + .getFrameObject() + ?.getTransform() + + private content: SceneObject | null = this.frame.getTargetObject() + private parent: SceneObject | null = this.content?.getParent() ?? null + private parentTransform: Transform | null = + this.parent?.getTransform() ?? null + private parentParent: SceneObject | null = this.parent + ? this.parent.getParent() + : null + private contentTransform: Transform | null = + this.content?.getTransform() ?? null + private contentPosition: vec3 | null = + this.contentTransform?.getWorldPosition() ?? null + private scale: vec3 | null = this.contentTransform?.getWorldScale() ?? null + + private frameSceneObject: SceneObject | null = + this.frame?.getFrameObject() ?? null + + private interactable: Interactable | null = + this.frame?.getInteractable() ?? null + private manipulate: InteractableManipulation | null = + this.frame?.getInteractableManipulation() ?? null + + private animationCancelSet = new CancelSet() + + private aspectRatio: number = 1 + private isAspectRatioSet: boolean = false + + get getAspectRatio(): number { + return this.aspectRatio + } + + private ghost: SceneObject = global.scene.createSceneObject("Ghost") + private ghostTransform: Transform = this.ghost.getTransform() + private ghostImageComponent: Image = this.ghost.createComponent("Image") + + private itemSnapping = this.options.itemSnapping + + private boundingBox: SceneObject = + global.scene.createSceneObject("boundingBox") + private boundingBoxTransform: Transform = this.boundingBox.getTransform() + private useConstantBoundingBoxPadding: boolean = true + + private snapTo: SceneObject | null = null + private snapPosition: vec3 = vec3.zero() + private colliderTransform: Transform | null = null + private colliderPosition: vec3 = vec3.zero() + private colliderRotation: quat = quat.quatIdentity() + private colliderScale: vec3 | null = vec3.zero() + private colliderAspectRatio: number = 1 + + private itemSnappingRange: boolean = false + private worldSnappingRange: boolean = false + isTweening: boolean = false + isActive: boolean = false + isEnabled: boolean = true + private isScaling: boolean = false + private wasScaling: boolean = false + + private scalingDebouncer: ReturnType | null = null + + private quatId: quat = quat.quatIdentity() + + private lastEvent: InteractorEvent | null = null + private tryingSnap: boolean = false + + private onSnappingComplete = new Event() + snappingComplete = () => this.onSnappingComplete.publicApi() + + private unSubscribeList: unsubscribe[] = [] + + private handInputData = HandInputData.getInstance() + private rightHand: TrackedHand = this.handInputData.getHand("right") + private leftHand: TrackedHand = this.handInputData.getHand("left") + + private worldQueryAsset: WorldQueryModule | null = null + private hitTestSession: HitTestSession | null = null + private useWorldQuery: boolean = false + + private queryBuffer: { + distance: number + hitPosition: vec3 + hitNormal: vec3 + }[] = [] + private queryBufferMaxLength: number = 20 + private lastIndexTipPosition: vec3 = vec3.zero() + private lastIndexForward: vec3 = vec3.forward() + private missedCount: number = 0 + private hitTestSessionStarted: boolean = false + private worldQueryTweenCancel: CancelSet = new CancelSet() + + constructor(private options: SnappableOptions) { + validate(this.parent) + validate(this.interactable) + validate(this.content) + validate(this.frame.renderOrder) + + if (options.worldSnapping) { + this.enableWorldSnapping(true) + } + + this.unSubscribeList.push( + this.interactable.onTriggerStart.add(this.onTriggerStart) + ) + this.unSubscribeList.push( + this.interactable.onTriggerEnd.add(this.onTriggerRelease) + ) + this.unSubscribeList.push( + this.interactable.onTriggerCanceled.add(this.onTriggerRelease) + ) + + const contentLocalScale = new vec3( + this.frame.innerSize.x + + this.frame.constantPadding.x + + this.frame.border * 2, + this.frame.innerSize.y + + this.frame.constantPadding.y + + this.frame.border * 2, + 1 + ) + + this.ghost.enabled = false + this.ghost.setParent(this.parent) + this.ghostTransform = this.ghost.getTransform() + this.ghostTransform.setLocalScale(contentLocalScale) + + this.ghostImageComponent.stretchMode = StretchMode.Stretch + this.ghostImageComponent.mainMaterial = this.ghostMaterial.clone() + const ghostAlpha = 0.33 + this.ghostImageComponent.mainMaterial.mainPass.baseColor.a = ghostAlpha + this.ghostImageComponent.mainPass.depthTest = true + this.ghostImageComponent.mainPass.depthWrite = true + this.ghostImageComponent.setRenderOrder(this.frame.renderOrder) + this.boundingBox.setParent(this.content) + this.boundingBox.layer = LayerSet.fromNumber(4) + + let boundingBoxFilter: Filter = Physics.Filter.create() as Filter + boundingBoxFilter.onlyLayers = this.boundingBox.layer + + let boundingBoxCollider: ColliderComponent = + this.boundingBox.createComponent("ColliderComponent") + const boxShape: BoxShape = Shape.createBoxShape() + if (!this.useConstantBoundingBoxPadding) { + // maximumDepthForBoundingBox + const maxBoxDepth = 40 + // amplifier for boxDepth + const boxDepthScalar = 0.4 + // amplifier for shapeSize + const shapeScalar = 1.34 + const frameWorldScale = new vec2( + this.frame.innerSize.x + + this.frame.constantPadding.x + + this.frame.border, + this.frame.innerSize.y + + this.frame.constantPadding.y + + this.frame.border + ) + const boxSize = Math.max(frameWorldScale.x, frameWorldScale.y) + const boxDepth = Math.max(Math.min(Math.max(boxSize, maxBoxDepth)), 1) + + this.boundingBoxTransform.setWorldScale( + new vec3( + frameWorldScale.x, + frameWorldScale.y, + boxDepth * boxDepthScalar + ) + ) + boxShape.size = vec3.one().uniformScale(shapeScalar) + } else { + boxShape.size = vec3.one() + } + boundingBoxCollider.shape = boxShape + boundingBoxCollider.filter = boundingBoxFilter as Filter + boundingBoxCollider.overlapFilter = boundingBoxFilter as Filter + boundingBoxCollider.debugDrawEnabled = this.snappableDebugDraw + + const onOverlapEnterEvent = boundingBoxCollider.onOverlapEnter.add( + this.checkItemOverlaps + ) + const onOverlapStayEvent = boundingBoxCollider.onOverlapStay.add( + this.checkItemOverlaps + ) + const onOverlapExitEvent = boundingBoxCollider.onOverlapExit.add( + this.onOverlapExit + ) + + this.unSubscribeList.push(() => { + boundingBoxCollider.onOverlapEnter.remove(onOverlapEnterEvent) + }) + this.unSubscribeList.push(() => { + boundingBoxCollider.onOverlapStay.remove(onOverlapStayEvent) + }) + this.unSubscribeList.push(() => { + boundingBoxCollider.onOverlapExit.remove(onOverlapExitEvent) + }) + + if (this.useConstantBoundingBoxPadding) { + this.unSubscribeList.push( + this.frame.onScalingUpdateEvent.add(this.scaleConstantBoundingBox) + ) + this.scaleConstantBoundingBox() + } + this.unSubscribeList.push( + this.frame.onScalingUpdateEvent.add(this.setAspectRatio) + ) + this.setAspectRatio() + } + + enableWorldSnapping = (enable: boolean) => { + if (enable) { + if (this.worldQueryAsset === null) { + this.worldQueryAsset = + require("LensStudio:WorldQueryModule") as WorldQueryModule + + const sessionOptions = HitTestSessionOptions.create() + sessionOptions.filter = true + this.hitTestSession = + this.worldQueryAsset.createHitTestSessionWithOptions(sessionOptions) + + // turn off until used + this.hitTestSession.stop() + } + } + this.useWorldQuery = enable + } + + enableItemSnapping = (enable: boolean) => { + this.itemSnapping = enable + } + + destroy(): void { + log.d("destroy") + this.abortTweening() + this.abortSnapping() + this.unSubscribeList.forEach((sub) => { + sub() + }) + } + + private scaleConstantBoundingBox = () => { + // the padding of the constant size added to the bounding box + const frameWorldScale = new vec2( + this.frame.innerSize.x + this.frame.constantPadding.x + this.frame.border, + this.frame.innerSize.y + this.frame.constantPadding.y + this.frame.border + ) + const boxPadding = 10 + const boxDepth = Math.max( + Math.min((Math.max(frameWorldScale.x, frameWorldScale.y), 40)), + 1 + ) + this.boundingBoxTransform.setWorldScale( + new vec3( + frameWorldScale.x + boxPadding, + frameWorldScale.y + boxPadding, + boxDepth + ) + ) + } + + private setActive = (val: boolean) => { + this.isActive = val + } + + private setTweening = (val: boolean) => { + this.isTweening = val + } + + setScaling = (val: boolean) => { + this.isScaling = val + } + + private deParent = () => { + if (this.parentParent && this.parent?.getParent() !== this.parentParent) { + this.parent?.setParentPreserveWorldTransform(this.parentParent) + } + if ( + this.parent && + !isNull(this.ghost) && + this.ghost.getParent() !== this.parent + ) { + this.ghost.setParentPreserveWorldTransform(this.parent) + } + } + + private abortTweening = () => { + this.animationCancelSet.cancel() + this.deParent() + this.setTweening(false) + } + + private setAspectRatio = () => { + // if not set + const scale = new vec2( + this.frame.innerSize.x + + this.frame.constantPadding.x + + this.frame.border * 2, + this.frame.innerSize.y + + this.frame.constantPadding.y + + this.frame.border * 2 + ) + this.aspectRatio = scale.x / scale.y + if (isNull(this.ghostImageComponent)) return // how is this null sometimes? + + if (this.aspectRatio > 1) { + scale.y *= this.aspectRatio + this.ghostImageComponent.mainMaterial.mainPass.boxSize = new vec2( + 0.5, + 0.5 / this.aspectRatio + ) + } else { + scale.x /= this.aspectRatio + this.ghostImageComponent.mainMaterial.mainPass.boxSize = new vec2( + 0.5 * this.aspectRatio, + 0.5 + ) + } + + this.ghostTransform.setWorldScale(new vec3(scale.x, scale.y, 1)) + } + + abortSnapping = () => { + this.setActive(false) + if (!isNull(this.ghost)) { + this.ghost.enabled = false + } + + this.isEnabled = false + this.itemSnappingRange = false + this.worldSnappingRange = false + } + + private onTriggerStart = (e: InteractorEvent) => { + if (e.propagationPhase !== "Target") return + if (this.isTweening) { + this.abortTweening() + } + + if (!this.isTweening && !this.isScaling && !this.isActive) { + this.setAspectRatio() + if (this.useWorldQuery) { + this.queryBuffer = [] + this.hitTestSession?.start() + this.hitTestSessionStarted = true + } + this.setActive(true) + } + + this.wasScaling = this.isScaling + } + + private onTriggerRelease = (e: InteractorEvent) => { + if (e.propagationPhase !== "Target") return + if (this.useWorldQuery && this.hitTestSessionStarted) { + this.hitTestSession?.stop() + this.hitTestSessionStarted = false + } + if (this.isActive && !this.isScaling && this.isEnabled) { + this.setActive(false) + this.ghost.enabled = false + if ( + this.snapTo && + this.itemSnappingRange && + !this.isTweening && + this.parent?.getParent() !== this.snapTo + ) { + this.setTweening(true) + this.itemSnappingRange = false + + this.parent?.setParentPreserveWorldTransform(this.snapTo) + + let startPosition = + this.parentTransform?.getLocalPosition() || vec3.zero() + animate({ + cancelSet: this.animationCancelSet, + duration: 0.15, + start: 0, + end: 1, + ended: this.tweenCompleted, + update: (t) => { + this.parentTransform?.setLocalPosition( + mix(startPosition, this.snapPosition, t) + ) + }, + }) + let startRot: quat = + this.parentTransform?.getWorldRotation() || quat.quatIdentity() + let endRot: quat = this.snapTo!.getTransform().getWorldRotation() + animate({ + cancelSet: this.animationCancelSet, + duration: 0.14, + start: 0, + end: 1, + update: (t) => { + this.parentTransform?.setWorldRotation(mix(startRot, endRot, t)) + }, + }) + } else if ( + this.parentTransform && + this.worldSnappingRange && + !this.isTweening + ) { + this.setTweening(true) + this.worldSnappingRange = false + + let startPosition = this.parentTransform?.getWorldPosition() + + if (startPosition === undefined) { + return + } + + animate({ + cancelSet: this.animationCancelSet, + duration: 0.15, + start: 0, + end: 1, + ended: this.tweenCompleted, + update: (t) => { + this.parentTransform?.setWorldPosition( + mix(startPosition, this.colliderPosition, t) + ) + }, + }) + const startRot: quat = this.parentTransform.getWorldRotation() + const endRot: quat = this.colliderRotation + animate({ + cancelSet: this.animationCancelSet, + duration: 0.14, + start: 0, + end: 1, + update: (t) => { + this.parentTransform?.setWorldRotation(mix(startRot, endRot, t)) + }, + }) + } + } + this.wasScaling = false + } + + private queryWorld = () => { + validate(this.parentTransform) + validate(this.frame.currentInteractor) + validate(this.hitTestSession) + + const rayLength = 300 + const containerPosition = this.parentTransform.getWorldPosition() + + let indexTipPos, indexForward + let thisHand = this.rightHand + if ( + this.frame.currentInteractor.inputType === InteractorInputType.RightHand + ) { + thisHand = this.rightHand + } else if ( + this.frame.currentInteractor.inputType === InteractorInputType.LeftHand + ) { + thisHand = this.leftHand + } + + if (thisHand.isTracked() && thisHand.indexTip) { + indexTipPos = thisHand.indexTip.position + this.lastIndexTipPosition = indexTipPos + indexForward = containerPosition.sub(indexTipPos).normalize() + this.lastIndexForward = indexForward + } else { + indexTipPos = this.lastIndexTipPosition + indexForward = this.lastIndexForward + } + + const endPos = indexTipPos.add(indexForward.uniformScale(rayLength)) + + if (this.hitTestSessionStarted) { + const hitTest = this.hitTestSession.hitTest( + indexTipPos, + endPos, + (hitResult) => { + if (hitResult === null) { + // log.d("No Point of Collision") + this.missedCount += 1 + return + } else { + const hitPosition: vec3 = hitResult.position + const hitNormal: vec3 = hitResult.normal + + const containerFromHit = + containerPosition.distanceSquared(hitPosition) + if (containerFromHit > 2500) { + // more than 25 away from world mesh too far away + this.missedCount += 1 + return + } + + const indexDistance = indexTipPos.distance(hitPosition) + if (hitPosition === vec3.zero()) { + this.missedCount += 1 + return + } + if (indexDistance < 20) { + // probably an error + this.missedCount += 1 + return + } + + this.queryBuffer.push({ + distance: indexDistance, + hitPosition: hitPosition, + hitNormal: hitNormal, + }) + + if (this.queryBuffer.length === this.queryBufferMaxLength) { + let sumDist = 0 + let sumPosition = vec3.zero() + let sumNormal = vec3.zero() + this.queryBuffer.forEach((queryObj, i) => { + sumDist += queryObj.distance + sumPosition = sumPosition.add(queryObj.hitPosition) + sumNormal = sumNormal.add(queryObj.hitNormal) + }) + const avgPositon = sumPosition.uniformScale( + 1 / this.queryBuffer.length + ) + const avgNormal = sumNormal.uniformScale( + 1 / this.queryBuffer.length + ) + + let toRotation: quat + if (avgNormal.y > 0.95) { + // log.d(`probably on the floor! or some`) + toRotation = quat.lookAt( + avgNormal, + this.frame.worldCamera.getTransform().back + ) + } else { + // log.d(`probably on something else?`) + toRotation = quat.lookAt(avgNormal, NOT_QUITE_UP) + } + + const ghostPos = this.ghostTransform.getWorldPosition() + const ghostRot = this.ghostTransform.getWorldRotation() + + if (this.worldQueryTweenCancel) this.worldQueryTweenCancel() + animate({ + duration: 0.05, + cancelSet: this.worldQueryTweenCancel, + update: (t) => { + this.ghostTransform.setWorldPosition( + vec3.lerp(ghostPos, avgPositon, t) + ) + this.ghostTransform.setWorldRotation( + quat.slerp(ghostRot, toRotation, t) + ) + }, + }) + + this.colliderPosition = avgPositon + this.colliderRotation = toRotation + this.colliderScale = this.scale + this.colliderAspectRatio = this.aspectRatio + this.worldSnappingRange = true + + this.queryBuffer.shift() + this.missedCount = 0 + } else { + this.worldSnappingRange = false + this.missedCount = 0 + } + } + } + ) + } + + if (this.missedCount >= 20) this.worldSnappingRange = false + } + + private calculateItemSnapping = () => { + validate(this.contentTransform) + validate(this.colliderScale) + + if (this.snapTo && this.ghost.getParent() !== this.snapTo) { + this.ghost.setParentPreserveWorldTransform(this.snapTo) + } + + this.contentPosition = this.contentTransform + .getWorldPosition() + .sub(this.colliderPosition) + + this.scale = this.contentTransform.getWorldScale() + + this.contentPosition = this.colliderRotation.multiplyVec3( + this.contentPosition + ) + + const snapToScalar = this.snapTo!.getTransform().getWorldScale() + + // assuming height of 1 + let halfThisImageScale = { + x: + (this.frame.innerSize.x * 0.5 + + this.frame.constantPadding.x * 0.5 + + this.frame.border) / + snapToScalar.x, + y: + (this.frame.innerSize.y * 0.5 + + this.frame.constantPadding.y * 0.5 + + this.frame.border) / + snapToScalar.y, + } + + let halfColliderImageScale = { + x: (this.colliderScale.x * 0.5) / snapToScalar.x, + y: (this.colliderScale.y * 0.5) / snapToScalar.y, + } + + let xOffset: number = 0 + let yOffset: number = 0 + + if (Math.abs(this.contentPosition.x) >= Math.abs(this.contentPosition.y)) { + // snap to left or right + xOffset = + halfColliderImageScale.x + + halfThisImageScale.x + + this.gutterSize / snapToScalar.x + if (this.contentPosition.x > 0) { + this.snapPosition.x = xOffset + } else { + this.snapPosition.x = -xOffset + } + + if (Math.abs(this.contentPosition.y) < this.stickyZoneSize) { + // in sticky center + this.snapPosition.y = 0 + } else if ( + Math.abs( + this.contentPosition.y + + halfThisImageScale.y - + halfColliderImageScale.y + ) < this.stickyZoneSize + ) { + // at top + this.snapPosition.y = halfColliderImageScale.y - halfThisImageScale.y + } else if ( + Math.abs( + this.contentPosition.y - + halfThisImageScale.y + + halfColliderImageScale.y + ) < this.stickyZoneSize + ) { + // at bottom + this.snapPosition.y = -halfColliderImageScale.y + halfThisImageScale.y + } else { + // sliding + this.snapPosition.y = this.contentPosition.y + } + + this.snapPosition.y /= snapToScalar.y + } else { + // snap to top or bottom + yOffset = + halfColliderImageScale.y + + halfThisImageScale.y + + this.gutterSize / snapToScalar.y + + if (this.contentPosition.y > 0) { + this.snapPosition.y = yOffset + } else { + this.snapPosition.y = -yOffset + } + + if (Math.abs(this.contentPosition.x) < this.stickyZoneSize) { + // in sticky center + this.snapPosition.x = 0 + } else if ( + Math.abs( + this.contentPosition.x + + halfThisImageScale.x - + halfColliderImageScale.x + ) < this.stickyZoneSize + ) { + // at right + this.snapPosition.x = halfColliderImageScale.x - halfThisImageScale.x + } else if ( + Math.abs( + this.contentPosition.x - + halfThisImageScale.x + + halfColliderImageScale.x + ) < this.stickyZoneSize + ) { + // at left + this.snapPosition.x = -halfColliderImageScale.x + halfThisImageScale.x + } else { + // sliding + this.snapPosition.x = this.contentPosition.x + } + + this.snapPosition.x /= snapToScalar.x + } + + this.snapPosition.z = 0 + + // scale snap positioning for local space w/in the collider + // this.snapPosition = this.snapPosition.div(this.colliderScale) + + // ghost temporarily parented to snapTo object + this.ghostTransform.setLocalRotation(this.quatId) + this.ghostTransform.setLocalPosition(this.snapPosition) + if (!this.ghost.enabled) this.ghost.enabled = true + } + + update = () => { + validate(this.content) + if ( + this.isActive && + !this.isScaling && + this.isEnabled && + !this.frame.isFollowing + ) { + if (this.itemSnappingRange) { + this.calculateItemSnapping() + } else if (this.useWorldQuery) { + this.queryWorld() + } else if (!this.worldSnappingRange) { + // if not in snapping range + if (!this.isTweening && this.content.getParent() !== this.parent) { + this.deParent() + } + if (this.ghost.enabled) this.ghost.enabled = false + } + // confirm ghost + if (this.worldSnappingRange) { + if (!this.ghost.enabled) this.ghost.enabled = true + } + } else { + if (this.ghost.enabled) this.ghost.enabled = false + if (!this.isTweening && this.content.getParent() !== this.parent) { + this.deParent() + } + } + if (this.tryingSnap) { + if (this.lastEvent) this.onTriggerRelease(this.lastEvent) + this.tryingSnap = false + this.lastEvent = null + } + + if (!this.worldSnappingRange && !this.itemSnappingRange) { + validate(this.frame.parentTransform) + if (this.ghost.enabled) this.ghost.enabled = false + this.ghostTransform.setWorldPosition( + this.frame.parentTransform.getWorldPosition() + ) + this.ghostTransform.setWorldRotation( + this.frame.parentTransform.getWorldRotation() + ) + } + } + + private checkItemOverlaps = (e: any) => { + this.lastEvent = e + if ( + this.isActive && + !this.isScaling && + !this.isTweening && + !this.frame.isFollowing && + this.itemSnapping && + this.isEnabled + ) { + let lastDistance = Infinity + for (let i = 0; i < e.currentOverlaps.length; i++) { + let overlap = e.currentOverlaps[i] + const colliderObject: SceneObject = overlap.collider + .getSceneObject() + .getParent() + .getParent() + // getParent of boundingBox + + const colliderFrameComponent = colliderObject.getComponent( + ContainerFrame.getTypeName() + ) + + validate(this.contentTransform) + + if (isNull(colliderFrameComponent)) { + continue + } + if ( + colliderFrameComponent!.isSnappingActive() || + colliderFrameComponent!.isSnappingTweening() + ) { + continue + } + if (colliderObject === this.parent) { + continue + } + this.colliderTransform = colliderObject.getTransform() + const thisColliderPosition: vec3 = + this.colliderTransform.getWorldPosition() + const thisDistance = thisColliderPosition.distanceSquared( + this.contentTransform.getWorldPosition() + ) + if (thisDistance < lastDistance) { + this.snapTo = overlap.collider.getSceneObject().getParent() + + this.colliderPosition = thisColliderPosition + + this.colliderScale = new vec3( + colliderFrameComponent!.innerSize.x + + colliderFrameComponent!.constantPadding.x + + colliderFrameComponent!.border * 2, + colliderFrameComponent!.innerSize.y + + colliderFrameComponent!.constantPadding.y + + colliderFrameComponent!.border * 2, + 1 + ) + + this.colliderAspectRatio = this.colliderScale.y / this.colliderScale.x + + this.colliderRotation = this.colliderTransform!.getWorldRotation() + this.colliderRotation.x *= -1 + this.colliderRotation.y *= -1 + this.colliderRotation.z *= -1 + + this.itemSnappingRange = true + lastDistance = thisDistance + } + } + } + } + + tryToSnap = () => { + this.setActive(true) + this.tryingSnap = true + if (this.lastEvent) { + this.checkItemOverlaps(this.lastEvent) + } + } + + private tweenCompleted = () => { + // deparent when tween complete + this.deParent() + this.setTweening(false) + this.onSnappingComplete.invoke() + } + + private onOverlapExit = (e: any) => { + if (e.currentOverlaps.length === 0) { + this.ghost.enabled = false + this.itemSnappingRange = false + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SnappableBehavior.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SnappableBehavior.ts.meta new file mode 100644 index 00000000..23e28602 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ContainerFrame/modules/SnappableBehavior.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! dccbc168-c044-4c7f-acbe-a4678b37cde1 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! dccbc168-c044-4c7f-acbe-a4678b37cde1 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 8b4343d5-30b6-435a-8e22-51f87a268101 + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/PinchButton/PinchButton.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/PinchButton/PinchButton.ts new file mode 100644 index 00000000..ed416c8a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/PinchButton/PinchButton.ts @@ -0,0 +1,70 @@ +import Event from "../../../Utils/Event" +import {Interactable} from "../../Interaction/Interactable/Interactable" +import {InteractorEvent} from "../../../Core/Interactor/InteractorEvent" +import NativeLogger from "../../../Utils/NativeLogger" +import {createCallback} from "../../../Utils/InspectorCallbacks" + +const TAG = "PinchButton" + +/** + * This class provides basic pinch button functionality for the prefab pinch button. It is meant to be added to a Scene Object with an Interactable component, with visual behavior configured in the Lens Studio scene. + */ +@component +export class PinchButton extends BaseScriptComponent { + @input + @hint( + "Enable this to add functions from another script to this component's callback events", + ) + editEventCallbacks: boolean = false + @ui.group_start("On Button Pinched Callbacks") + @showIf("editEventCallbacks") + @input("Component.ScriptComponent") + @hint("The script containing functions to be called when button is pinched") + @allowUndefined + private customFunctionForOnButtonPinched: ScriptComponent | undefined + @input + @hint( + "The names for the functions on the provided script, to be called on button pinch", + ) + @allowUndefined + private onButtonPinchedFunctionNames: string[] = [] + @ui.group_end + private interactable: Interactable | null = null + + private onButtonPinchedEvent = new Event() + public readonly onButtonPinched = this.onButtonPinchedEvent.publicApi() + + // Native Logging + private log = new NativeLogger(TAG) + + onAwake(): void { + this.interactable = this.getSceneObject().getComponent( + Interactable.getTypeName(), + ) + + this.createEvent("OnStartEvent").bind(() => { + if (!this.interactable) { + throw new Error( + "Pinch Button requires an Interactable Component on the same Scene object in order to work - please ensure one is added.", + ) + } + this.interactable.onTriggerEnd.add((interactorEvent: InteractorEvent) => { + try { + if (this.enabled) { + this.onButtonPinchedEvent.invoke(interactorEvent) + } + } catch (e) { + this.log.e("Error invoking onButtonPinchedEvent!") + } + }) + }) + if (this.editEventCallbacks && this.customFunctionForOnButtonPinched) { + this.onButtonPinched.add( + createCallback( + this.customFunctionForOnButtonPinched, + this.onButtonPinchedFunctionNames, + ), + ) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/PinchButton/PinchButton.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/PinchButton/PinchButton.ts.meta new file mode 100644 index 00000000..237c3aab --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/PinchButton/PinchButton.ts.meta @@ -0,0 +1,48 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 3be08b13-299d-4e12-8eb2-81f6e6a74752 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + customFunctionForOnButtonPinched: false + editEventCallbacks: false + onButtonPinchedFunctionNames: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + - + {} + InputLines: + - "// @input bool editEventCallbacks {\"hint\":\"Enable this to add functions from another script to this component's callback events\"}" + - '// @ui {"widget":"group_start", "label":"On Button Pinched Callbacks", "showIf":"editEventCallbacks"}' + - '// @input Component.ScriptComponent customFunctionForOnButtonPinched {"hint":"The script containing functions to be called when button is pinched"}' + - '// @input string[] onButtonPinchedFunctionNames {"hint":"The names for the functions on the provided script, to be called on button pinch"}' + - '// @ui {"widget":"group_end"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollBar/ScrollBar.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollBar/ScrollBar.ts new file mode 100644 index 00000000..88647092 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollBar/ScrollBar.ts @@ -0,0 +1,332 @@ +import {ScrollView, ScrollViewEventArgs} from "../ScrollView/ScrollView" + +import {DragType} from "../../../Core/Interactor/Interactor" +import {DragInteractorEvent} from "../../../Core/Interactor/InteractorEvent" +import NativeLogger from "../../../Utils/NativeLogger" +import {validate} from "../../../Utils/validate" +import {Interactable} from "../../Interaction/Interactable/Interactable" + +const TAG = "ScrollBar" + +/** + * This class represents a scrollbar component that can be used with a ScrollView. It manages the scrollbar's position, size, and interaction events. The class calculates the height offset to prevent the scrollbar mesh from extending past the canvas and integrates with the ScrollView to handle scrolling. + */ +@component +export class ScrollBar extends BaseScriptComponent { + private scrollView!: ScrollView + private scrollViewSceneObject!: SceneObject + + private scrollViewScreenTransform: ScreenTransform | undefined + + private interactable: Interactable | null = null + + private transform: Transform | undefined + + @input("Component.RenderMeshVisual") + @hint( + "The mesh visual of the scroll bar, used to calculate the height offset that should be used to prevent the mesh from extending past the canvas. This mesh will also be disabled whenever setting this component to disabled." + ) + @allowUndefined + private _scrollBarMeshVisual: RenderMeshVisual | null = null + + @input + @hint( + "How far (in cm) the top edge of the ScrollBar mesh should sit from the edge of the canvas when at the top of the content." + ) + private _boundingHeightOffset: number = 0 + + private boundingHeight: number = 0 + + private yOrigin: number = 0 + + private log = new NativeLogger(TAG) + + onAwake() { + this.transform = this.getSceneObject().getTransform() + + this.scrollView = this.findScrollView() + this.scrollViewSceneObject = this.scrollView.getSceneObject() + this.scrollViewScreenTransform = this.scrollViewSceneObject.getComponent( + "Component.ScreenTransform" + ) + + this.interactable = this.setupInteractable() + + this.boundingHeight = this.calculateBoundingHeight() + this.yOrigin = this.scrollViewSceneObject + .getTransform() + .getLocalPosition().y + + this.setupScrollViewCallbacks() + + this.reset() + } + + private setupInteractable() { + const interactable = this.getSceneObject().getComponent( + Interactable.getTypeName() + ) + + if (interactable === null) { + throw new Error("ScrollBar requires an interactable to function.") + } + + interactable.onDragStart((event) => { + if (event.interactor.dragType === DragType.Touchpad) { + this.touchpadDragUpdate(event) + } else { + this.sixDofDragUpdate(event) + } + }) + + interactable.onDragUpdate((event) => { + if (event.interactor.dragType === DragType.Touchpad) { + this.touchpadDragUpdate(event) + } else { + this.sixDofDragUpdate(event) + } + }) + + interactable.enableInstantDrag = true + + return interactable + } + + private setupScrollViewCallbacks() { + this.scrollView.onReady.add(() => { + this.reset() + }) + + this.scrollView.onScrollUpdate.add((event) => { + this.onScroll(event) + }) + + this.scrollView.onSnapUpdate.add((event) => { + this.onScroll(event) + }) + } + + private onScroll(event: ScrollViewEventArgs) { + validate(this.transform) + + // If there is no overflow, don't move ScrollBar at all. + if (!this.overflow || !this.scrollPercentage || this.overflow <= 0) { + return + } + + const position = this.transform.getLocalPosition() + position.y = + this.yOrigin + + MathUtils.lerp( + this.boundingHeight, + -this.boundingHeight, + this.scrollPercentage + ) + + this.transform.setLocalPosition(position) + } + + private calculateBoundingHeight() { + validate(this.scrollViewSceneObject) + + const scrollViewHeight = this.scrollView.scrollAreaSize.y + + /** + * aabbMax returns the maximum value along one side of an axis, unrotated/unscaled. + * If aabbMax.x = 10 units, then the actual x-length of the mesh (before scaling) is 20 units. + */ + let aabb = this.scrollBarMeshVisual?.mesh.aabbMax ?? vec3.zero() + + // In the case that the mesh is scaled/rotated, transform the AABB dimensions. + aabb = this.getTransform().getWorldScale().scale(aabb) + aabb = this.getSceneObject() + .getTransform() + .getWorldRotation() + .multiplyVec3(aabb) + + const localAabb = this.scrollViewSceneObject + .getTransform() + .getInvertedWorldTransform() + .multiplyDirection(aabb) + + const boundingHeight = + scrollViewHeight / 2 - localAabb.y - this.boundingHeightOffset + + if (boundingHeight <= 0) { + this.log.e( + `Bounding height of the ScrollBar is negative. Reduce the boundingHeightOffset parameter for proper ScrollBar behavior.` + ) + } + + return boundingHeight + } + + private touchpadDragUpdate(event: DragInteractorEvent) { + validate(this.scrollPercentage) + + const deltaY = event.dragVector.y + const newPercentage = + this.scrollPercentage - deltaY / (this.boundingHeight * 2) + + if (newPercentage < 0 || newPercentage > 1) { + this.scrollToEdge(newPercentage < 0) + return + } + + this.scrollView.scrollBy(new vec2(0, deltaY * this.scrollRatio)) + } + + private sixDofDragUpdate(event: DragInteractorEvent) { + validate(this.scrollViewScreenTransform) + validate(this.scrollPercentage) + + if ( + event.interactor.planecastPoint !== null && + event.planecastDragVector !== null + ) { + const newDragPoint = event.interactor.planecastPoint + const deltaY = this.localizeDragVector(event.planecastDragVector).y + + if ( + this.scrollViewScreenTransform.worldPointToLocalPoint(newDragPoint).y >= + 1 + ) { + this.scrollToEdge(true) + return + } + if ( + this.scrollViewScreenTransform.worldPointToLocalPoint(newDragPoint).y <= + -1 + ) { + this.scrollToEdge(false) + return + } + + const newPercentage = + this.scrollPercentage - deltaY / (this.boundingHeight * 2) + if (newPercentage < 0 || newPercentage > 1) { + this.scrollToEdge(newPercentage < 0) + return + } + + this.scrollView.scrollBy(new vec2(0, deltaY * this.scrollRatio)) + } + } + + private get scrollRatio() { + validate(this.overflow) + return -this.overflow / (this.boundingHeight * 2) + } + + private localizeDragVector(dragVector: vec3): vec2 { + validate(this.scrollViewSceneObject) + + const transform = this.scrollViewSceneObject.getTransform() + + const localXAxis = transform.getWorldRotation().multiplyVec3(vec3.right()) + + const localYAxis = transform.getWorldRotation().multiplyVec3(vec3.up()) + + const localizedX = localXAxis.dot(dragVector) / transform.getWorldScale().x + const localizedY = localYAxis.dot(dragVector) / transform.getWorldScale().y + + return new vec2(localizedX, localizedY) + } + + private scrollToEdge(topEdge: boolean) { + validate(this.scrollPercentage) + validate(this.overflow) + + const adjustedPercentage = topEdge + ? this.scrollPercentage + : -(1 - this.scrollPercentage) + + this.scrollView.scrollBy(new vec2(0, -adjustedPercentage * this.overflow)) + } + + // Search through the siblings of this SceneObject to allow for the script instantiation use case. + private findScrollView(): ScrollView { + const parent = this.getSceneObject().getParent() + const children = parent?.children ?? null + + if (children === null) { + throw new Error( + "Sibling SceneObject with ScrollView component not found. Ensure that the ScrollView owner is a sibling of the ScrollBar owner." + ) + } + + for (let child of children) { + const scrollView = child.getComponent(ScrollView.getTypeName()) + + if (scrollView !== null) { + return scrollView + } + } + + throw new Error( + "Sibling SceneObject with ScrollView component not found. Ensure that the ScrollView owner is a sibling of the ScrollBar owner." + ) + } + + get scrollPercentage(): number { + return this.scrollView.scrollPercentage + } + + get overflow(): number { + return this.scrollView.overflow + } + + get scrollBarMeshVisual(): RenderMeshVisual | null { + return this._scrollBarMeshVisual + } + + set scrollBarMeshVisual(mesh: RenderMeshVisual) { + this._scrollBarMeshVisual = mesh + this.boundingHeight = this.calculateBoundingHeight() + } + + /** + * @returns how far (in cm) the top edge of the ScrollBar mesh should sit from the edge of the canvas when at the top of the content. + */ + get boundingHeightOffset(): number { + return this._boundingHeightOffset + } + + /** + * Sets the offset between the top edge of the mesh and the edge of the canvas. + * @param offset - how far (in cm) the top edge of the ScrollBar mesh should sit from the edge of the canvas when at the top of the content. + */ + set boundingHeightOffset(offset: number) { + this._boundingHeightOffset = offset + this.boundingHeight = this.calculateBoundingHeight() + } + + get isEnabled(): boolean { + return this.scrollBarMeshVisual?.enabled ?? false + } + + set isEnabled(enabled: boolean) { + validate(this.scrollBarMeshVisual) + this.scrollBarMeshVisual.enabled = enabled + } + + reset(): void { + // If the ScrollView has not been found yet due to script execution ordering, then defer the reset for later. + if (!this.scrollView) { + return + } + validate(this.scrollViewSceneObject) + validate(this.transform) + + this.boundingHeight = this.calculateBoundingHeight() + + this.yOrigin = this.scrollViewSceneObject + .getTransform() + .getLocalPosition().y + + const position = this.transform.getLocalPosition() + position.y = this.yOrigin + this.boundingHeight + + this.transform.setLocalPosition(position) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollBar/ScrollBar.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollBar/ScrollBar.ts.meta new file mode 100644 index 00000000..db2672ba --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollBar/ScrollBar.ts.meta @@ -0,0 +1,42 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 6edc785e-877c-4a9a-b0a0-3f29d68e2274 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 6edc785e-877c-4a9a-b0a0-3f29d68e2274 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! fa215fa6-8275-4873-8338-75593ba0ff0f + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + - '// @input Component.RenderMeshVisual _scrollBarMeshVisual {"hint":"The mesh visual of the scroll bar, used to calculate the height offset that should be used to prevent the mesh from extending past the canvas. This mesh will also be disabled whenever setting this component to disabled."}' + - '// @input float _boundingHeightOffset {"hint":"How far (in cm) the top edge of the ScrollBar mesh should sit from the edge of the canvas when at the top of the content."}' + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _boundingHeightOffset: false + _scrollBarMeshVisual: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - _scrollBarMeshVisual: ! 00000000-0000-0000-0000-000000000000 + _boundingHeightOffset: ! 0.000000 + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/GridContentCreator.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/GridContentCreator.ts new file mode 100644 index 00000000..0bc972d6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/GridContentCreator.ts @@ -0,0 +1,22 @@ +/** + * This class is responsible for creating and positioning grid content items based on a specified prefab and item count. It instantiates the items and arranges them vertically with a specified offset. + */ +@component +export class GridContentCreator extends BaseScriptComponent { + @input + itemPrefab!: ObjectPrefab + @input + itemsCount: number = 10 + + onAwake(): void { + const yStart = 0 + const yOffset = -5.4 + + for (let i = 0; i < this.itemsCount; i++) { + const item = this.itemPrefab.instantiate(this.getSceneObject()) + const screenTransform = item.getComponent("Component.ScreenTransform") + screenTransform.offsets.setCenter(new vec2(0, yStart + yOffset * i)) + item.enabled = true + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/GridContentCreator.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/GridContentCreator.ts.meta new file mode 100644 index 00000000..034351f3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/GridContentCreator.ts.meta @@ -0,0 +1,42 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! ad83ff54-844d-49a8-9102-f568a9d291c3 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! ad83ff54-844d-49a8-9102-f568a9d291c3 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! b19882ca-9b04-44a9-ad31-aa2f7554889d + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + itemPrefab: false + itemsCount: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - itemPrefab: ! 00000000-0000-0000-0000-000000000000 + itemsCount: ! 10.000000 + ScriptTypes: + - + {} + InputLines: + - // @input Asset.ObjectPrefab itemPrefab + - // @input float itemsCount = 10 + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollArea.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollArea.ts new file mode 100644 index 00000000..82a6ba18 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollArea.ts @@ -0,0 +1,347 @@ +import { + DragInteractorEvent, + InteractorEvent, +} from "../../../Core/Interactor/InteractorEvent" +import NativeLogger from "../../../Utils/NativeLogger" + +import {InteractionManager} from "../../../Core/InteractionManager/InteractionManager" +import {InteractionConfigurationProvider} from "../../../Providers/InteractionConfigurationProvider/InteractionConfigurationProvider" +import Event, {PublicApi} from "../../../Utils/Event" +import {validate} from "../../../Utils/validate" +import View from "../../../Utils/views/View" +import {Interactable} from "../../Interaction/Interactable/Interactable" +import {ScreenTransformBoundariesProvider} from "./boundariesProvider/ScreenTransformBoundariesProvider" +import {ScrollViewFocusEventArgs} from "./ScrollView" + +const TAG = "ScrollArea" + +/** + * Defines the scroll area, a box collider that the user can interact with using + * an {@link Interactor}. The dragging events are exposed to be consumed in {@link ScrollView} + */ +export class ScrollArea extends View { + private interactionManager: InteractionManager = + InteractionManager.getInstance() + + private interactionConfigurationProvider: InteractionConfigurationProvider = + InteractionConfigurationProvider.getInstance() + + // Native Logging + private log = new NativeLogger(TAG) + + // Private + private parentScreenTransform: ScreenTransform + private screenTransform: ScreenTransform + private collider: ColliderComponent + private interactable: Interactable | null + private isDragging = false + private isFocused = false + + // Events + private onDragStartEvent = new Event() + readonly onDragStart = this.onDragStartEvent.publicApi() + + private onDragUpdateEvent = new Event() + readonly onDragUpdate = this.onDragUpdateEvent.publicApi() + + private onDragEndEvent = new Event() + readonly onDragEnd = this.onDragEndEvent.publicApi() + + private onFocusEnterEvent = new Event() + readonly onFocusEnter = this.onFocusEnterEvent.publicApi() + + private onFocusExitEvent = new Event() + readonly onFocusExit = this.onFocusExitEvent.publicApi() + + readonly onTriggerStart: PublicApi + readonly onTriggerEnd: PublicApi + readonly onTriggerCanceled: PublicApi + + // Readonly + private _boundariesProvider: ScreenTransformBoundariesProvider + + get boundariesProvider(): ScreenTransformBoundariesProvider { + return this._boundariesProvider + } + + constructor({ + debugDrawEnabled, + parentSceneObject, + scrollAreaBounds, + }: { + debugDrawEnabled: boolean + parentSceneObject: SceneObject + scrollAreaBounds: vec2 + }) { + super({name: TAG}) + this.attachToScene(parentSceneObject) + this.parentScreenTransform = parentSceneObject.getComponent( + "Component.ScreenTransform" + ) + + this.screenTransform = this.createScreenTransform(debugDrawEnabled) + this.collider = this.createCollider(debugDrawEnabled, scrollAreaBounds) + this.interactable = this.createInteractable() + this._boundariesProvider = new ScreenTransformBoundariesProvider( + this.container + ) + + this.onTriggerStart = this.interactable.onTriggerStart + this.onTriggerEnd = this.interactable.onTriggerEnd + this.onTriggerCanceled = this.interactable.onTriggerCanceled + } + + /** + * @returns if collider wire is visible or not + */ + get debugDrawEnabled(): boolean { + return this.collider.debugDrawEnabled + } + + /** + * Toggles collider wire rendering for visualizing collider geometry shape and where it is placed. + */ + set debugDrawEnabled(debugDrawEnabled: boolean) { + this.collider.debugDrawEnabled = debugDrawEnabled + this.screenTransform.enableDebugRendering = debugDrawEnabled + } + + private createScreenTransform( + enableDebugRendering: boolean + ): ScreenTransform { + const screenTransform = this.container.createComponent( + "Component.ScreenTransform" + ) + + screenTransform.enableDebugRendering = enableDebugRendering + screenTransform.anchors = Rect.create(-1, 1, -1, 1) + screenTransform.offsets = Rect.create(0, 0, 0, 0) + + return screenTransform + } + + private createColliderShape(scrollAreaBounds: vec2): BoxShape { + const shape = Shape.createBoxShape() + + const topLeftCorner = this.convertLocalUnitsToParentUnits( + new vec2(-scrollAreaBounds.x, scrollAreaBounds.y) + ) + const bottomRightCorner = this.convertLocalUnitsToParentUnits( + new vec2(scrollAreaBounds.x, -scrollAreaBounds.y) + ) + + shape.size = new vec3( + bottomRightCorner.x - topLeftCorner.x, + topLeftCorner.y - bottomRightCorner.y, + 1 + ) + + return shape + } + + /** + * @returns the collider's BoxShape's bounds. + */ + get scrollColliderBounds(): vec2 { + const boxShape: BoxShape = this.collider.shape as BoxShape + + return new vec2(boxShape.size.x, boxShape.size.y) + } + + /** + * @param scrollColliderBounds - the collider's BoxShape's bounds. + */ + set scrollColliderBounds(scrollColliderBounds: vec2) { + this.collider.shape = this.createColliderShape(scrollColliderBounds) + } + + private createCollider( + debugDrawEnabled: boolean, + scrollAreaBounds: vec2 + ): ColliderComponent { + const collider = this.container.createComponent("Physics.ColliderComponent") + collider.debugDrawEnabled = debugDrawEnabled + collider.fitVisual = false + collider.shape = this.createColliderShape(scrollAreaBounds) + + return collider + } + + private stopEventPropagationOnDragging(event: InteractorEvent) { + if (this.isDragging) { + event.stopPropagation() + } + } + + private stopEventPropagationOutsideScrollArea(event: InteractorEvent) { + if ( + event.interactor.targetHitPosition !== null && + !this.screenTransform.containsWorldPoint( + event.interactor.targetHitPosition + ) + ) { + event.stopPropagation() + } + } + + private createInteractable(): Interactable { + const interactable = this.parentScreenTransform + .getSceneObject() + .createComponent(Interactable.getTypeName()) + + validate( + interactable, + "Couldn't create an Interactable. Interactable typename is undefined." + ) + + // Hover + interactable.onHoverEnter.add((event) => { + validate(this.interactable) + + const planeIntersection = event.interactor.raycastPlaneIntersection( + this.interactable + ) + + const outsideScrollCanvas = + planeIntersection === null || + !this.screenTransform.containsWorldPoint(planeIntersection) + + if (!this.isFocused && !outsideScrollCanvas) { + this.isFocused = true + this.onFocusEnterEvent.invoke({ + position: planeIntersection, + }) + } else if (outsideScrollCanvas) { + this.isFocused = false + this.onFocusExitEvent.invoke({ + position: planeIntersection, + }) + } + }) + + interactable.onHoverUpdate.add((event) => { + validate(this.interactable) + + const planeIntersection = event.interactor.raycastPlaneIntersection( + this.interactable + ) + + const outsideScrollCanvas = + planeIntersection === null || + !this.screenTransform.containsWorldPoint(planeIntersection) + + if (this.isFocused && outsideScrollCanvas) { + this.isFocused = false + this.onFocusExitEvent.invoke({ + position: planeIntersection, + }) + } else if (!this.isFocused && !outsideScrollCanvas) { + this.isFocused = true + this.onFocusEnterEvent.invoke({ + position: planeIntersection, + }) + } + }) + + interactable.onHoverExit.add((event) => { + validate(this.interactable) + + const planeIntersection = event.interactor.raycastPlaneIntersection( + this.interactable + ) + + const outsideScrollCanvas = + planeIntersection === null || + !this.screenTransform.containsWorldPoint(planeIntersection) + + if (this.isFocused && outsideScrollCanvas) { + this.isFocused = false + this.onFocusExitEvent.invoke({ + position: planeIntersection, + }) + } + }) + + // Trigger + interactable.onTriggerStart.add((event) => { + this.stopEventPropagationOutsideScrollArea(event) + }) + interactable.onTriggerUpdate.add((event) => { + this.stopEventPropagationOutsideScrollArea(event) + this.stopEventPropagationOnDragging(event) + }) + interactable.onTriggerEnd.add((event) => { + this.stopEventPropagationOutsideScrollArea(event) + this.stopEventPropagationOnDragging(event) + }) + interactable.onTriggerCanceled.add((event) => { + this.stopEventPropagationOnDragging(event) + }) + + // Drag + interactable.onDragStart.add((event) => { + if ( + event.propagationPhase === "BubbleUp" || + event.propagationPhase === "Target" + ) { + this.isDragging = true + this.onDragStartEvent.invoke(event) + event.stopPropagation() + + this.interactionManager.dispatchEvent({ + interactor: event.interactor, + target: event.target, + eventName: "TriggerCanceled", + origin: interactable, + }) + } + }) + interactable.onDragUpdate.add((event) => { + if (this.isDragging) { + this.onDragUpdateEvent.invoke(event) + event.stopPropagation() + } + }) + interactable.onDragEnd.add((event) => { + if ( + event.propagationPhase === "TrickleDown" || + event.propagationPhase === "Target" + ) { + this.isDragging = false + this.onDragEndEvent.invoke(event) + event.stopPropagation() + } + }) + + interactable.isScrollable = true + interactable.enableInstantDrag = true + + return interactable + } + + /** + * Converts local units (-1 to 1) to parent units relative to the ScrollView canvas. + */ + private convertLocalUnitsToParentUnits(localUnits: vec2): vec2 { + const origin = this.parentScreenTransform.localPointToWorldPoint( + vec2.zero() + ) + const invertQuat = this.parentScreenTransform + .getSceneObject() + .getTransform() + .getWorldRotation() + .invert() + + const worldUnits = this.parentScreenTransform + .localPointToWorldPoint(localUnits) + .sub(origin) + + const localAxisAlignedUnits = invertQuat.multiplyVec3(worldUnits) + + const parentUnits = localAxisAlignedUnits.div( + this.parentScreenTransform.getTransform().getWorldScale() + ) + + return new vec2(parentUnits.x, parentUnits.y) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollArea.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollArea.ts.meta new file mode 100644 index 00000000..53603513 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollArea.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! e3636d41-21d9-41fa-8137-b6ffff295ad2 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! e3636d41-21d9-41fa-8137-b6ffff295ad2 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 67063fdd-04e8-4b94-8cfa-efd567bee97c + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollProvider.ts new file mode 100644 index 00000000..7a08681b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollProvider.ts @@ -0,0 +1,702 @@ +import {CancelSet} from "../../../Utils/animate" +import { + EdgeSelector, + EdgeType, + ScrollView, + ScrollViewEventArgs, +} from "./ScrollView" + +import {InteractorEvent} from "../../../Core/Interactor/InteractorEvent" +import Event from "../../../Utils/Event" +import {averageVec2, smoothDamp, smoothSlide} from "../../../Utils/mathUtils" +import {MovingAverageFilter} from "../../../Utils/MovingAverageFilter" +import {BufferedBoundariesProvider} from "./boundariesProvider/BufferedBoundariesProvider" +import {SceneObjectBoundariesProvider} from "./boundariesProvider/SceneObjectBoundariesProvider" + +const TAG = "ScrollProvider" + +export type ScrollProviderConfig = { + scrollArea: SceneObjectBoundariesProvider + enableScrollInertia: boolean + enableScrollLimit: boolean + scrollLimit: number + enableHorizontalScroll: boolean + enableVerticalScroll: boolean + scrollView: ScrollView + screenTransform: ScreenTransform + updateEvent: UpdateEvent +} + +const VELOCITY_WINDOW_SIZE = 10 + +const DECELERATE_TIME = 2.0 +// The minimum speed to keep moving the content during update frames. +const DECELERATE_MIN_SPEED = 1 + +const ELASTIC_TIME = 0.4 +// The minimum distance from content edge to keep moving the content during update frames. +const ELASTIC_MIN_DISTANCE = 0.05 + +/** + * Describes the scrolling logic between the content and the container + */ +export class ScrollProvider { + private onScrollUpdateEvent = new Event() + readonly onScrollUpdate = this.onScrollUpdateEvent.publicApi() + + private onSnapUpdateEvent = new Event() + readonly onSnapUpdate = this.onSnapUpdateEvent.publicApi() + + private onReadyEvent = new Event() + readonly onReady = this.onReadyEvent.publicApi() + + private content!: SceneObjectBoundariesProvider + private contentScrollLimit!: BufferedBoundariesProvider + private scrollArea = this.config.scrollArea + private scrollView = this.config.scrollView + + private cancelSet = new CancelSet() + + private isXOverflow = false + private isYOverflow = false + + private _enableScrollInertia: boolean + private dragVelocity: vec2 = vec2.zero() + private inertiaVelocity: vec2 = vec2.zero() + + private dragVelocityFilter = new MovingAverageFilter( + VELOCITY_WINDOW_SIZE, + vec2.zero, + averageVec2 + ) + + private decelerateTime = DECELERATE_TIME + private decelerateMinSpeed = DECELERATE_MIN_SPEED + + private elasticTime = ELASTIC_TIME + private elasticMinDistance = ELASTIC_MIN_DISTANCE + + private _scrollLimit: number + private enableScrollLimit: boolean + + private _contentLength: number = 0 + private contentOrigin = vec2.zero() + + private isGrabbed: boolean = false + + constructor(private config: ScrollProviderConfig) { + this._enableScrollInertia = config.enableScrollInertia + + this._scrollLimit = config.scrollLimit + this.enableScrollLimit = config.enableScrollLimit + + this.onReady.add(() => { + // Don't start updating until the content is ready, as the content is required for the update logic. + this.config.updateEvent.bind((event) => { + this.update() + }) + }) + } + + /** + * @returns if this class is ready to be used, which means + * that content is set + */ + get isReady(): boolean { + return this.content !== undefined + } + + /** + * @returns if the ScrollView will continue scrolling on release + */ + get enableScrollInertia(): boolean { + return this._enableScrollInertia + } + + /** + * Toggles if the ScrollView should continue scrolling on release + */ + set enableScrollInertia(enableScrollInertia: boolean) { + this._enableScrollInertia = enableScrollInertia + } + + /** + * @returns what amount of the scroll area should always be occupied + */ + get scrollLimit(): number { + return this._scrollLimit + } + + /** + * Sets the amount of the scroll area should always be occupied + */ + set scrollLimit(limit: number) { + this._scrollLimit = limit + } + + /** + * @returns the content position in local space + */ + get contentPosition(): vec3 { + return this.content.position + } + + /** + * Sets the position of the content in local space + */ + set contentPosition(position: vec3) { + this.content.position = position + } + + /** + * @returns the content length along the Y-axis + */ + get contentLength(): number { + return this._contentLength + } + + /** + * Sets the true length of the content in the case of pooling / other non-default use cases + */ + set contentLength(length: number) { + this._contentLength = length + } + + /** + * Resets the content origin for the purpose of calculating scrollPercentage. + * Assumes that the ScrollView is currently at the top of content in the pooling use case. + */ + resetContentOrigin() { + const originOffset = this.getOffsetToEdge({x: -1, y: 1, type: "Content"}) + this.contentOrigin = new vec2( + this.contentPosition.x + originOffset.x, + this.contentPosition.y + originOffset.y + ) + } + + get overflow() { + const scrollAreaSize = this.convertLocalUnitsToParentUnits( + this.scrollArea.size + ) + + const scrollViewHeight = scrollAreaSize.y + return this.contentLength - scrollViewHeight + } + + get scrollPercentage() { + const scrollPercentage = + MathUtils.clamp( + -this.contentOrigin.y + this.contentPosition.y, + 0, + this.overflow + ) / this.overflow + + return scrollPercentage + } + + onGrabStart(event: InteractorEvent) { + this.dragVelocityFilter.clear() + this.isGrabbed = true + this.dragVelocity = vec2.zero() + } + + onGrabEnd(event: InteractorEvent) { + this.isGrabbed = false + this.updateInertiaVelocity() + this.dragVelocity = vec2.zero() + } + + /** + * Sets scroll content. Should be called only one time to initialize the content + * and binds to onStartEvent. + * @param content - defines content boundaries + */ + setContent(content: SceneObjectBoundariesProvider): void { + if (this.content !== undefined) { + throw new Error("Content is already initialized in ScrollProvider.") + } + + this.content = content + this.contentScrollLimit = new BufferedBoundariesProvider( + this.content, + Rect.create(0, 0, 0, 0) + ) + this.recomputeBoundaries() + + // Sometimes this will be called after the user instantiates the ScrollView and sets the contentLength, so we ensure that prior values are respected. + if (this.contentLength === 0) { + this.contentLength = this.convertLocalUnitsToParentUnits( + this.content.size + ).y + } + + this.onReadyEvent.invoke() + } + + /** + * Recomputes content and scroll area boundaries + */ + recomputeBoundaries(): void { + this.content.recomputeStartingBoundaries() + this.scrollArea.recomputeStartingBoundaries() + + const scrollAreaSize = this.scrollArea.boundaries.getSize() + const invertedLimit = 1.0 - this.scrollLimit + this.contentScrollLimit.buffer = Rect.create( + invertedLimit * scrollAreaSize.x, + invertedLimit * scrollAreaSize.x, + invertedLimit * scrollAreaSize.y, + invertedLimit * scrollAreaSize.y + ) + + this.isYOverflow = this.scrollArea.size.y < this.content.size.y + this.isXOverflow = this.scrollArea.size.x < this.content.size.x + } + + /** + * Scrolls content according to a drag vector, along the enabled axis + * @param dragVector - 2D vector to move the content + */ + scrollBy(dragVector: vec2): void { + if (this.isGrabbed && getDeltaTime() === 0) { + return + } + + let deltaX = + this.scrollView.enableHorizontalScroll && this.isXOverflow + ? dragVector.x + : 0 + let deltaY = + this.scrollView.enableVerticalScroll && this.isYOverflow + ? dragVector.y + : 0 + + this.content.position = this.content.position.add( + new vec3(deltaX, deltaY, 0) + ) + + if (this.enableScrollLimit && this.isEdgeInsideScrollArea("ScrollLimit")) { + this.limitToEdgeInstantly("ScrollLimit") + this.dragVelocity = vec2.zero() + } else if (this.isGrabbed) { + const rawVelocity = new vec2(deltaX, deltaY).uniformScale( + 1 / getDeltaTime() + ) + + this.dragVelocity = this.dragVelocityFilter.filter(rawVelocity, getTime()) + + // If the filtered drag velocity is not the same direction as the current frame's delta, negate the delta to avoid hooking. + if (Math.sign(this.dragVelocity.x) !== Math.sign(deltaX)) { + this.content.position = this.content.position.add( + new vec3(-deltaX, 0, 0) + ) + } + if (Math.sign(this.dragVelocity.y) !== Math.sign(deltaY)) { + this.content.position = this.content.position.add( + new vec3(0, -deltaY, 0) + ) + } + } + + this.onScrollUpdateEvent.invoke({ + contentPosition: new vec2( + this.content.position.x, + this.content.position.y + ), + }) + } + + /** + * Snaps content to the selected edges + * @param selectedEdges - Struct that describes the selected edge as an {@link EdgeSelector} + */ + snapToEdges(selectedEdges: EdgeSelector): void { + this.content.position = this.content.position.add( + this.getOffsetToEdge(selectedEdges) + ) + } + + /** + * Checks if both inputted content edges are fully visible in the ScrollArea. + * @param xEdge - 0 if not checking any x-axis edge, 1 for right edge, -1 for left edge. + * @param yEdge - 0 if not checking any y-axis edge, 1 for top edge, -1 for bottom edge. + */ + checkContentEdgeFullyVisible(xEdge: 0 | 1 | -1, yEdge: 0 | 1 | -1): boolean { + let visible = true + + const contentOffset = this.contentOffset + + if (xEdge !== 0) { + if (xEdge === 1) { + visible = visible && contentOffset.right >= 0 + } else if (yEdge === -1) { + visible = visible && contentOffset.left <= 0 + } + } + + if (yEdge !== 0) { + if (yEdge === 1) { + visible = visible && contentOffset.top >= 0 + } else if (yEdge === -1) { + visible = visible && contentOffset.bottom <= 0 + } + } + + return visible + } + + private offsetBetween(a: Rect, b: Rect): Rect { + return Rect.create( + a.left - b.left, + a.right - b.right, + a.bottom - b.bottom, + a.top - b.top + ) + } + + get contentOffset(): Rect { + return this.offsetBetween( + this.scrollArea.boundaries, + this.content.boundaries + ) + } + + get scrollLimitOffset(): Rect { + return this.offsetBetween( + this.scrollArea.boundaries, + this.contentScrollLimit.boundaries + ) + } + + // Simulates physics (velocity upon release, friction, elasticity when past edge) when the user is not grabbing the ScrollView. + private update() { + if (this.isGrabbed || getDeltaTime() === 0) { + return + } + + const initialEdgeSelector = this.selectEdgesInsideScrollArea("Content") + if ( + this.inertiaVelocity.equal(vec2.zero()) && + initialEdgeSelector.x === 0 && + initialEdgeSelector.y === 0 + ) { + return + } + + const deltaTime = getDeltaTime() + + let currentPosition = this.content.position + let currentVelocity = this.inertiaVelocity + + // Apply friction to decelerate the contents post-interaction. + const frictionResults = this.applyFriction( + currentPosition, + currentVelocity, + this.decelerateTime, + deltaTime + ) + + currentPosition = frictionResults[0] + currentVelocity = frictionResults[1] + + this.content.position = currentPosition + + // Ensure that the content does not exceed the scroll limit boundaries, zeroing out the velocity if reaching the limit. + if (this.enableScrollLimit && this.isEdgeInsideScrollArea("ScrollLimit")) { + this.limitToEdgeInstantly("ScrollLimit") + currentPosition = this.content.position + currentVelocity = vec2.zero() + } + + // Apply elasticity to return the contents within the boundaries. + const elasticityResults = this.applyElasticity( + currentPosition, + currentVelocity, + this.elasticTime, + deltaTime + ) + + currentPosition = elasticityResults[0] + currentVelocity = elasticityResults[1] + + this.content.position = currentPosition + + // If the content is within the ScrollArea boundaries and has a low enough velocity, stop moving the contents to reduce update cost. + let currentEdgeSelector = this.selectEdgesInsideScrollArea("Content") + if ( + currentEdgeSelector.x === 0 && + Math.abs(this.inertiaVelocity.x) < this.decelerateMinSpeed + ) { + currentVelocity.x = 0 + } + if ( + currentEdgeSelector.y === 0 && + Math.abs(this.inertiaVelocity.y) < this.decelerateMinSpeed + ) { + currentVelocity.y = 0 + } + + this.inertiaVelocity = currentVelocity + + this.onScrollUpdateEvent.invoke({ + contentPosition: new vec2( + this.content.position.x, + this.content.position.y + ), + }) + } + + /** + * If there is a edge of the given type inside the scroll area, instantly snap to the edge. + * @param edgeType The type of edge to snap to. + */ + private limitToEdgeInstantly(edgeType: EdgeType): void { + const snapEdges: EdgeSelector = this.selectEdgesInsideScrollArea(edgeType) + const targetPositionOffset = this.getOffsetToEdge(snapEdges) + this.content.position = this.content.position.add(targetPositionOffset) + } + + /** + * Returns true if any edge of the given type is inside the scroll region, as long as the content is + * large enough in that dimension to be scrollable. + * @param edgeType the type of edge to check for + */ + private isEdgeInsideScrollArea(edgeType: EdgeType) { + const edgesInsideScrollArea = this.selectEdgesInsideScrollArea(edgeType) + return ( + (this.isXOverflow && edgesInsideScrollArea.x !== 0) || + (this.isYOverflow && edgesInsideScrollArea.y !== 0) + ) + } + + private selectEdgesInsideScrollArea(edgeType: EdgeType): EdgeSelector { + const snapEdges: EdgeSelector = {x: 0, y: 0, type: edgeType} + const offset = + edgeType === "Content" ? this.contentOffset : this.scrollLimitOffset + + /** + * only try to snap if there is an overflow in the x dimension + */ + if (this.isXOverflow) { + if (offset.left < 0) { + /* + * if left border inside the scroll area, + * snap to left side + */ + snapEdges.x = -1 + } else if (offset.right > 0) { + /* + * if right border inside the scroll area, + * snap to right side + */ + snapEdges.x = 1 + } + } + + /** + * only try to snap if there is an overflow in the y dimension + */ + if (this.isYOverflow) { + if (offset.top > 0) { + /* + * if top border inside the scroll area, + * snap to top side + */ + snapEdges.y = 1 + } else if (offset.bottom < 0) { + /* + * if bottom border inside the scroll area, + * snap to bottom side + */ + snapEdges.y = -1 + } + } + + return snapEdges + } + + private getOffsetToEdge(selectedEdges: EdgeSelector): vec3 { + const offset = + selectedEdges.type === "Content" + ? this.contentOffset + : this.scrollLimitOffset + + const targetPositionOffset = vec2.zero() + if (selectedEdges.x === -1) { + targetPositionOffset.x = offset.left + } else if (selectedEdges.x === 1) { + targetPositionOffset.x = offset.right + } + + if (selectedEdges.y === 1) { + targetPositionOffset.y = offset.top + } else if (selectedEdges.y === -1) { + targetPositionOffset.y = offset.bottom + } + + const worldUnitOffset = + this.convertLocalUnitsToParentUnits(targetPositionOffset) + + return new vec3(worldUnitOffset.x, worldUnitOffset.y, 0) + } + + private updateInertiaVelocity() { + let newInertiaVelocity = vec2.zero() + + if (Math.sign(this.dragVelocity.x) === Math.sign(this.inertiaVelocity.x)) { + newInertiaVelocity.x = this.dragVelocity.x + this.inertiaVelocity.x + } else { + newInertiaVelocity.x = this.dragVelocity.x + } + + if (Math.sign(this.dragVelocity.y) === Math.sign(this.inertiaVelocity.y)) { + newInertiaVelocity.y = this.dragVelocity.y + this.inertiaVelocity.y + } else { + newInertiaVelocity.y = this.dragVelocity.y + } + + this.inertiaVelocity = newInertiaVelocity + } + + private applyFriction( + position: vec3, + velocity: vec2, + decelerateTime: number, + deltaTime: number + ): [vec3, vec2] { + const edgeSelector = this.selectEdgesInsideScrollArea("Content") + + // If the content is within the X-axis bounds, move the contents along the X-axis and apply friction. + if (this.scrollView.enableHorizontalScroll && edgeSelector.x === 0) { + const smoothResults = smoothSlide( + position.x, + velocity.x, + decelerateTime, + deltaTime + ) + position.x = smoothResults[0] + velocity.x = smoothResults[1] + } + + // If the content is within the Y-axis bounds, move the contents along the Y-axis and apply friction. + if (this.scrollView.enableVerticalScroll && edgeSelector.y === 0) { + const smoothResults = smoothSlide( + position.y, + velocity.y, + decelerateTime, + deltaTime + ) + position.y = smoothResults[0] + velocity.y = smoothResults[1] + } + + return [position, velocity] + } + + private applyElasticity( + position: vec3, + velocity: vec2, + elasticTime: number, + deltaTime: number + ): [vec3, vec2] { + const edgeSelector = this.selectEdgesInsideScrollArea("Content") + const contentOffset = this.getOffsetToEdge(edgeSelector) + + // If the content is past the X-axis bounds, return the content closer to the boundary. + if (this.scrollView.enableHorizontalScroll && edgeSelector.x !== 0) { + const contentLimitX = position.x + contentOffset.x + + const smoothResults = smoothDamp( + position.x, + contentLimitX, + velocity.x, + elasticTime, + deltaTime + ) + position.x = smoothResults[0] + velocity.x = smoothResults[1] + + // If the content is close enough to the bounds, place the content exactly on the boundary to reduce update cost. + if (Math.abs(position.x - contentLimitX) < this.elasticMinDistance) { + position.x = contentLimitX + velocity.x = 0 + } + } + + // If the content is past the Y-axis bounds, return the content closer to the boundary. + if (this.scrollView.enableVerticalScroll && edgeSelector.y !== 0) { + const contentLimitY = position.y + contentOffset.y + + const smoothResults = smoothDamp( + position.y, + contentLimitY, + velocity.y, + elasticTime, + deltaTime + ) + position.y = smoothResults[0] + velocity.y = smoothResults[1] + + // If the content is close enough to the bounds, place the content exactly on the boundary to reduce update cost. + if (Math.abs(position.y - contentLimitY) < this.elasticMinDistance) { + position.y = contentLimitY + velocity.y = 0 + } + } + + return [position, velocity] + } + + /** + * Converts the offset (normalized -1 to 1) to local units relative to the ScrollView canvas. + */ + public convertLocalOffsetToParentOffset(offset: Rect): Rect { + const bottomLeftCorner = new vec2(offset.left, offset.bottom) + const topRightCorner = new vec2(offset.right, offset.top) + + const bottomLeftOffsetWorld = + this.convertLocalUnitsToParentUnits(bottomLeftCorner) + const topRightOffsetWorld = + this.convertLocalUnitsToParentUnits(topRightCorner) + + return Rect.create( + bottomLeftOffsetWorld.x, + topRightOffsetWorld.x, + bottomLeftOffsetWorld.y, + topRightOffsetWorld.y + ) + } + + /** + * Converts local units (normalized -1 to 1) to world units relative to the ScrollView canvas. + */ + private convertLocalUnitsToWorldUnits(localUnits: vec2): vec2 { + const origin = this.config.screenTransform.localPointToWorldPoint( + vec2.zero() + ) + + const invertQuat = this.config.screenTransform + .getSceneObject() + .getTransform() + .getWorldRotation() + .invert() + + const worldUnits = invertQuat.multiplyVec3( + this.config.screenTransform.localPointToWorldPoint(localUnits).sub(origin) + ) + + return new vec2(worldUnits.x, worldUnits.y) + } + + /** + * Converts local units (-1 to 1) to parent units relative to the ScrollView canvas. + */ + public convertLocalUnitsToParentUnits(localUnits: vec2): vec2 { + const worldUnits = this.convertLocalUnitsToWorldUnits(localUnits) + const worldScale = this.config.screenTransform + .getTransform() + .getWorldScale() + + return new vec2(worldUnits.x / worldScale.x, worldUnits.y / worldScale.y) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollProvider.ts.meta new file mode 100644 index 00000000..b9aedf77 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! ca94ec7a-c84b-4714-9d67-3c54a14aca99 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! ca94ec7a-c84b-4714-9d67-3c54a14aca99 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 86a5ca1a-4075-48b3-9f10-a695e348ed2e + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollView.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollView.ts new file mode 100644 index 00000000..d3878712 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollView.ts @@ -0,0 +1,420 @@ +import {DragInteractorEvent} from "../../../Core/Interactor/InteractorEvent" +import {InteractorInputType} from "../../../Core/Interactor/Interactor" +import {MobileInteractor} from "../../../Core/MobileInteractor/MobileInteractor" +import NativeLogger from "../../../Utils/NativeLogger" +import {SceneObjectBoundariesProvider} from "./boundariesProvider/SceneObjectBoundariesProvider" +import {ScrollArea} from "./ScrollArea" +import {ScrollProvider} from "./ScrollProvider" +import {VisualBoundariesProvider} from "./boundariesProvider/VisualBoundariesProvider" + +export const AXIS_DIRECTION = [-1, 0, 1] as const +export type AxisDirection = (typeof AXIS_DIRECTION)[number] + +export const EDGE_TYPE = ["Content", "ScrollLimit"] as const +export type EdgeType = (typeof EDGE_TYPE)[number] + +/** + * Describes the selected edge as {x, y}, specifically: + * (top-left, top-right, bottom-left, bottom-right, top, left, right, bottom) + */ +export type EdgeSelector = { + /** + * Selects the x axis direction (left = -1, none = 0, right = 1) + */ + x: AxisDirection + + /** + * Selects the y axis direction (bottom = -1, none = 0, top = 1) + */ + y: AxisDirection + + /** + * Which type of edge to snap to (Content = The edges of the content, ScrollLimit = The edges of the scrollable region) + */ + type: EdgeType +} + +/** + * Base argument used for ScrollView events + */ +export type ScrollViewEventArgs = { + /** + * Position of the content in world units relative to the parent's center + */ + contentPosition: vec2 +} + +/** + * Base argument used for ScrollView events + */ +export type ScrollViewFocusEventArgs = { + /** + * The position of where the interactor entered or exited the scroll area. + */ + position: vec3 | null +} + +const TAG = "ScrollView" + +/** + * ScrollView will have two children: + * - the content wrapper: created by ScrollView user + * - scroll area: implemented internally by ScrollView + * and not exposed to the user. + * + * To avoid issues related to + * initialization order, we check the number of children + * on StartEvent + */ +const EXPECTED_CHILDREN_COUNT = 2 + +/** + * This class is responsible for creating and positioning grid content items based on a specified prefab and item count. It instantiates the items and arranges them vertically with a specified offset. + */ +@component +export class ScrollView extends BaseScriptComponent { + // Native Logging + private log = new NativeLogger(TAG) + + private scrollArea!: ScrollArea + private scrollProvider!: ScrollProvider + private mask!: MaskingComponent + + // Initialized on start + private contentBoundariesProvider!: SceneObjectBoundariesProvider + + private updateEvent = this.createEvent("UpdateEvent") + + @input + _debugDrawEnabled: boolean = false + + @input + enableHorizontalScroll: boolean = false + + @input + enableVerticalScroll: boolean = true + + @input + _enableScrollInertia: boolean = true + + @input + enableScrollLimit: boolean = true + + @input + @widget(new SliderWidget(0, 1, 0.01)) + _scrollLimit: number = 0.3 + + @input("vec2", "{1, 1}") + scrollAreaBounds: vec2 = new vec2(1, 1) + + onAwake() { + this.scrollArea = this.createScrollArea() + this.scrollProvider = this.createScrollProvider(this.scrollArea) + this.mask = this.sceneObject.createComponent("Component.MaskingComponent") + + this.defineScriptEvents() + } + + private onDestroy() { + this.scrollArea.destroy() + } + + private createScrollArea() { + const scrollArea = new ScrollArea({ + debugDrawEnabled: this.debugDrawEnabled, + parentSceneObject: this.sceneObject, + scrollAreaBounds: this.scrollAreaBounds, + }) + + return scrollArea + } + + private createScrollProvider(scrollArea: ScrollArea) { + const scrollProvider = new ScrollProvider({ + scrollArea: this.scrollArea.boundariesProvider, + scrollLimit: this.scrollLimit, + enableScrollInertia: this.enableScrollInertia, + enableScrollLimit: this.enableScrollLimit, + enableHorizontalScroll: this.enableHorizontalScroll, + enableVerticalScroll: this.enableVerticalScroll, + scrollView: this, + screenTransform: this.sceneObject.getComponent( + "Component.ScreenTransform", + ), + updateEvent: this.updateEvent, + }) + + scrollArea.onDragStart.add((event) => { + this.processPlanecastDrag(event) + this.processTouchpadDrag(event) + }) + scrollArea.onDragUpdate.add((event) => { + this.processPlanecastDrag(event) + this.processTouchpadDrag(event) + }) + scrollArea.onDragEnd.add((event) => { + scrollProvider.onGrabEnd(event) + }) + + scrollArea.onTriggerStart.add((event) => { + scrollProvider.onGrabStart(event) + }) + + return scrollProvider + } + + private createContentBoundariesProvider() { + if (this.sceneObject.getChildrenCount() !== EXPECTED_CHILDREN_COUNT) { + throw new Error( + "ScrollView requires exactly one child that wraps the content", + ) + } + + let contentSceneObject: SceneObject | undefined + for (const child of this.sceneObject.children) { + if (child !== this.scrollArea.getSceneObject()) { + contentSceneObject = child + } + } + + if (contentSceneObject === undefined) { + throw new Error( + "Couldn't find content scene object among ScrollView children.", + ) + } + + return new VisualBoundariesProvider(contentSceneObject) + } + + private defineScriptEvents() { + this.createEvent("OnDestroyEvent").bind(() => this.onDestroy()) + this.createEvent("OnStartEvent").bind(() => { + this.contentBoundariesProvider = this.createContentBoundariesProvider() + this.scrollProvider.setContent(this.contentBoundariesProvider) + this.scrollProvider.snapToEdges({x: -1, y: 1, type: "Content"}) + this.scrollProvider.resetContentOrigin() + // We recompute boundaries once more to ensure that the scroll limit anchor is set properly. + this.scrollProvider.recomputeBoundaries() + }) + } + + recomputeBoundaries = () => { + if (!this.scrollProvider.isReady) { + this.log.w( + "recomputeBoundaries called before OnStartEvent. Call ignored.", + ) + } else { + this.scrollProvider.recomputeBoundaries() + } + } + private deferOnReady = (callback: () => void) => { + if (!this.scrollProvider.isReady) { + this.scrollProvider.onReady.add(callback) + } else { + callback() + } + } + snapToEdges = (selectedEdges: EdgeSelector) => { + this.deferOnReady(() => this.scrollProvider.snapToEdges(selectedEdges)) + } + scrollBy = (dragVector: vec2) => { + this.deferOnReady(() => this.scrollProvider.scrollBy(dragVector)) + } + get onScrollUpdate() { + return this.scrollProvider.onScrollUpdate + } + get onSnapUpdate() { + return this.scrollProvider.onSnapUpdate + } + get onReady() { + return this.scrollProvider.onReady + } + get onFocusEnter() { + return this.scrollArea.onFocusEnter + } + get onFocusExit() { + return this.scrollArea.onFocusExit + } + + get debugDrawEnabled(): boolean { + return this._debugDrawEnabled + } + + set debugDrawEnabled(debugDrawEnabled: boolean) { + if (debugDrawEnabled === this._debugDrawEnabled) { + return + } + this._debugDrawEnabled = debugDrawEnabled + this.scrollArea.debugDrawEnabled = debugDrawEnabled + } + + get enableScrollInertia(): boolean { + return this._enableScrollInertia + } + + set enableScrollInertia(enableScrollInertia: boolean) { + if (enableScrollInertia === this._enableScrollInertia) { + return + } + this._enableScrollInertia = enableScrollInertia + this.scrollProvider.enableScrollInertia = enableScrollInertia + } + + get scrollLimit(): number { + return this._scrollLimit + } + + set scrollLimit(limit: number) { + if (this._scrollLimit === limit) { + return + } + this._scrollLimit = limit + this.scrollProvider.scrollLimit = limit + } + + get contentPosition(): vec3 { + return this.scrollProvider.contentPosition + } + + set contentPosition(position: vec3) { + this.scrollProvider.contentPosition = position + } + + /** + * @returns the offset to each content edge and the ScrollArea in world units relative to the canvas' rotation. + */ + get contentOffset(): Rect { + return this.scrollProvider.convertLocalOffsetToParentOffset( + this.scrollProvider.contentOffset, + ) + } + + /** + * @returns the length of the content along the y-axis in local units relative to the ScrollView canvas. + */ + get contentLength(): number { + return this.scrollProvider.contentLength + } + + /** + * @param length - the length of the content along the y-axis in local units relative to the ScrollView canvas. + */ + set contentLength(length: number) { + if (length === this.scrollProvider.contentLength) { + return + } + this.scrollProvider.contentLength = length + } + + /** + * Resets the content origin for the purpose of calculating scrollPercentage. + * Assumes that the ScrollView is currently at the top of content in the pooling use case. + */ + resetContentOrigin(): void { + this.scrollProvider.resetContentOrigin() + } + + /** + * @returns the ScrollArea's size in local units relative to the ScrollView canvas. + */ + get scrollAreaSize(): vec2 { + return this.scrollProvider.convertLocalUnitsToParentUnits( + this.scrollArea.boundariesProvider.size, + ) + } + + /** + * @returns the ScrollArea collider's BoxShape's bounds. + */ + get scrollColliderBounds(): vec2 { + return this.scrollArea.scrollColliderBounds + } + + /** + * @param bounds - the ScrollArea collider's BoxShape's bounds. + */ + set scrollColliderBounds(bounds: vec2) { + this.scrollArea.scrollColliderBounds = bounds + } + + /** + * @returns the amount of content overflow along the y-axis in local units relative to the ScrollView's canvas. + */ + get overflow(): number { + return this.scrollProvider.overflow + } + + /** + * @returns the scroll percentage of the ScrollView (0=top of ScrollView, 1= bottom). + */ + get scrollPercentage(): number { + return this.scrollProvider.scrollPercentage + } + + /** + * Checks if both inputted content edges are fully visible in the ScrollArea. + * @param xEdge - 0 if not checking any x-axis edge, 1 for right edge, -1 for left edge. + * @param yEdge - 0 if not checking any y-axis edge, 1 for top edge, -1 for bottom edge. + */ + checkContentEdgeFullyVisible(xEdge: 0 | 1 | -1, yEdge: 0 | 1 | -1): boolean { + return this.scrollProvider.checkContentEdgeFullyVisible(xEdge, yEdge) + } + + private localizeDragVector(dragVector: vec3): vec2 { + const transform = this.sceneObject.getTransform() + + const localXAxis = transform.getWorldRotation().multiplyVec3(vec3.right()) + + const localYAxis = transform.getWorldRotation().multiplyVec3(vec3.up()) + + const localizedX = localXAxis.dot(dragVector) / transform.getWorldScale().x + const localizedY = localYAxis.dot(dragVector) / transform.getWorldScale().y + + return new vec2(localizedX, localizedY) + } + + private localizeTouchpadVector(touchpadVector: vec3): vec2 { + const screenTransform = this.sceneObject.getComponent( + "Component.ScreenTransform", + ) + + // Mobile touchpad drag uses a screen space of [0,1], while screen transforms use a screen space of [-1,1] + const touchpadVector2D = new vec2( + touchpadVector.x * 2, + touchpadVector.y * 2, + ) + + const origin = screenTransform.localPointToWorldPoint(vec2.zero()) + + const worldSpaceVector = screenTransform + .localPointToWorldPoint(touchpadVector2D) + .sub(origin) + + return this.localizeDragVector(worldSpaceVector) + } + + private processPlanecastDrag(event: DragInteractorEvent) { + if (event.planecastDragVector === null) { + return + } + const localDrag = this.localizeDragVector(event.planecastDragVector) + this.scrollProvider.scrollBy(localDrag) + } + + private processTouchpadDrag(event: DragInteractorEvent) { + if (event.interactor.inputType === InteractorInputType.Mobile) { + const mobileInteractor = event.interactor as MobileInteractor + + if (mobileInteractor.touchpadDragVector !== null) { + const screenSpaceTouchpadDrag = + mobileInteractor.touchpadDragVector?.uniformScale( + 1 / mobileInteractor.touchpadScrollSpeed, + ) ?? vec3.zero() + + this.scrollProvider.scrollBy( + this.localizeTouchpadVector(screenSpaceTouchpadDrag), + ) + } + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollView.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollView.ts.meta new file mode 100644 index 00000000..06f7b802 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/ScrollView.ts.meta @@ -0,0 +1,57 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 6ad8e076-1f73-4dde-9236-fd993752a829 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 6ad8e076-1f73-4dde-9236-fd993752a829 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 22232e5e-be4f-4ef3-9b80-5f899c815454 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _debugDrawEnabled: false + _enableScrollInertia: false + _scrollLimit: false + enableHorizontalScroll: false + enableScrollLimit: false + enableVerticalScroll: false + scrollAreaBounds: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - enableHorizontalScroll: false + enableVerticalScroll: true + enableScrollLimit: true + _debugDrawEnabled: false + _enableScrollInertia: true + _scrollLimit: 0.300000 + scrollAreaBounds: ! {x: 1.000000, y: 1.000000} + ScriptTypes: + - + {} + InputLines: + - // @input bool _debugDrawEnabled + - // @input bool enableHorizontalScroll + - // @input bool enableVerticalScroll = true + - // @input bool _enableScrollInertia = true + - // @input bool enableScrollLimit = true + - '// @input float _scrollLimit = 0.3 {"widget":"slider", "min":0, "max":1, "step":0.01}' + - '// @input vec2 scrollAreaBounds = "{1, 1}"' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BoundariesProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BoundariesProvider.ts new file mode 100644 index 00000000..f5c5bc0b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BoundariesProvider.ts @@ -0,0 +1,16 @@ +/** + * Base class to compute boundaries + */ +export abstract class BoundariesProvider { + /** + * The boundaries as a {@link Rect}. + */ + abstract get boundaries(): Rect + + /** + * @returns the size of the rectangle boundaries as (width, height). + */ + get size(): vec2 { + return this.boundaries.getSize() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BoundariesProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BoundariesProvider.ts.meta new file mode 100644 index 00000000..344930ea --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BoundariesProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 92ed6cca-1a5e-4bc7-9eb7-6a94dc68e57a + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 92ed6cca-1a5e-4bc7-9eb7-6a94dc68e57a + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 3fb5d181-1ad1-490f-b6aa-7a6ecde7b7d3 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BufferedBoundariesProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BufferedBoundariesProvider.ts new file mode 100644 index 00000000..ebcb87e6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BufferedBoundariesProvider.ts @@ -0,0 +1,46 @@ +import {BoundariesProvider} from "./BoundariesProvider" + +/** + * Computes a boundary by adding a buffer around another boundariesProvider + */ +export class BufferedBoundariesProvider extends BoundariesProvider { + private _buffer: Rect + + /** + * Computes a boundary by adding a buffer around another boundariesProvider + * @param toBuffer - The BoundariesProvider to buffer + * @param initialBuffer - The amount of buffer to apply + */ + constructor( + readonly toBuffer: BoundariesProvider, + readonly initialBuffer: Rect + ) { + super() + + this._buffer = initialBuffer + } + + /** + * Get the amount of buffer being applied + */ + get buffer(): Rect { + return this._buffer + } + + /** + * Set the amount of buffer being applied + * @param newBuffer - The new value + */ + set buffer(newBuffer: Rect) { + this._buffer = newBuffer + } + + get boundaries(): Rect { + return Rect.create( + this.toBuffer.boundaries.left - this.buffer.left, + this.toBuffer.boundaries.right + this.buffer.right, + this.toBuffer.boundaries.bottom - this.buffer.bottom, + this.toBuffer.boundaries.top + this.buffer.top + ) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BufferedBoundariesProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BufferedBoundariesProvider.ts.meta new file mode 100644 index 00000000..5eb147ff --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/BufferedBoundariesProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 693dfe69-1749-4270-9961-65fa5497ead6 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 693dfe69-1749-4270-9961-65fa5497ead6 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 9b440bc9-207e-4be0-b68c-705383b47068 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/SceneObjectBoundariesProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/SceneObjectBoundariesProvider.ts new file mode 100644 index 00000000..4d75a361 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/SceneObjectBoundariesProvider.ts @@ -0,0 +1,106 @@ +import {BoundariesProvider} from "./BoundariesProvider" + +const TAG = "SceneObjectBoundariesProvider" + +/** + * Apply a boundary by computing it from a Scene Object + */ +export abstract class SceneObjectBoundariesProvider extends BoundariesProvider { + protected screenTransform: ScreenTransform = this.sceneObject.getComponent( + "Component.ScreenTransform" + ) + + protected startingPosition = this.localPointToParentPoint( + this.screenTransform, + vec2.zero() + ) + protected startingBoundaries: Rect + + /** + * Apply a boundary by computing it from a Scene Object. Must have a ScreenTransform. + * @param sceneObject - The scene object to compute using + */ + constructor(readonly sceneObject: SceneObject) { + super() + + if (!this.screenTransform) { + throw new Error(`ScreenTransform missing in ${this.sceneObject.name}`) + } + + const position = this.screenTransform.localPointToWorldPoint(vec2.zero()) + this.startingPosition = new vec2(position.x, position.y) + this.startingBoundaries = this.getBoundaries() + } + + get boundaries(): Rect { + const offsetPosition = this.localPointToParentPoint( + this.screenTransform, + vec2.zero() + ).sub(this.startingPosition) + return Rect.create( + this.startingBoundaries.left + offsetPosition.x, + this.startingBoundaries.right + offsetPosition.x, + this.startingBoundaries.bottom + offsetPosition.y, + this.startingBoundaries.top + offsetPosition.y + ) + } + + /** + * @returns local position in world units relative to the parent's center + */ + get position(): vec3 { + return this.screenTransform.position + } + + /** + * Sets local position in world units relative to the parent's center + * @param position - desired position + */ + set position(position: vec3) { + this.screenTransform.position = position + } + + /** + * Recomputes starting boundaries + */ + recomputeStartingBoundaries(): void { + this.startingPosition = this.localPointToParentPoint( + this.screenTransform, + vec2.zero() + ) + this.startingBoundaries = this.getBoundaries() + } + + protected abstract getBoundaries(): Rect + + protected createScreenTransformRectBoundaries( + screenTransform: ScreenTransform + ): Rect { + const topLeftCorner = this.localPointToParentPoint( + screenTransform, + new vec2(-1, 1) + ) + + const bottomRightCorner = this.localPointToParentPoint( + screenTransform, + new vec2(1, -1) + ) + + return Rect.create( + topLeftCorner.x, + bottomRightCorner.x, + bottomRightCorner.y, + topLeftCorner.y + ) + } + + private localPointToParentPoint( + screenTransform: ScreenTransform, + position: vec2 + ) { + const worldPoint = screenTransform.localPointToWorldPoint(position) + const parentPoint = this.screenTransform.worldPointToParentPoint(worldPoint) + + return parentPoint + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/SceneObjectBoundariesProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/SceneObjectBoundariesProvider.ts.meta new file mode 100644 index 00000000..8dacee01 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/SceneObjectBoundariesProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 400422dd-d000-4a20-969a-c83ab3f2e188 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 400422dd-d000-4a20-969a-c83ab3f2e188 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 4498e7a1-3bfd-48d9-aeb9-b44507f216f5 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/ScreenTransformBoundariesProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/ScreenTransformBoundariesProvider.ts new file mode 100644 index 00000000..5ebbc316 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/ScreenTransformBoundariesProvider.ts @@ -0,0 +1,14 @@ +import {SceneObjectBoundariesProvider} from "./SceneObjectBoundariesProvider" + +/** + * Wraps screen transform boundaries + */ +export class ScreenTransformBoundariesProvider extends SceneObjectBoundariesProvider { + protected getBoundaries(): Rect { + if (!this.sceneObject.enabled) { + return Rect.create(0, 0, 0, 0) + } + + return this.createScreenTransformRectBoundaries(this.screenTransform) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/ScreenTransformBoundariesProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/ScreenTransformBoundariesProvider.ts.meta new file mode 100644 index 00000000..6ef83c1c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/ScreenTransformBoundariesProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 7868171c-6a34-49a8-a117-caf0062e2a07 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 7868171c-6a34-49a8-a117-caf0062e2a07 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 4bc9bc9e-1873-4d93-9e08-115ef820c1c0 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/VisualBoundariesProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/VisualBoundariesProvider.ts new file mode 100644 index 00000000..1c42dd01 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/VisualBoundariesProvider.ts @@ -0,0 +1,62 @@ +import {SceneObjectBoundariesProvider} from "./SceneObjectBoundariesProvider" + +const TAG = "VisualBoundariesProvider" + +/** + * Computes boundaries for elements with BaseMeshVisual + */ +export class VisualBoundariesProvider extends SceneObjectBoundariesProvider { + protected getBoundaries(): Rect { + if (!this.sceneObject.enabled) { + return Rect.create(0, 0, 0, 0) + } + + return this.getNodeBoundaries(this.sceneObject) + } + + private getNodeBoundaries(node: SceneObject): Rect { + if (!node.enabled) { + // Infinity doesn't work, but MAX_VALUE === Infinity + return Rect.create( + Number.MAX_VALUE, + -Number.MAX_VALUE, + Number.MAX_VALUE, + -Number.MAX_VALUE + ) + } + + const rect = this.createNodeRectBoundaries(node) + + for (const child of node.children) { + const childRect = this.getNodeBoundaries(child) + rect.left = Math.min(rect.left, childRect.left) + rect.right = Math.max(rect.right, childRect.right) + rect.bottom = Math.min(rect.bottom, childRect.bottom) + rect.top = Math.max(rect.top, childRect.top) + } + + return rect + } + + private createNodeRectBoundaries(sceneObject: SceneObject): Rect { + const screenTransform = sceneObject.getComponent( + "Component.ScreenTransform" + ) + if (!screenTransform) { + throw new Error(`Missing ScreenTransform attached to ${sceneObject.name}`) + } + + const baseMeshVisual = sceneObject.getComponent("Component.BaseMeshVisual") + if (!baseMeshVisual) { + // Infinity doesn't work, but MAX_VALUE === Infinity + return Rect.create( + Number.MAX_VALUE, + -Number.MAX_VALUE, + Number.MAX_VALUE, + -Number.MAX_VALUE + ) + } + + return this.createScreenTransformRectBoundaries(screenTransform) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/VisualBoundariesProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/VisualBoundariesProvider.ts.meta new file mode 100644 index 00000000..4879862b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ScrollView/boundariesProvider/VisualBoundariesProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! f627f668-d38d-4f1a-8daa-848b1073e966 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! f627f668-d38d-4f1a-8daa-848b1073e966 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! dd277d07-ac8e-4e70-a7c7-612abda0d7d4 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/Slider/Slider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/Slider/Slider.ts new file mode 100644 index 00000000..282c845c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/Slider/Slider.ts @@ -0,0 +1,793 @@ +import Event, {PublicApi, unsubscribe} from "../../../Utils/Event" + +import {DragInteractorEvent} from "../../../Core/Interactor/InteractorEvent" +import {DragType} from "../../../Core/Interactor/Interactor" +import {Interactable} from "../../Interaction/Interactable/Interactable" +import NativeLogger from "../../../Utils/NativeLogger" +import animate from "../../../Utils/animate" +import {createCallback} from "../../../Utils/InspectorCallbacks" +import {validate} from "../../../Utils/validate" + +const TAG = "Slider" + +/** + * Describes the current state of the slider. + */ +export type SliderState = { + // The current drag vector provided by the slider's underlying Interactable + dragVector: vec3 | null + + // The raw value of the knob's position as an offset from the slider center along the track's axis. + rawValue: number + + // The raw value of the knob's position, snapped to the nearest slider step. + snappedValue: number + + // The actual numeric value displayed by the slider. + displayValue: number +} + +/** + * Describes the current bounds and orientation of the slider track (the path of the slider knob). + */ +export type TrackState = { + trackMin: number + trackMax: number + trackSize: number + trackDirection: vec3 +} +export type SliderBounds = { + start: vec3 + end: vec3 + minAnchor: Rect + maxAnchor: Rect +} +export type DragUpdate = { + dragVector: vec3 + dragPoint: vec3 +} + +/** + * This class represents a numerical slider control powered by Interaction Kit's hand tracking interactions. It allows users to adjust a value by sliding a handle along a track. + */ +@component +export class Slider extends BaseScriptComponent { + @input + @hint("The minimum numeric value of the slider") + private _minValue: number = 0 + @input + @hint("The maximum numeric value of the slider") + private _maxValue: number = 1 + @input + @hint("The initial numeric value of the slider") + startValue: number = 0.5 + @input + @hint( + "Enable this to change the slider's value in steps rather than continuously", + ) + stepBehavior: boolean = false + @input + @hint("The size of the steps that the slider's value will be changed in.") + @showIf("stepBehavior", true) + private _stepSize: number = 0 + + @input + @showIf("isToggleable", true) + @hint("The duration of the toggle animation in seconds.") + toggleDuration: number = 0.2 + + @ui.separator + @input + @hint("The position of the slider knob when the minimum value is reached.") + sliderMin!: SceneObject + @input + @hint("The position of the slider knob when the maximum value is reached.") + sliderMax!: SceneObject + @input("SceneObject") + @hint( + "The SceneObject representing the knob of the slider which will be moved along the path between the positions provided by sliderMin and sliderMax when the value is updated. Please ensure the SceneObject has an Interactable component attached.", + ) + private _sliderKnob: SceneObject | undefined + + @ui.separator + @input + @hint( + "Enable this to add functions from another script to this component's callback events", + ) + editEventCallbacks: boolean = false + + @ui.group_start("On Hover Enter Callbacks") + @showIf("editEventCallbacks") + @input("Component.ScriptComponent") + @hint("The script containing functions to be called on hover enter") + @allowUndefined + private customFunctionForOnHoverEnter: ScriptComponent | undefined + @input + @hint( + "The names for the functions on the provided script, to be called on hover enter", + ) + @allowUndefined + private onHoverEnterFunctionNames: string[] = [] + @ui.group_end + @ui.group_start("On Hover Exit Callbacks") + @showIf("editEventCallbacks") + @input("Component.ScriptComponent") + @hint("The script containing functions to be called on hover exit") + @allowUndefined + private customFunctionForOnHoverExit: ScriptComponent | undefined + @input + @hint( + "The names for the functions on the provided script, to be called on hover exit", + ) + @allowUndefined + private onHoverExitFunctionNames: string[] = [] + @ui.group_end + @ui.group_start("On Slide Start Callbacks") + @showIf("editEventCallbacks") + @input("Component.ScriptComponent") + @hint("The script containing functions to be called on slide start") + @allowUndefined + private customFunctionForOnSlideStart: ScriptComponent | undefined + @input + @hint( + "The names for the functions on the provided script, to be called on slide start", + ) + @allowUndefined + private onSlideStartFunctionNames: string[] = [] + @ui.group_end + @ui.group_start("On Slide End Callbacks") + @showIf("editEventCallbacks") + @input("Component.ScriptComponent") + @hint("The script containing functions to be called on slide end") + @allowUndefined + private customFunctionForOnSlideEnd: ScriptComponent | undefined + @input + @hint( + "The names for the functions on the provided script, to be called on slide end", + ) + @allowUndefined + private onSlideEndFunctionNames: string[] = [] + @ui.group_end + @ui.group_start("On Value Update Callbacks") + @showIf("editEventCallbacks") + @input("Component.ScriptComponent") + @hint("The script containing functions to be called on value update") + @allowUndefined + private customFunctionForOnValueUpdate: ScriptComponent | undefined + @input + @hint( + "The names for the functions on the provided script, to be called on value update", + ) + @allowUndefined + private onValueUpdateFunctionNames: string[] = [] + @ui.group_end + @ui.group_start("On Min Value Reached Callbacks") + @showIf("editEventCallbacks") + @input("Component.ScriptComponent") + @hint("The script containing functions to be called on min value reached") + @allowUndefined + private customFunctionForOnMinValueReached: ScriptComponent | undefined + @input + @hint( + "The names for the functions on the provided script, to be called when minimum value is reached", + ) + @allowUndefined + private onMinValueReachedFunctionNames: string[] = [] + @ui.group_end + @ui.group_start("On Max Value Reached Callbacks") + @showIf("editEventCallbacks") + @input("Component.ScriptComponent") + @hint("The script containing functions to be called on max value reached") + @allowUndefined + private customFunctionForOnMaxValueReached: ScriptComponent | undefined + @input + @hint( + "The names for the functions on the provided script, to be called when maximum value is reached", + ) + @allowUndefined + private onMaxValueReachedFunctionNames: string[] = [] + @ui.group_end + private log = new NativeLogger(TAG) + + private _startPosition!: vec3 + private _endPosition!: vec3 + + private sliderBounds!: SliderBounds + private minBound!: vec2 + private maxBound!: vec2 + + private trackState: TrackState | null = null + private sliderState: SliderState | null = null + + private sliderKnobScreenTransform: ScreenTransform | undefined + + private interactable: Interactable | null = null + + private unsubscribeBag: unsubscribe[] = [] + + private isDragging = false + + // Events + private onHoverEnterEvent: Event = new Event() + private onHoverExitEvent: Event = new Event() + private onSlideStartEvent: Event = new Event() + private onSlideEndEvent: Event = new Event() + private onMinValueReachedEvent: Event = new Event() + private onMaxValueReachedEvent: Event = new Event() + private onValueUpdateEvent: Event | null = null + + onHoverEnter!: PublicApi + onHoverExit!: PublicApi + onSlideStart!: PublicApi + onSlideEnd!: PublicApi + onValueUpdate!: PublicApi + onMinValueReached!: PublicApi + onMaxValueReached!: PublicApi + + transform!: Transform + + onAwake(): void { + validate(this.sliderKnob) + + this.interactable = this.sliderKnob.getComponent(Interactable.getTypeName()) + this.sliderKnobScreenTransform = this.sliderKnob.getComponent( + "Component.ScreenTransform", + ) + + this.transform = this.getTransform() + + this.sliderBounds = { + start: this.transform + .getInvertedWorldTransform() + .multiplyPoint(this.sliderMin.getTransform().getWorldPosition()), + end: this.transform + .getInvertedWorldTransform() + .multiplyPoint(this.sliderMax.getTransform().getWorldPosition()), + minAnchor: this.sliderMin.getComponent("Component.ScreenTransform") + .anchors, + maxAnchor: this.sliderMax.getComponent("Component.ScreenTransform") + .anchors, + } + + this._startPosition = this.sliderBounds.start + this._endPosition = this.sliderBounds.end + + this.minBound = this.sliderBounds.minAnchor.getCenter() + this.maxBound = this.sliderBounds.maxAnchor.getCenter() + + this.trackState = this.getTrackState() + this.sliderState = this.getInitialSliderState() + + this.onValueUpdateEvent = new Event((value) => { + if (value >= this._maxValue) { + this.onMaxValueReachedEvent.invoke(this._maxValue) + } else if (value <= this._minValue) { + this.onMinValueReachedEvent.invoke(this._minValue) + } + }) + + this.onHoverEnter = this.onHoverEnterEvent.publicApi() + this.onHoverExit = this.onHoverExitEvent.publicApi() + this.onSlideStart = this.onSlideStartEvent.publicApi() + this.onSlideEnd = this.onSlideEndEvent.publicApi() + this.onValueUpdate = this.onValueUpdateEvent.publicApi() + this.onMinValueReached = this.onMinValueReachedEvent.publicApi() + this.onMaxValueReached = this.onMaxValueReachedEvent.publicApi() + + if (this._minValue > this._maxValue || this._maxValue < this._minValue) { + throw new Error( + "Error: SliderComponent's maxValue must be less than its minValue.", + ) + } + if ( + this._stepSize < 0 || + this._stepSize > this._maxValue - this._minValue + ) { + throw new Error( + "Error: SliderComponent's stepSize must be greater than or equal to 0, and less than its value range.", + ) + } + this.updateUI() + + // Waiting for the OnStartEvent ensures that Interactable components are initialized before we add slider callbacks. + this.createEvent("OnStartEvent").bind(() => { + if (!this.interactable) { + throw new Error( + "Slider Knob must contain an Interactable component for the slider to work - please ensure that one is added to the SceneObject.", + ) + } + if (!this.sliderKnobScreenTransform) { + throw new Error( + "Slider Knob must be a Screen Transform for the slider to work - please ensure that one is added to the SceneObject.", + ) + } + this.setupInteractable() + }) + + this.createEvent("OnDestroyEvent").bind(() => { + this.unsubscribeCallbacks() + }) + + if (this.editEventCallbacks) { + if (this.customFunctionForOnHoverEnter) { + this.onHoverEnter.add( + createCallback( + this.customFunctionForOnHoverEnter, + this.onHoverEnterFunctionNames, + ), + ) + } + + if (this.customFunctionForOnHoverExit) { + this.onHoverExit.add( + createCallback( + this.customFunctionForOnHoverExit, + this.onHoverExitFunctionNames, + ), + ) + } + + if (this.customFunctionForOnSlideStart) { + this.onSlideStart.add( + createCallback( + this.customFunctionForOnSlideStart, + this.onSlideStartFunctionNames, + ), + ) + } + + if (this.customFunctionForOnSlideEnd) { + this.onSlideEnd.add( + createCallback( + this.customFunctionForOnSlideEnd, + this.onSlideEndFunctionNames, + ), + ) + } + + if (this.customFunctionForOnValueUpdate) { + this.onValueUpdate.add( + createCallback( + this.customFunctionForOnValueUpdate, + this.onValueUpdateFunctionNames, + ), + ) + } + + if (this.customFunctionForOnMinValueReached) { + this.onMinValueReached.add( + createCallback( + this.customFunctionForOnMinValueReached, + this.onMinValueReachedFunctionNames, + ), + ) + } + + if (this.customFunctionForOnMaxValueReached) { + this.onMaxValueReached.add( + createCallback( + this.customFunctionForOnMaxValueReached, + this.onMaxValueReachedFunctionNames, + ), + ) + } + } + } + + get minValue(): number { + return this._minValue + } + + set minValue(value: number) { + if (value >= this._maxValue) { + this.log.e( + `Could not set minimum value to ${value} as it cannot be greater than or equal to the maximum value: ${this._maxValue}`, + ) + return + } + validate(this.sliderState) + + this._minValue = value + let displayValue = this.sliderState.displayValue + if (value > this.sliderState.displayValue) { + this.log.w( + `Setting current value ${this.sliderState.displayValue} to the new minimum value ${value} provided as it is now out of range.`, + ) + displayValue = value + } + this.updateSliderStateFromDisplayValue(displayValue) + } + + get maxValue(): number { + return this._maxValue + } + + set maxValue(value: number) { + if (value <= this._minValue) { + this.log.e( + `Could not set maximum value to ${value} as it cannot be less than or equal to the minimum value: ${this._minValue}`, + ) + return + } + validate(this.sliderState) + + this._maxValue = value + let displayValue = this.sliderState.displayValue + if (value < this.sliderState.displayValue) { + this.log.w( + `Setting current value ${this.sliderState.displayValue} to the new maximum value ${value} provided as it is now out of range.`, + ) + displayValue = value + } + this.updateSliderStateFromDisplayValue(displayValue) + } + get currentValue(): number | null { + return this.sliderState?.displayValue ?? null + } + set currentValue(value: number) { + if (value < this._minValue) { + this.log.w( + `Slider value will be set to the minimum value: ${this._minValue} as the provided value ${value} was less than the minimum value allowed.`, + ) + value = this._minValue + } else if (value > this._maxValue) { + this.log.w( + `Slider value will be set to the maximum value: ${this._maxValue} as the provided value ${value} was greater than the maximum value allowed.`, + ) + value = this._maxValue + } + this.updateSliderStateFromDisplayValue(value) + } + + get stepSize(): number { + return this._stepSize + } + set stepSize(stepSize: number) { + if (stepSize > this._maxValue - this._minValue) { + this.log.e( + `Could not set step size to ${stepSize} as it must be less than the slider's value range.`, + ) + return + } else if (stepSize < 0) { + this.log.e( + `Could not set step size to ${stepSize} as it must be greater than or equal to 0.`, + ) + return + } + this._stepSize = stepSize + } + + get startPosition(): vec3 | null { + return this._startPosition + } + + set startPosition(position: vec3) { + this._startPosition = position + this.trackState = this.getTrackState() + this.updateSliderState(null) + } + + get endPosition(): vec3 | null { + return this._endPosition + } + set endPosition(position: vec3) { + this._endPosition = position + this.trackState = this.getTrackState() + this.updateSliderState(null) + } + + get sliderKnob(): SceneObject | undefined { + return this._sliderKnob + } + + private getInitialSliderState(): SliderState { + const rawValue = this.calculateRawValueFromDisplayValue(this.startValue) + const displayValue = this.getSteppedDisplayValue(this.startValue) + const snappedValue = this.calculateRawValueFromDisplayValue(displayValue) + + return { + dragVector: null, + rawValue: rawValue, + snappedValue: snappedValue, + displayValue: displayValue, + } + } + + private getTrackState(): TrackState { + const direction = this._endPosition.sub(this._startPosition).normalize() + + const min = -this._startPosition.length + const max = this._endPosition.length + + return { + trackMin: min, + trackMax: max, + trackSize: max - min, + trackDirection: direction, + } + } + + /** + * Sets up event callbacks for behavior on the Interactable's interaction events. + */ + private setupInteractable() { + if (this.interactable === null) { + throw new Error( + "Slider Knob must contain an Interactable component for the slider to work - please ensure that one is added to the SceneObject.", + ) + } + + // If this is not a slider with step size, enable instant dragging for more responsive behavior. + if (this.stepSize === 0) { + this.interactable.enableInstantDrag = true + } + + this.unsubscribeBag.push( + this.interactable.onHoverEnter.add(() => { + this.onHoverEnterEvent.invoke() + }), + ) + + this.unsubscribeBag.push( + this.interactable.onHoverExit.add(() => { + this.onHoverExitEvent.invoke() + }), + ) + + this.unsubscribeBag.push( + this.interactable.onDragStart.add((event: DragInteractorEvent) => { + validate(this.sliderState) + validate(event.planecastDragVector) + validate(event.interactor.planecastPoint) + + this.onSlideStartEvent.invoke(this.sliderState.displayValue) + this.isDragging = true + this.updateSliderState({ + dragVector: + event.interactor.dragType !== DragType.Touchpad + ? event.planecastDragVector + : event.dragVector, + dragPoint: event.interactor.planecastPoint, + }) + }), + ) + + this.unsubscribeBag.push( + this.interactable.onDragUpdate.add((event: DragInteractorEvent) => { + validate(event.planecastDragVector) + validate(event.interactor.planecastPoint) + + this.updateSliderState({ + dragVector: + event.interactor.dragType !== DragType.Touchpad + ? event.planecastDragVector + : event.dragVector, + dragPoint: event.interactor.planecastPoint, + }) + }), + ) + + this.unsubscribeBag.push( + this.interactable.onDragEnd.add(() => { + validate(this.sliderState) + this.onSlideEndEvent.invoke(this.sliderState.displayValue) + this.isDragging = false + this.updateSliderState(null) + }), + ) + + this.unsubscribeBag.push( + this.interactable.onTriggerEnd.add(() => { + this.toggleSliderState() + }), + ) + } + + private calculateRawValueFromDragVector(dragVector: vec3 | null) { + validate(this.sliderState) + + if (dragVector === null) { + return this.sliderState.rawValue + } + validate(this.trackState) + + dragVector = this.transform + .getInvertedWorldTransform() + .multiplyDirection(dragVector) + return MathUtils.clamp( + this.sliderState.rawValue + + this.trackState.trackDirection.dot(dragVector), + this.trackState.trackMin, + this.trackState.trackMax, + ) + } + + private calculateDisplayValueFromRawValue(rawValue: number): number { + validate(this.trackState) + + const displayValue = MathUtils.remap( + rawValue, + this.trackState.trackMin, + this.trackState.trackMax, + this._minValue, + this._maxValue, + ) + return this.getSteppedDisplayValue(displayValue) + } + + private calculateRawValueFromDisplayValue(displayValue: number): number { + validate(this.trackState) + + return MathUtils.remap( + displayValue, + this._minValue, + this._maxValue, + this.trackState.trackMin, + this.trackState.trackMax, + ) + } + + private getSteppedDisplayValue(displayValue: number): number { + return this._stepSize > 0 + ? this._minValue + + Math.round((displayValue - this._minValue) / this._stepSize) * + this._stepSize + : displayValue + } + + /** + * Updates SliderState representing the most updated version of the slider, using the drag vector if active. + * @param dragUpdate - the drag vector provided by the Interactor, or null if a drag is not active. + */ + private updateSliderState(dragUpdate: DragUpdate | null) { + validate(this.sliderState) + + if (dragUpdate === null) { + this.sliderState.dragVector = null + return + } + + const localizedDragPoint = this.transform + .getInvertedWorldTransform() + .multiplyPoint(dragUpdate.dragPoint) + + // Check that the drag point is between the start/end points. + const dragPointCheck = this.checkOutsideTrackBoundary(localizedDragPoint) + + if (dragPointCheck === -1) { + this.currentValue = this.minValue + return + } else if (dragPointCheck === 1) { + this.currentValue = this.maxValue + return + } + + const rawValue = this.calculateRawValueFromDragVector(dragUpdate.dragVector) + const displayValue = this.calculateDisplayValueFromRawValue(rawValue) + const snappedValue = this.calculateRawValueFromDisplayValue(displayValue) + + if (this.sliderState.displayValue !== displayValue) { + this.onValueUpdateEvent?.invoke(displayValue) + } + + this.sliderState = { + dragVector: dragUpdate.dragVector, + rawValue: rawValue, + snappedValue: snappedValue, + displayValue: displayValue, + } + this.updateUI() + } + + // Check if a local point is to the left of the start point (-1) or the right of the end point (1). + private checkOutsideTrackBoundary(localPoint: vec3): -1 | 0 | 1 { + validate(this.trackState) + + const isPastStartPoint = + localPoint + .sub(this.sliderBounds.start) + .angleTo(this.trackState.trackDirection) > + Math.PI / 2 + + const isPastEndPoint = + localPoint + .sub(this.sliderBounds.end) + .angleTo(this.trackState.trackDirection) < + Math.PI / 2 + + if (isPastStartPoint) { + return -1 + } + + if (isPastEndPoint) { + return 1 + } + + return 0 + } + + private toggleSliderState() { + if (this.isDragging) { + return + } + validate(this.currentValue) + + const initialValue = this.currentValue + + if (this.stepSize === this.maxValue - this.minValue) { + if (initialValue === this.minValue) { + this.currentValue = this.maxValue + } else if (initialValue === this.maxValue) { + this.currentValue = this.minValue + } + + this.animateToggleUI(initialValue < this.currentValue) + } + } + + private animateToggleUI(toggledOn: boolean): void { + animate({ + duration: this.toggleDuration, + easing: "ease-out-cubic", + update: (t) => { + validate(this.sliderKnobScreenTransform) + validate(this.minBound) + validate(this.maxBound) + + const lerpValue = toggledOn ? t : 1 - t + this.sliderKnobScreenTransform.anchors.setCenter( + vec2.lerp(this.minBound, this.maxBound, lerpValue), + ) + }, + }) + } + + /** + * Updates SliderState representing the most updated version of the slider, using a provided display value. + * @param displayValue - the desired display value. + */ + private updateSliderStateFromDisplayValue(displayValue: number) { + validate(this.sliderState) + const snappedValue = this.calculateRawValueFromDisplayValue(displayValue) + + if (displayValue !== this.sliderState.displayValue) { + this.onValueUpdateEvent?.invoke(displayValue) + } + + this.sliderState = { + dragVector: null, + rawValue: snappedValue, + snappedValue: snappedValue, + displayValue: displayValue, + } + this.updateUI() + } + + /** + * Updates the slider UI based on the snapped value, by moving the knob's position. + */ + private updateUI(): void { + validate(this.sliderKnobScreenTransform) + validate(this.sliderState) + validate(this.trackState) + + this.sliderKnobScreenTransform.anchors.setCenter( + vec2.lerp( + this.minBound, + this.maxBound, + (this.sliderState.snappedValue - this.trackState.trackMin) / + this.trackState.trackSize, + ), + ) + } + + /** + * Unsubscribes all the slider-specific callbacks to the Interactable component before this component is destroyed. + */ + unsubscribeCallbacks(): void { + this.unsubscribeBag.forEach((unsubscribeCallback: () => void) => { + unsubscribeCallback() + }) + this.unsubscribeBag = [] + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/Slider/Slider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/Slider/Slider.ts.meta new file mode 100644 index 00000000..f06857f5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/Slider/Slider.ts.meta @@ -0,0 +1,131 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 5268cc6c-59e0-4691-926c-7be3f68fc06c + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _maxValue: false + _minValue: false + _sliderKnob: false + _stepSize: false + customFunctionForOnHoverEnter: false + customFunctionForOnHoverExit: false + customFunctionForOnMaxValueReached: false + customFunctionForOnMinValueReached: false + customFunctionForOnSlideEnd: false + customFunctionForOnSlideStart: false + customFunctionForOnValueUpdate: false + editEventCallbacks: false + onHoverEnterFunctionNames: false + onHoverExitFunctionNames: false + onMaxValueReachedFunctionNames: false + onMinValueReachedFunctionNames: false + onSlideEndFunctionNames: false + onSlideStartFunctionNames: false + onValueUpdateFunctionNames: false + sliderMax: false + sliderMin: false + startValue: false + stepBehavior: false + toggleDuration: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - startValue: 0.500000 + stepBehavior: false + sliderMin: ! 00000000-0000-0000-0000-000000000000 + sliderMax: ! 00000000-0000-0000-0000-000000000000 + _minValue: ! 0.000000 + _maxValue: ! 1.000000 + _stepSize: ! 0.000000 + _sliderKnob: ! 00000000-0000-0000-0000-000000000000 + editEventCallbacks: false + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 00000000-0000-0000-0000-000000000000 + onValueUpdateFunctionNames: ! + [] + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + toggleDuration: 0.200000 + ScriptTypes: + - + {} + InputLines: + - '// @input float _minValue {"hint":"The minimum numeric value of the slider"}' + - '// @input float _maxValue = 1 {"hint":"The maximum numeric value of the slider"}' + - '// @input float startValue = 0.5 {"hint":"The initial numeric value of the slider"}' + - "// @input bool stepBehavior {\"hint\":\"Enable this to change the slider's value in steps rather than continuously\"}" + - "// @input float _stepSize {\"hint\":\"The size of the steps that the slider's value will be changed in.\", \"showIf\":\"stepBehavior\", \"showIfValue\":true}" + - '// @input float toggleDuration = 0.2 {"hint":"The duration of the toggle animation in seconds.", "showIf":"isToggleable", "showIfValue":true}' + - '// @ui {"widget":"separator"}' + - '// @input SceneObject sliderMin {"hint":"The position of the slider knob when the minimum value is reached."}' + - '// @input SceneObject sliderMax {"hint":"The position of the slider knob when the maximum value is reached."}' + - '// @input SceneObject _sliderKnob {"hint":"The SceneObject representing the knob of the slider which will be moved along the path between the positions provided by sliderMin and sliderMax when the value is updated. Please ensure the SceneObject has an Interactable component attached."}' + - '// @ui {"widget":"separator"}' + - "// @input bool editEventCallbacks {\"hint\":\"Enable this to add functions from another script to this component's callback events\"}" + - '// @ui {"widget":"group_start", "label":"On Hover Enter Callbacks", "showIf":"editEventCallbacks"}' + - '// @input Component.ScriptComponent customFunctionForOnHoverEnter {"hint":"The script containing functions to be called on hover enter"}' + - '// @input string[] onHoverEnterFunctionNames {"hint":"The names for the functions on the provided script, to be called on hover enter"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"On Hover Exit Callbacks", "showIf":"editEventCallbacks"}' + - '// @input Component.ScriptComponent customFunctionForOnHoverExit {"hint":"The script containing functions to be called on hover exit"}' + - '// @input string[] onHoverExitFunctionNames {"hint":"The names for the functions on the provided script, to be called on hover exit"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"On Slide Start Callbacks", "showIf":"editEventCallbacks"}' + - '// @input Component.ScriptComponent customFunctionForOnSlideStart {"hint":"The script containing functions to be called on slide start"}' + - '// @input string[] onSlideStartFunctionNames {"hint":"The names for the functions on the provided script, to be called on slide start"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"On Slide End Callbacks", "showIf":"editEventCallbacks"}' + - '// @input Component.ScriptComponent customFunctionForOnSlideEnd {"hint":"The script containing functions to be called on slide end"}' + - '// @input string[] onSlideEndFunctionNames {"hint":"The names for the functions on the provided script, to be called on slide end"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"On Value Update Callbacks", "showIf":"editEventCallbacks"}' + - '// @input Component.ScriptComponent customFunctionForOnValueUpdate {"hint":"The script containing functions to be called on value update"}' + - '// @input string[] onValueUpdateFunctionNames {"hint":"The names for the functions on the provided script, to be called on value update"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"On Min Value Reached Callbacks", "showIf":"editEventCallbacks"}' + - '// @input Component.ScriptComponent customFunctionForOnMinValueReached {"hint":"The script containing functions to be called on min value reached"}' + - '// @input string[] onMinValueReachedFunctionNames {"hint":"The names for the functions on the provided script, to be called when minimum value is reached"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"On Max Value Reached Callbacks", "showIf":"editEventCallbacks"}' + - '// @input Component.ScriptComponent customFunctionForOnMaxValueReached {"hint":"The script containing functions to be called on max value reached"}' + - '// @input string[] onMaxValueReachedFunctionNames {"hint":"The names for the functions on the provided script, to be called when maximum value is reached"}' + - '// @ui {"widget":"group_end"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ToggleButton/ToggleButton.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ToggleButton/ToggleButton.ts new file mode 100644 index 00000000..31075883 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ToggleButton/ToggleButton.ts @@ -0,0 +1,148 @@ +import {createCallback} from "../../../Utils/InspectorCallbacks" +import ReplayEvent from "../../../Utils/ReplayEvent" +import {Interactable} from "../../Interaction/Interactable/Interactable" + +/** + * This class provides basic toggle functionality for a prefab toggle button. It manages the toggle state and provides methods to handle toggle events and update the button's visual state. + */ +@component +export class ToggleButton extends BaseScriptComponent { + @input("SceneObject") + @hint("The icon to be shown when the button is toggled on") + @allowUndefined + _onIcon: SceneObject | undefined + @input("SceneObject") + @hint("The icon to be shown when the button is toggled off") + @allowUndefined + _offIcon: SceneObject | undefined + @input + @hint( + "The initial state of the button, set to true if toggled on upon lens launch." + ) + private _isToggledOn: boolean = false + @input + @hint( + "Enable this to add functions from another script to this component's callback events" + ) + editEventCallbacks: boolean = false + @ui.group_start("On State Changed Callbacks") + @showIf("editEventCallbacks") + @input("Component.ScriptComponent") + @hint("The script containing functions to be called on toggle state change") + @allowUndefined + private customFunctionForOnStateChanged: ScriptComponent | undefined + @input + @hint( + "The names for the functions on the provided script, to be called on toggle state change" + ) + @allowUndefined + private onStateChangedFunctionNames: string[] = [] + @ui.group_end + private interactable: Interactable | null = null + + private onStateChangedEvent = new ReplayEvent() + public readonly onStateChanged = this.onStateChangedEvent.publicApi() + + onAwake() { + this.interactable = this.getSceneObject().getComponent( + Interactable.getTypeName() + ) + + this.createEvent("OnStartEvent").bind(() => { + if (!this.interactable) { + throw new Error( + "Toggle Button requires an Interactable Component on the same Scene object in order to work - please ensure one is added." + ) + } + this.interactable.onTriggerEnd.add(() => { + if (this.enabled) { + this.toggleState() + } + }) + + this.onStateChangedEvent.invoke(this._isToggledOn) + }) + + if (this.editEventCallbacks && this.customFunctionForOnStateChanged) { + this.onStateChanged.add( + createCallback( + this.customFunctionForOnStateChanged, + this.onStateChangedFunctionNames + ) + ) + } + + this.refreshVisual() + } + + /** + * Toggles the state of the button + */ + toggle(): void { + this.toggleState() + } + + /** + * @returns the icon to be shown when the button is toggled on + */ + get onIcon(): SceneObject | null { + return this._onIcon ?? null + } + + /** + * @param iconObject - the icon to be shown when the button is toggled on + */ + set onIcon(iconObject: SceneObject) { + this._onIcon = iconObject + this.refreshVisual() + } + + /** + * @returns the icon to be shown when the button is toggled off + */ + get offIcon(): SceneObject | null { + return this._offIcon ?? null + } + + /** + * @param iconObject - the icon to be shown when the button is toggled off + */ + set offIcon(iconObject: SceneObject) { + this._offIcon = iconObject + this.refreshVisual() + } + + /** + * @returns the current toggle state of the button + */ + get isToggledOn(): boolean { + return this._isToggledOn + } + + /** + * @param toggleOn - the new state of the button, invoking the toggle event if different than current state. + */ + set isToggledOn(toggleOn: boolean) { + // Return if the requested state is the same as the current state (no change) + if (toggleOn === this._isToggledOn) { + return + } + this.toggleState() + } + + private refreshVisual() { + if (this._onIcon !== undefined) { + this._onIcon.enabled = this._isToggledOn + } + + if (this._offIcon !== undefined) { + this._offIcon.enabled = !this._isToggledOn + } + } + + private toggleState() { + this._isToggledOn = !this._isToggledOn + this.refreshVisual() + this.onStateChangedEvent.invoke(this._isToggledOn) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ToggleButton/ToggleButton.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ToggleButton/ToggleButton.ts.meta new file mode 100644 index 00000000..37c31d51 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Components/UI/ToggleButton/ToggleButton.ts.meta @@ -0,0 +1,57 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! b371b7ce-4907-4799-a923-db403f60d7ac + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _isToggledOn: false + _offIcon: false + _onIcon: false + customFunctionForOnStateChanged: false + editEventCallbacks: false + onStateChangedFunctionNames: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - _onIcon: ! 00000000-0000-0000-0000-000000000000 + _offIcon: ! 00000000-0000-0000-0000-000000000000 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + - + {} + InputLines: + - '// @input SceneObject _onIcon {"hint":"The icon to be shown when the button is toggled on"}' + - '// @input SceneObject _offIcon {"hint":"The icon to be shown when the button is toggled off"}' + - '// @input bool _isToggledOn {"hint":"The initial state of the button, set to true if toggled on upon lens launch."}' + - "// @input bool editEventCallbacks {\"hint\":\"Enable this to add functions from another script to this component's callback events\"}" + - '// @ui {"widget":"group_start", "label":"On State Changed Callbacks", "showIf":"editEventCallbacks"}' + - '// @input Component.ScriptComponent customFunctionForOnStateChanged {"hint":"The script containing functions to be called on toggle state change"}' + - '// @input string[] onStateChangedFunctionNames {"hint":"The names for the functions on the provided script, to be called on toggle state change"}' + - '// @ui {"widget":"group_end"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/ConfigurationValidator/ConfigurationValidator.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/ConfigurationValidator/ConfigurationValidator.ts new file mode 100644 index 00000000..55fadb63 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/ConfigurationValidator/ConfigurationValidator.ts @@ -0,0 +1,22 @@ +const TAG = "ConfigurationValidator" +const SIK_VERSION = "0.10.0" + +/** + * This class is responsible for validating the configuration settings for running the Spectacles Interaction Kit (SIK) in Lens Studio. + * + */ +@component +export class ConfigurationValidator extends BaseScriptComponent { + onAwake(): void { + if ( + !global.deviceInfoSystem.isSpectacles() && + global.deviceInfoSystem.isEditor() + ) { + throw new Error( + "To run Spectacles Interaction Kit in the Lens Studio Preview, set the Preview Panel's Device Type Override to Spectacles, or the Simulation Mode to Spectacles (2024)!" + ) + } + + print("SIK Version : " + SIK_VERSION) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/ConfigurationValidator/ConfigurationValidator.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/ConfigurationValidator/ConfigurationValidator.ts.meta new file mode 100644 index 00000000..6478dd68 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/ConfigurationValidator/ConfigurationValidator.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 287c2824-8220-4e9e-8ac8-18a7e8a5aad0 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 287c2824-8220-4e9e-8ac8-18a7e8a5aad0 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 1c046036-dc61-4261-b077-b286105ecec8 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/HandInteractor/HandInteractor.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/HandInteractor/HandInteractor.ts new file mode 100644 index 00000000..ff3f64ed --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/HandInteractor/HandInteractor.ts @@ -0,0 +1,587 @@ +import {InteractionPlane} from "../../Components/Interaction/InteractionPlane/InteractionPlane" +import {HandInputData} from "../../Providers/HandInputData/HandInputData" +import {HandType} from "../../Providers/HandInputData/HandType" +import TrackedHand from "../../Providers/HandInputData/TrackedHand" +import TargetProvider, { + InteractableHitInfo, +} from "../../Providers/TargetProvider/TargetProvider" +import Event, {PublicApi} from "../../Utils/Event" +import {validate} from "../../Utils/validate" +import BaseInteractor from "../Interactor/BaseInteractor" +import {DirectTargetProvider} from "../Interactor/DirectTargetProvider" +import {DragProvider} from "../Interactor/DragProvider" +import {HandRayProvider} from "../Interactor/HandRayProvider" +import IndirectTargetProvider from "../Interactor/IndirectTargetProvider" +import { + InteractorInputType, + InteractorTriggerType, + TargetingMode, +} from "../Interactor/Interactor" +import {PokeTargetProvider} from "../Interactor/PokeTargetProvider" + +/** + * Enum representing the types of raycasts available for hand interactions. + */ +export type RaycastType = + | "AnchorShoulder" + | "AnchorVariableShoulder" + | "LegacySingleCamera" + | "AnchorHead" + | "Proxy" + +export enum FieldTargetingMode { + FarField, + NearField, + BehindNearField, +} + +const TAG = "HandInteractor" +const HANDUI_INTERACTION_DISTANCE_THRESHOLD_CM = 15 + +// The threshold to reject a near field interaction (the default hand ray must be within a 45 degree angle to the plane's normal). +const NEAR_FIELD_ANGLE_THRESHOLD_RADIAN = Math.PI / 4 + +/** + * This class handles hand interactions within the Spectacles Interaction Kit. It provides various configurations for hand types and raycast types. + * + */ +@component +export class HandInteractor extends BaseInteractor { + @ui.group_start("Hand Interactor") + @input + @widget( + new ComboBoxWidget([ + new ComboBoxItem("Left", "left"), + new ComboBoxItem("Right", "right"), + ]) + ) + private handType: string = "right" + @input + @widget( + new ComboBoxWidget([ + new ComboBoxItem("AnchorVariableShoulder", "AnchorVariableShoulder"), + new ComboBoxItem("LegacySingleCamera", "LegacySingleCamera"), + new ComboBoxItem("AnchorHead", "AnchorHead"), + new ComboBoxItem("Proxy", "Proxy"), + ]) + ) + @hint("Forwards the TargetingData received from LensCore's Gesture Module") + private raycastAlgorithm: string = "Proxy" + @input + @hint( + "Forces the usage of Poke targeting when interacting near the nondominant hand's palm." + ) + private forcePokeOnNonDominantPalmProximity: boolean = false + + @input + @hint( + "The radius around the midpoint of the index/thumb to target Interactables." + ) + private directColliderEnterRadius: number = 1 + + @input + @hint( + "The radius around the midpoint of the index/thumb to de-target Interactables (for bistable thresholding)." + ) + private directColliderExitRadius: number = 1.5 + + @input + private directDragThreshold: number = 3.0 + + @input + @hint( + "If true far field interactions will be disable when your hand is not in an interacting pose." + ) + private filterBasedOnIntent: boolean = false + @ui.group_end + protected handProvider: HandInputData = HandInputData.getInstance() + + private onFieldTargetingModeChangedEvent: Event = + new Event() + readonly onFieldTargetingModeChanged: PublicApi = + this.onFieldTargetingModeChangedEvent.publicApi() + + private hand: TrackedHand | undefined + + private handRayProvider: HandRayProvider | undefined + + private indirectTargetProvider: IndirectTargetProvider | undefined + private indirectDragProvider: DragProvider | undefined + + private directTargetProvider: DirectTargetProvider | undefined + private directDragProvider: DragProvider | undefined + + private pokeTargetProvider: PokeTargetProvider | undefined + private activeTargetProvider: TargetProvider | undefined + + private _fieldTargetingMode: FieldTargetingMode = FieldTargetingMode.FarField + private _currentInteractionPlane: InteractionPlane | null = null + + onAwake(): void { + this.inputType = + this.handType === "left" + ? InteractorInputType.LeftHand + : InteractorInputType.RightHand + + this.hand = this.handProvider.getHand(this.handType as HandType) + + this.handRayProvider = new HandRayProvider({ + handType: this.handType as HandType, + raycastAlgorithm: this.raycastAlgorithm as RaycastType, + handInteractor: this, + }) + + this.indirectTargetProvider = new IndirectTargetProvider( + this as BaseInteractor, + { + maxRayDistance: this.maxRaycastDistance, + rayProvider: this.handRayProvider, + targetingVolumeMultiplier: this.indirectTargetingVolumeMultiplier, + shouldPreventTargetUpdate: () => { + return this.preventTargetUpdate() + }, + spherecastRadii: this.spherecastRadii, + spherecastDistanceThresholds: this.spherecastDistanceThresholds, + } + ) + this.indirectDragProvider = new DragProvider(this.indirectDragThreshold) + + if (this.directColliderEnterRadius >= this.directColliderExitRadius) { + throw Error( + `The direct collider enter radius should be less than the exit radius for bistable threshold behavior.` + ) + } + + this.directTargetProvider = new DirectTargetProvider( + this as BaseInteractor, + { + handType: this.handType as HandType, + shouldPreventTargetUpdate: () => { + return this.preventTargetUpdate() + }, + debugEnabled: this.drawDebug, + colliderEnterRadius: this.directColliderEnterRadius, + colliderExitRadius: this.directColliderExitRadius, + } + ) + this.directDragProvider = new DragProvider(this.directDragThreshold) + + this.pokeTargetProvider = new PokeTargetProvider({ + handType: this.handType as HandType, + drawDebug: this.drawDebug, + }) + + this.activeTargetProvider = this.indirectTargetProvider + this.dragProvider = this.indirectDragProvider + + this.defineSceneEvents() + } + + get startPoint(): vec3 | null { + return this.activeTargetProvider?.startPoint ?? null + } + + get endPoint(): vec3 | null { + return this.activeTargetProvider?.endPoint ?? null + } + + get direction(): vec3 | null { + const proposedDirection = + this.activeTargetingMode === TargetingMode.Poke + ? this.pokeTargetProvider?.direction + : this.indirectTargetProvider?.direction + + return proposedDirection ?? null + } + + get orientation(): quat | null { + return this.hand?.getPinchDirection() ?? null + } + + get distanceToTarget(): number | null { + return ( + this.activeTargetProvider?.currentInteractableHitInfo?.hit.distance ?? + null + ) + } + + get targetHitPosition(): vec3 | null { + return ( + this.activeTargetProvider?.currentInteractableHitInfo?.hit.position ?? + null + ) + } + + get targetHitInfo(): InteractableHitInfo | null { + return this.activeTargetProvider?.currentInteractableHitInfo ?? null + } + + get activeTargetingMode(): TargetingMode { + return this.activeTargetProvider?.targetingMode ?? TargetingMode.None + } + + get maxRaycastDistance(): number { + return this._maxRaycastDistance + } + + get interactionStrength(): number | null { + const proposedStrength = + this.activeTargetingMode === TargetingMode.Poke + ? this.pokeTargetProvider?.getInteractionStrength() + : this.hand?.getPinchStrength() + + return proposedStrength ?? null + } + + /** + * Set if the Interactor is should draw a debug gizmo of collider/raycasts in the scene. + */ + set drawDebug(debug: boolean) { + validate(this.indirectTargetProvider) + validate(this.directTargetProvider) + validate(this.pokeTargetProvider) + this._drawDebug = debug + + this.indirectTargetProvider.drawDebug = debug + this.directTargetProvider.drawDebug = debug + this.pokeTargetProvider.drawDebug = debug + } + + /** + * @returns if the Interactor is currently drawing a debug gizmo of collider/raycasts in the scene. + */ + get drawDebug(): boolean { + return this._drawDebug + } + + override updateState(): void { + super.updateState() + this.updateTarget() + this.updateDragVector() + } + + protected override clearDragProviders(): void { + this.directDragProvider?.clear() + this.indirectDragProvider?.clear() + this.planecastDragProvider.clear() + } + + override get planecastDragVector(): vec3 | null { + // If the hand has been recently found, return vec3.zero() to allow time to determine if pinch is sustained. + if (this.hand === undefined) return vec3.zero() + return this.hand.isRecentlyFound() + ? vec3.zero() + : this.planecastDragProvider.currentDragVector + } + + protected override set currentDragVector(dragVector: vec3 | null) { + this._currentDragVector = dragVector + } + + override get currentDragVector(): vec3 | null { + // If the hand has been recently found, return vec3.zero() to allow time to determine if pinch is sustained. + if (this.hand === undefined) return vec3.zero() + return this.hand.isRecentlyFound() ? vec3.zero() : this._currentDragVector + } + + override get planecastPoint(): vec3 | null { + if (this.activeTargetProvider === this.indirectTargetProvider) { + return this.raycastPlaneIntersection(this.currentInteractable) + } else { + return this.colliderPlaneIntersection(this.currentInteractable) + } + } + + /** + * Clears an InteractionPlane from the cache of planes if it is nearby. + * @param plane + */ + clearInteractionPlane(plane: InteractionPlane) { + this.directTargetProvider.clearInteractionPlane(plane) + + const fieldTargetingMode = this.updateNearestPlane() + + if (this.fieldTargetingMode !== fieldTargetingMode) { + this._fieldTargetingMode = fieldTargetingMode + this.onFieldTargetingModeChangedEvent.invoke(fieldTargetingMode) + } + } + + get fieldTargetingMode(): FieldTargetingMode { + return this._fieldTargetingMode + } + + get currentInteractionPlane(): InteractionPlane | null { + return this._currentInteractionPlane + } + + /** + * @returns a normalized value between 0 and 1 representing proximity to an InteractionPlane when in near field mode, + * null if in FarField mode. + */ + get nearFieldProximity(): number | null { + if (this.fieldTargetingMode === FieldTargetingMode.FarField) { + return null + } + + if (this.fieldTargetingMode === FieldTargetingMode.NearField) { + return ( + 1 - + this.currentInteractionPlane.projectPoint(this.hand.indexTip.position) + .distance / + this.currentInteractionPlane.proximityDistance + ) + } else { + return ( + 1 + + this.currentInteractionPlane.projectPoint(this.hand.indexTip.position) + .distance / + this.currentInteractionPlane.behindDistance + ) + } + } + + isTargeting(): boolean { + return ( + (this.hand?.isInTargetingPose() && + (!this.filterBasedOnIntent || + this.hand?.targetingData.intendsToTarget)) ?? + false + ) + } + + /** + * Returns true if the hand interactor and the hand it is associated with are both enabled. + */ + isActive(): boolean { + return ( + this.enabled && + (this.hand?.enabled ?? false) && + (!this.filterBasedOnIntent || + this.activeTargetProvider !== this.indirectTargetProvider || + this.isTargeting()) + ) + } + + /** + * Returns true if the hand this interactor is associated with is both enabled and tracked. + */ + isTracking(): boolean { + validate(this.hand) + + return this.hand.enabled && this.hand.isTracked() + } + + /** + * Returns true if the hand is targeting via far field raycasting. + */ + isFarField(): boolean { + return this.fieldTargetingMode === FieldTargetingMode.FarField + } + + protected clearCurrentHitInfo(): void { + this.indirectTargetProvider?.clearCurrentInteractableHitInfo() + this.directTargetProvider?.clearCurrentInteractableHitInfo() + this.pokeTargetProvider?.clearCurrentInteractableHitInfo() + } + + /** @inheritdoc */ + override setInputEnabled(enabled: boolean): void { + super.setInputEnabled(enabled) + this.handProvider.getHand(this.handType as HandType).setEnabled(enabled) + } + + private defineSceneEvents() { + this.createEvent("OnDestroyEvent").bind(() => { + this.onDestroy() + }) + } + + private updateTarget(): void { + if (!this.isActive()) { + this.indirectTargetProvider?.reset() + return + } + + // If the user is mid-interaction, do not hijack raycast logic to avoid jerky interactions. + if (!this.preventTargetUpdate()) { + const fieldTargetingMode = this.updateNearestPlane() + + if (this.fieldTargetingMode !== fieldTargetingMode) { + this._fieldTargetingMode = fieldTargetingMode + this.onFieldTargetingModeChangedEvent.invoke(fieldTargetingMode) + } + } + + this.pokeTargetProvider?.update() + + // Workaround to get onTriggerExit event on poke end, since poke doesn't use hover + // Otherwise, the interaction manager will by default do an onTriggerCanceled event. + if ( + !this.isPoking() && + this.previousTrigger === InteractorTriggerType.Poke + ) { + this.currentTrigger = InteractorTriggerType.None + this.currentInteractable = this.previousInteractable + return + } + + if (this.isPoking()) { + this.activeTargetProvider = this.pokeTargetProvider + this.dragProvider = this.directDragProvider + } else { + this.directTargetProvider?.update() + this.indirectTargetProvider?.update() + + if ((this.previousTrigger & InteractorTriggerType.Select) === 0) { + if (this.pokeTargetProvider?.hasTarget()) { + this.activeTargetProvider = this.pokeTargetProvider + this.dragProvider = this.directDragProvider + } else if (this.directTargetProvider?.hasTarget()) { + this.activeTargetProvider = this.directTargetProvider + this.dragProvider = this.directDragProvider + } else { + this.activeTargetProvider = this.indirectTargetProvider + // During a near field raycast, use direct drag threshold. + this.dragProvider = + this.fieldTargetingMode === FieldTargetingMode.FarField + ? this.indirectDragProvider + : this.directDragProvider + } + } + } + + if (this.isPoking()) { + this.currentTrigger = InteractorTriggerType.Poke + } else if ( + this.hand && + this.hand.isPinching() && + (this.previousTrigger & InteractorTriggerType.Poke) === 0 + ) { + this.currentTrigger = InteractorTriggerType.Pinch + } else { + this.currentTrigger = InteractorTriggerType.None + } + + this.currentInteractable = + this.activeTargetProvider?.currentInteractableHitInfo?.interactable ?? + null + } + + private isPoking(): boolean { + return ( + this.activeTargetProvider === this.pokeTargetProvider && + (this.pokeTargetProvider?.isTriggering() ?? false) + ) + } + + /** + * @returns if we should prevent any updates to the currently targeted item. + * In the case of pinching (indirect or direct) or poking, we prevent updates to the targeting system. + * Otherwise, allow updates to the targeted item. + */ + private preventTargetUpdate(): boolean { + return ( + this.hand !== undefined && (this.hand.isPinching() || this.isPoking()) + ) + } + + private isPokingNonDominantHand(): boolean { + return ( + this.forcePokeOnNonDominantPalmProximity && this.isNearNonDominantHand() + ) + } + + private isNearNonDominantHand(): boolean { + const nonDominantHand = this.handProvider.getNonDominantHand() + const dominantHand = this.handProvider.getDominantHand() + + /** If either the dominant or non-dominant hand is not tracked, + * or if both hands are in an active targeting pose, + * then the user is not intending to interact with the nondominant hand UI. + */ + if ( + !nonDominantHand.isTracked() || + !dominantHand.isTracked() || + (dominantHand.isInTargetingPose() && nonDominantHand.isInTargetingPose()) + ) { + return false + } + + // Detect if dominant index is within interaction proximity to non-dominant palm + const palmCenter = nonDominantHand.getPalmCenter() + const dominantIndexTip = dominantHand.indexTip?.position + + return ( + palmCenter !== null && + dominantIndexTip !== undefined && + palmCenter.distanceSquared(dominantIndexTip) < + HANDUI_INTERACTION_DISTANCE_THRESHOLD_CM * + HANDUI_INTERACTION_DISTANCE_THRESHOLD_CM + ) + } + + // Check for cached planes (via direct collider overlap), choosing the nearest plane if multiple are available. + private updateNearestPlane(): FieldTargetingMode { + const interactionPlanes = this.directTargetProvider.currentInteractionPlanes + + let nearestPlane: InteractionPlane | null = null + let distance = Number.POSITIVE_INFINITY + + const planeRaycastLocus = this.directTargetProvider.colliderPosition + if (planeRaycastLocus === null) { + this._currentInteractionPlane = null + return FieldTargetingMode.FarField + } + + for (const interactionPlane of interactionPlanes) { + const planeProjection = interactionPlane.projectPoint(planeRaycastLocus) + + // Check if the locus is within the interaction zone or behind zone, then check if the locus is closer to this plane than prior planes. + const isNearPlane = + planeProjection !== null && + (planeProjection.isWithinInteractionZone || + planeProjection.isWithinBehindZone) && + Math.abs(planeProjection.distance) < distance + + const normal = interactionPlane.normal + const handDirection = this.handRayProvider.raycast.getRay() + + // Check if the hand direction faces the plane enough to target the plane. + const isTowardPlane = + handDirection !== null && + handDirection.direction.angleTo(normal.uniformScale(-1)) < + NEAR_FIELD_ANGLE_THRESHOLD_RADIAN + + // If both checks are true, cache the plane. + if (isNearPlane && isTowardPlane) { + nearestPlane = interactionPlane + distance = planeProjection.distance + } + } + + this._currentInteractionPlane = nearestPlane + + // Return to far field targeting if no nearby planes were found. + if (this._currentInteractionPlane === null) { + return FieldTargetingMode.FarField + } + + // Check if the index tip is past the plane for purpose of visuals. + const indexPoint = this.hand.indexTip.position + const indexProjection = + this._currentInteractionPlane.projectPoint(indexPoint) + const isIndexInBehindZone = indexProjection.isWithinBehindZone + + return isIndexInBehindZone + ? FieldTargetingMode.BehindNearField + : FieldTargetingMode.NearField + } + + private onDestroy() { + this.release() + this.directTargetProvider?.destroy() + this.indirectTargetProvider?.destroy() + this.pokeTargetProvider?.destroy() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/HandInteractor/HandInteractor.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/HandInteractor/HandInteractor.ts.meta new file mode 100644 index 00000000..418db837 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/HandInteractor/HandInteractor.ts.meta @@ -0,0 +1,94 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! b5f70408-5d57-4afd-996b-8f26ae0ddcb2 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! b5f70408-5d57-4afd-996b-8f26ae0ddcb2 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 714912bc-574d-427d-aaa4-b3fa65e126e8 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _drawDebug: false + _maxRaycastDistance: false + directColliderEnterRadius: false + directColliderExitRadius: false + directDragThreshold: false + filterBasedOnIntent: false + forcePokeOnNonDominantPalmProximity: false + handType: false + indirectDragThreshold: false + indirectTargetingVolumeMultiplier: false + raycastAlgorithm: false + sphereCastEnabled: false + spherecastDistanceThresholds: false + spherecastRadii: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - handType: right + raycastAlgorithm: Proxy + sphereCastEnabled: false + indirectTargetingVolumeMultiplier: ! 1.000000 + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectDragThreshold: ! 40.000000 + directDragThreshold: ! 3.000000 + forcePokeOnNonDominantPalmProximity: false + directColliderEnterRadius: ! 1.000000 + directColliderExitRadius: 1.500000 + _drawDebug: false + filterBasedOnIntent: false + ScriptTypes: + - + {} + InputLines: + - '// @ui {"widget":"group_start", "label":"Interactor"}' + - // @input bool _drawDebug + - '// @ui {"widget":"group_start", "label":"Spherecast Configuration"}' + - // @input bool sphereCastEnabled + - '// @input number[] spherecastRadii = "{0.5, 2.0, 4.0}" {"showIf":"sphereCastEnabled", "showIfValue":true}' + - '// @input number[] spherecastDistanceThresholds = "{0, 12, 30}" {"showIf":"sphereCastEnabled", "showIfValue":true}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Targeting Configuration"}' + - // @input float _maxRaycastDistance = 500 + - // @input float indirectTargetingVolumeMultiplier = 1 + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Indirect Drag Provider"}' + - // @input float indirectDragThreshold = 3 + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Hand Interactor"}' + - '// @input string handType = "right" {"widget":"combobox", "values":[{"label":"Left", "value":"left"}, {"label":"Right", "value":"right"}]}' + - "// @input string raycastAlgorithm = \"Proxy\" {\"hint\":\"Forwards the TargetingData received from LensCore's Gesture Module\", \"widget\":\"combobox\", \"values\":[{\"label\":\"AnchorVariableShoulder\", \"value\":\"AnchorVariableShoulder\"}, {\"label\":\"LegacySingleCamera\", \"value\":\"LegacySingleCamera\"}, {\"label\":\"AnchorHead\", \"value\":\"AnchorHead\"}, {\"label\":\"Proxy\", \"value\":\"Proxy\"}]}" + - "// @input bool forcePokeOnNonDominantPalmProximity {\"hint\":\"Forces the usage of Poke targeting when interacting near the nondominant hand's palm.\"}" + - '// @input float directColliderEnterRadius = 1 {"hint":"The radius around the midpoint of the index/thumb to target Interactables."}' + - '// @input float directColliderExitRadius = 1.5 {"hint":"The radius around the midpoint of the index/thumb to de-target Interactables (for bistable thresholding)."}' + - // @input float directDragThreshold = 3 + - '// @input bool filterBasedOnIntent {"hint":"If true far field interactions will be disable when your hand is not in an interacting pose."}' + - '// @ui {"widget":"group_end"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/EventDispatcher.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/EventDispatcher.ts new file mode 100644 index 00000000..19276e35 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/EventDispatcher.ts @@ -0,0 +1,175 @@ +import {Interactable} from "../../Components/Interaction/Interactable/Interactable" +import {InteractorInputType} from "../Interactor/Interactor" +import { + DispatchableEventArgs, + InteractableEventName, + InteractorEvent, +} from "../Interactor/InteractorEvent" + +export type SceneObjectMap = Map + +export type StoppableEventArgs = DispatchableEventArgs & { + propagationStopped: boolean +} + +/** + * Dispatches an event in 3 phases: + * - Trickle-down: the event descends the hierarchy, from the first + * interactable ancestor of the target to its parent + * - Target: the event is sent to the target + * - Bubble-up: the event ascends the hierarchy, from the target's parent + * to its first interactable ancestor + */ +export class EventDispatcher { + constructor(private sceneObjectMap: SceneObjectMap) {} + + /** + * Triggers the event propagation + * @param eventArgs - provides the interactor, the target and the callback name + */ + dispatch(eventArgs: DispatchableEventArgs): void { + if ( + eventArgs.target.allowMultipleInteractors === false && + (eventArgs.target.hoveringInteractor & eventArgs.interactor.inputType) === + 0 + ) { + // Don't dispatch the event if multiple interactors aren't allowed & there's already an active interactor + if (eventArgs.target.hoveringInteractor !== InteractorInputType.None) { + return + } + + // Cover the edge case where an interactable that doesn't allow multiple interactors has multiple possible interactors + // The active interactor exits so we can dispatch events on the interactor that previously had its events blocked + // However, we need to send enter events to update the hovering/triggering interactor input type. + if ( + eventArgs.target.hoveringInteractor === InteractorInputType.None && + eventArgs.eventName === "HoverUpdate" + ) { + eventArgs.eventName = "HoverEnter" + } else if ( + eventArgs.target.triggeringInteractor === InteractorInputType.None && + eventArgs.eventName === "TriggerUpdate" + ) { + eventArgs.eventName = "TriggerStart" + } + } + + const ancestors: Interactable[] = [] + this.getInteractableAncestors( + eventArgs.target.sceneObject.getParent(), + ancestors, + eventArgs.origin?.sceneObject + ) + + const stoppableEventArgs = { + ...eventArgs, + propagationStopped: false, + } + + this.trickleDown(ancestors, stoppableEventArgs) + this.target(stoppableEventArgs) + this.bubbleUp(ancestors, stoppableEventArgs) + } + + private getInteractableAncestors( + node: SceneObject | null, + ancestors: Interactable[], + excludedNode: SceneObject | undefined = undefined + ) { + if (node === null || node === excludedNode) { + return + } + + const interactable = this.sceneObjectMap.get(node) + if (interactable !== undefined) { + ancestors.push(interactable) + } + + this.getInteractableAncestors(node.getParent(), ancestors, excludedNode) + } + + private trickleDown( + ancestors: Interactable[], + eventArgs: StoppableEventArgs + ) { + for (let i = ancestors.length - 1; i >= 0; i--) { + if (eventArgs.propagationStopped) { + break + } + + const event: InteractorEvent = { + ...eventArgs, + interactable: ancestors[i], + propagationPhase: "TrickleDown", + stopPropagation: () => this.stopPropagation(eventArgs), + } + this.invokeEvent(event, eventArgs.eventName) + } + } + + private target(eventArgs: StoppableEventArgs) { + if (eventArgs.propagationStopped) { + return + } + + const event: InteractorEvent = { + ...eventArgs, + interactable: eventArgs.target, + propagationPhase: "Target", + stopPropagation: () => this.stopPropagation(eventArgs), + } + this.invokeEvent(event, eventArgs.eventName) + } + + private bubbleUp(ancestors: Interactable[], eventArgs: StoppableEventArgs) { + for (let i = 0; i < ancestors.length; i++) { + if (eventArgs.propagationStopped) { + break + } + + const event: InteractorEvent = { + ...eventArgs, + interactable: ancestors[i], + propagationPhase: "BubbleUp", + stopPropagation: () => this.stopPropagation(eventArgs), + } + this.invokeEvent(event, eventArgs.eventName) + } + } + + private stopPropagation(eventArgs: StoppableEventArgs) { + eventArgs.propagationStopped = true + } + + private invokeEvent( + event: InteractorEvent, + eventName: InteractableEventName + ) { + const interactable = event.interactable + switch (eventName) { + case "HoverEnter": + interactable.hoverEnter(event) + break + case "HoverUpdate": + interactable.hoverUpdate(event) + break + case "HoverExit": + interactable.hoverExit(event) + break + case "TriggerStart": + interactable.triggerStart(event) + break + case "TriggerUpdate": + interactable.triggerUpdate(event) + break + case "TriggerEnd": + interactable.triggerEnd(event) + break + case "TriggerCanceled": + interactable.triggerCanceled(event) + break + default: + throw new Error(`Callback ${eventName} is not supported`) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/EventDispatcher.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/EventDispatcher.ts.meta new file mode 100644 index 00000000..f2bd98e7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/EventDispatcher.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 8b80abb6-a127-4ba0-ae0c-bd489c9c0934 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 8b80abb6-a127-4ba0-ae0c-bd489c9c0934 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! b7910ab1-5a20-4fb0-8cd3-5abee397d4b8 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/InteractionManager.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/InteractionManager.ts new file mode 100644 index 00000000..6c7b7314 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/InteractionManager.ts @@ -0,0 +1,650 @@ +import NativeLogger from "../../Utils/NativeLogger" +import { + Interactor, + InteractorInputType, + InteractorTriggerType, + TargetingMode, +} from "../Interactor/Interactor" + +import {Interactable} from "../../Components/Interaction/Interactable/Interactable" +import {InteractionPlane} from "../../Components/Interaction/InteractionPlane/InteractionPlane" +import {Singleton} from "../../Decorators/Singleton" +import {LensConfig} from "../../Utils/LensConfig" +import {getSafeReference} from "../../Utils/SafeReference" +import {HandInteractor} from "../HandInteractor/HandInteractor" +import BaseInteractor from "../Interactor/BaseInteractor" +import {DispatchableEventArgs} from "../Interactor/InteractorEvent" +import {EventDispatcher} from "./EventDispatcher" + +const TAG = "InteractionManager" + +/** + * Manages interactions between {@link Interactor} and {@link Interactable}, and + * decides if events need to be transmitted to {@link Interactable} + */ +@Singleton +export class InteractionManager { + public static getInstance: () => InteractionManager + + // Native Logging + private log = new NativeLogger(TAG) + + private interactors = new Set() + private interactables = new Set() + private interactionPlanes = new Set() + + private interactableSceneObjects = new Map() + private colliderToInteractableMap = new Map() + private eventDispatcher = new EventDispatcher(this.interactableSceneObjects) + + private _debugModeEnabled = false + + /* + shouldEnableNonMobileInteractors is nullable because we use this as a cached class-level condition to + compare against the function-level condition in disableOtherInteractorsIfMobileInputTypeIsDetected(). + Initializing to null here ensures the first frame always initializes the interactor's activeness properly. + */ + private shouldEnableNonMobileInteractors: boolean | null = null + + constructor() { + this.defineScriptEvents() + } + + /** + * Adds an {@link Interactor} to the interaction manager's registry, + * so it can be used to determine which {interactors} are interacting + * with interactables. + * @param interactor The {@link Interactor} to register. + */ + registerInteractor(interactor: BaseInteractor): void { + if (interactor === null || interactor === undefined) { + this.log.e("Cannot register null or uninitialized interactor.") + return + } + + if (this.debugModeEnabled) { + interactor.drawDebug = this.debugModeEnabled + } + + this.interactors.add(interactor) + this.log.d(`Registered interactor "${interactor.sceneObject.name}"`) + } + + /** + * Removes an {@link Interactor} from the interaction manager's registry, + * so that it will no longer be considered when determining which + * interactors are interacting with interactables. + * @param interactor The {@link Interactor} to deregister. + */ + deregisterInteractor(interactor: BaseInteractor): void { + if (interactor === null || interactor === undefined) { + this.log.e("Cannot deregister null or uninitialized interactor.") + return + } + if (this.interactors.delete(interactor)) { + this.log.d(`Deregistered interactor "${interactor.sceneObject.name}"`) + } + } + + /** + * Returns all interactors of matching interactor type + * @param inputType The {@link InteractorInputType} to filter interactors by. + * @returns An array of interactors that match the input type. + */ + getInteractorsByType(inputType: InteractorInputType): Interactor[] { + let returnValue: Interactor[] = [] + this.interactors.forEach((interactor: Interactor) => { + if ((interactor.inputType & inputType) !== 0) { + returnValue.push(interactor) + } + }) + + return returnValue + } + + /** + * Returns all interactors that are currently targeting + * @returns An array of interactors that are targeting. + */ + getTargetingInteractors(): Interactor[] { + let returnValue: Interactor[] = [] + this.interactors.forEach((interactor: Interactor) => { + if (interactor.isTargeting()) { + returnValue.push(interactor) + } + }) + + return returnValue + } + + /** + * Adds an {@link InteractionPlane} to the interaction manager's registry, + * so it can be used to determine which {interactors} are interacting + * with interaction planes. + * @param interactionPlane The {@link InteractionPlane} to register. + */ + registerInteractionPlane(interactionPlane: InteractionPlane): void { + if (interactionPlane === null || interactionPlane === undefined) { + this.log.e("Cannot register null or uninitialized interaction plane.") + return + } + this.interactionPlanes.add(interactionPlane) + + if (this.debugModeEnabled) { + interactionPlane.drawDebug = true + } + + this.log.d( + `Registered interaction plane "${interactionPlane.sceneObject.name}"` + ) + } + + /** + * Removes an {@link InteractionPlane} from the interaction manager's registry. + * @param interactionPlane The {@link InteractionPlane} to deregister. + */ + deregisterInteractionPlane(interactionPlane: InteractionPlane): void { + if (interactionPlane === null || interactionPlane === undefined) { + this.log.e("Cannot deregister null or uninitialized interaction plane.") + return + } + + /* + * When an Interactable is deregistered, check our list of Interactors and clear their current InteractionPlane + * if it is the same as the InteractionPlane that was just deregistered + */ + const handInteractors = this.getInteractorsByType( + InteractorInputType.BothHands + ) as HandInteractor[] + for (const handInteractor of handInteractors) { + handInteractor.clearInteractionPlane(interactionPlane) + } + + if (this.interactionPlanes.delete(interactionPlane)) { + this.log.d( + `Deregistered interaciton plane "${interactionPlane.sceneObject.name}"` + ) + } + } + + getInteractionPlanes(): InteractionPlane[] { + const interactionPlanes = [] + for (const plane of this.interactionPlanes) { + interactionPlanes.push(plane) + } + return interactionPlanes + } + + /** + * Adds an {@link Interactable} to the interaction manager's registry. + * This registry helps speed up calculations when raycasting + * objects in the scene. + * @param interactable The {@link Interactable} to register. + */ + registerInteractable(interactable: Interactable): void { + if (interactable === null || interactable === undefined) { + this.log.e("Cannot register null or uninitialized interactable.") + return + } + this.interactables.add(interactable) + this.interactableSceneObjects.set(interactable.sceneObject, interactable) + const colliders = this.findOrCreateColliderForInteractable(interactable) + for (let i = 0; i < colliders.length; i++) { + this.colliderToInteractableMap.set(colliders[i], interactable) + } + + if (this.debugModeEnabled) { + for (const collider of colliders) { + collider.debugDrawEnabled = this.debugModeEnabled + } + } + + this.log.d( + `Registered interactable "${interactable.sceneObject.name}" with ${colliders.length} colliders` + ) + } + + /** + * Removes an {@link Interactable} from the interaction manager's registry. + * @param interactable The {@link Interactable} to deregister. + */ + deregisterInteractable(interactable: Interactable): void { + if (interactable === null || interactable === undefined) { + this.log.e("Cannot deregister null or uninitialized interactable.") + return + } + + /* + * When an Interactable is deregistered, check our list of Interactors and clear their current Interactable + * if it is the same as the Interactable that was just deregistered + */ + for (const interactor of this.interactors) { + if ( + interactor.currentInteractable !== null && + interactable === interactor.currentInteractable + ) { + interactor.clearCurrentInteractable() + } + } + + if ( + this.interactables.delete(interactable) && + this.interactableSceneObjects.delete(interactable.sceneObject) + ) { + this.log.d(`Deregistered interactable "${interactable.sceneObject.name}"`) + } + } + + /** + * Returns an {@link Interactable} by the collider attached to it. + * This is an optimization to reduce expensive getComponent calls. + * @param collider The {@link ColliderComponent} to filter interactables by. + * @returns The interactable that matches the collider. + */ + getInteractableByCollider(collider: ColliderComponent): Interactable | null { + const interactable = this.colliderToInteractableMap.get(collider) ?? null + if (!interactable) { + return null + } + if (getSafeReference(interactable.sceneObject) === null) { + this.colliderToInteractableMap.delete(collider) + } + + if (interactable?.sceneObject.enabled) { + return interactable + } else { + return null + } + } + + /** + * Returns the interactable of the passed {@link SceneObject}. + * @param sceneObject The {@link SceneObject} to filter interactables by. + * @returns The interactable that matches the scene object. + */ + getInteractableBySceneObject(sceneObject: SceneObject): Interactable | null { + const interactable = this.interactableSceneObjects.get(sceneObject) ?? null + + if (!interactable) { + return null + } + + if (getSafeReference(interactable.sceneObject) === null) { + this.interactableSceneObjects.delete(sceneObject) + } + + return interactable + } + + /** + * @deprecated use `getInteractablesThatTarget(targetingMode) instead.` + * @param targetingMode the targeting mode that the interactable(s) are configured to + */ + getInteractablesByTargetingMode( + targetingMode: TargetingMode + ): Interactable[] { + return this.getInteractablesThatTarget(targetingMode) + } + + /** + * Returns all interactables that are set to the passed targeting mode. + * @param targetingMode - {@link TargetingMode} to filter interactables by + * @returns an array of interactables that match the targeting mode + */ + getInteractablesThatTarget(targetingMode: TargetingMode): Interactable[] { + const returnArray: Interactable[] = [] + this.interactables.forEach((interactable: Interactable) => { + if ((interactable.targetingMode & targetingMode) !== 0) { + returnArray.push(interactable) + } + }) + return returnArray + } + + /** + * Dispatches an event in 3 phases: + * - Trickle-down: the event descends the hierarchy, from the first + * interactable ancestor of the target to its parent + * - Target: the event is sent to the target + * - Bubble-up: the event ascends the hierarchy, from the target's parent + * to its first interactable ancestor + * + * The {@link DispatchableEventArgs | eventArgs.origin} is not included in the propagation path and + * the dispatch starts at {@link DispatchableEventArgs | eventArgs.origin} child. + * @param eventArgs The event arguments to dispatch. + */ + dispatchEvent(eventArgs: DispatchableEventArgs): void { + this.eventDispatcher.dispatch(eventArgs) + } + + set debugModeEnabled(enabled: boolean) { + this._debugModeEnabled = enabled + + for (const interactor of this.interactors.keys()) { + interactor.drawDebug = enabled + } + + for (const collider of this.colliderToInteractableMap.keys()) { + collider.debugDrawEnabled = enabled + } + + for (const plane of this.interactionPlanes.keys()) { + plane.drawDebug = enabled + } + } + + get debugModeEnabled(): boolean { + return this._debugModeEnabled + } + + private defineScriptEvents(): void { + LensConfig.getInstance() + .updateDispatcher.createUpdateEvent("InteractionManagerUpdateEvent") + .bind(() => this.update()) + } + + /** + * Iterates through all the interactors, determine which interactables + * are being interacted with, and send events to them + */ + private update() { + this.disableOtherInteractorsIfMobileInputTypeIsDetected() + + // Update interactors + this.updateInteractors() + + // Process interactor events + this.interactors.forEach((interactor) => this.processEvents(interactor)) + } + + private processEvents(interactor: Interactor) { + if (!interactor.enabled) { + /** + * Check to see if we were triggering an interactable before + * losing tracking / being disabled. If we were, send a cancel + * event to keep the interactable up to date. + */ + + if (interactor.previousInteractable) { + if ((InteractorTriggerType.Select & interactor.previousTrigger) !== 0) { + this.eventDispatcher.dispatch({ + target: interactor.previousInteractable, + interactor: interactor, + eventName: "TriggerCanceled", + }) + } + if ( + (interactor.inputType & + interactor.previousInteractable.hoveringInteractor) !== + 0 + ) { + this.eventDispatcher.dispatch({ + target: interactor.previousInteractable, + interactor: interactor, + eventName: "HoverExit", + }) + } + } + + return + } + + // Process events + if (interactor.currentInteractable) { + this.processHoverEvents(interactor) + this.processTriggerEvents(interactor) + } else if (interactor.previousInteractable) { + if ( + (interactor.inputType & + interactor.previousInteractable.hoveringInteractor) !== + 0 + ) { + // If it was previously targeted + this.eventDispatcher.dispatch({ + target: interactor.previousInteractable, + interactor: interactor, + eventName: "HoverExit", + }) + } + + // If the interactor is no longer interacting with an interactable that it was previously interacting, + // the trigger has been cancelled rather than ending fully. + if (interactor.previousTrigger !== InteractorTriggerType.None) { + this.eventDispatcher.dispatch({ + target: interactor.previousInteractable, + interactor: interactor, + eventName: "TriggerCanceled", + }) + } + } + } + + private updateInteractors() { + this.interactors.forEach((interactor: Interactor) => { + interactor.updateState() + + if (interactor.currentInteractable !== interactor.previousInteractable) { + interactor.currentInteractableChanged() + } + + if (!interactor.isActive()) { + /** + * Check to see if we were triggering an interactable before + * losing tracking / being disabled. If we were, send a cancel + * event to keep the interactable up to date. + */ + if (interactor.previousInteractable) { + if ( + (InteractorTriggerType.Select & interactor.previousTrigger) !== + 0 + ) { + this.eventDispatcher.dispatch({ + target: interactor.previousInteractable, + interactor: interactor, + eventName: "TriggerCanceled", + }) + } + + if ( + (interactor.inputType & + interactor.previousInteractable.hoveringInteractor) !== + 0 + ) { + this.eventDispatcher.dispatch({ + target: interactor.previousInteractable, + interactor: interactor, + eventName: "HoverExit", + }) + } + } + return + } + }) + } + + private processHoverEvents(interactor: Interactor) { + if (interactor.currentInteractable === null) { + return + } + + // If first time targeted + if (interactor.previousInteractable !== interactor.currentInteractable) { + // Alert previous interactable that we've left it + if (interactor.previousInteractable !== null) { + if ( + (interactor.inputType & + interactor.previousInteractable.hoveringInteractor) !== + 0 + ) { + this.eventDispatcher.dispatch({ + target: interactor.previousInteractable, + interactor: interactor, + eventName: "HoverExit", + }) + } + } + + this.eventDispatcher.dispatch({ + target: interactor.currentInteractable, + interactor: interactor, + eventName: "HoverEnter", + }) + } else { + this.eventDispatcher.dispatch({ + target: interactor.currentInteractable, + interactor: interactor, + eventName: "HoverUpdate", + }) + } + } + + private processTriggerEvents(interactor: Interactor) { + if (interactor.currentInteractable === null) { + return + } + + const previousTrigger = interactor.previousTrigger + const currentTrigger = interactor.currentTrigger + + const eventArgs = { + target: interactor.currentInteractable, + interactor: interactor, + } + + if ( + previousTrigger === InteractorTriggerType.None && + (InteractorTriggerType.Select & currentTrigger) !== 0 + ) { + this.eventDispatcher.dispatch({ + ...eventArgs, + eventName: "TriggerStart", + }) + } else if ( + previousTrigger === currentTrigger && + currentTrigger !== InteractorTriggerType.None + ) { + this.eventDispatcher.dispatch({ + ...eventArgs, + eventName: "TriggerUpdate", + }) + } else if ( + previousTrigger !== InteractorTriggerType.None && + // This check ensures that the interactor being in a 'triggering' state only invokes onTriggerEnd of an Interactable + // if the trigger was actually applied to the Interactable in a previous update. + interactor.previousInteractable !== null + ) { + this.eventDispatcher.dispatch({ + ...eventArgs, + eventName: "TriggerEnd", + }) + } + } + + /** + * Looks for colliders in the descendants of the param {@link Interactable} + * if not collider is found, one is created. + * @param interactable the interactable for which to find or create the collider + * @returns an array of {@link ColliderComponent} + */ + private findOrCreateColliderForInteractable( + interactable: Interactable + ): ColliderComponent[] { + let colliders = interactable.colliders + let sceneObject = interactable.sceneObject + if (colliders.length === 0) { + colliders = this.findCollidersForSceneObject(sceneObject, colliders, true) + } + if (colliders.length === 0) { + this.log.d( + `No ColliderComponent in ${sceneObject.name}'s hierarchy. Creating one...` + ) + + colliders.push(sceneObject.createComponent("Physics.ColliderComponent")) + } + interactable.colliders = colliders + return colliders + } + + /** + * Finds all colliders in the descendants of an {@link SceneObject} with the following rules: + * - If the current {@link SceneObject} is not root and has an {@link Interactable} component, + * we stop the search as we do not want to associate this child's colliders. + * - Else we accumulate all {@link ColliderComponent} and return them + * @param sceneObject the {@link SceneObject} for which to look for colliders + * - If some colliders are already registered + * @param colliders the current array of colliders + * @param isRoot whether the sceneObject is the root of the search + * @returns an array of {@link ColliderComponent} + */ + private findCollidersForSceneObject( + sceneObject: SceneObject, + colliders: ColliderComponent[], + isRoot: boolean = false + ): ColliderComponent[] { + const interactable = sceneObject.getComponent(Interactable.getTypeName()) + + if (interactable !== null && !isRoot) { + return colliders + } + + const foundColliders = sceneObject.getComponents( + "Physics.ColliderComponent" + ) + const collidersRegistered = + foundColliders.find((collider: ColliderComponent) => + this.colliderToInteractableMap.has(collider) + ) !== undefined + + if (collidersRegistered) { + this.log.w( + `Some colliders in ${sceneObject.name} were already registered with an Interactable object.` + ) + } + + colliders.push(...foundColliders) + + const childrenCount = sceneObject.getChildrenCount() + for (let i = 0; i < childrenCount; i++) { + this.findCollidersForSceneObject(sceneObject.getChild(i), colliders) + } + + return colliders + } + + private disableOtherInteractorsIfMobileInputTypeIsDetected() { + const mobileInteractors = this.getInteractorsByType( + InteractorInputType.Mobile + ) + if (mobileInteractors.length === 0) { + return + } + const handInteractors = this.getInteractorsByType( + InteractorInputType.BothHands + ) + const shouldEnableOtherInteractors = !mobileInteractors[0].isActive() + + if ( + this.shouldEnableNonMobileInteractors !== shouldEnableOtherInteractors + ) { + this.shouldEnableNonMobileInteractors = shouldEnableOtherInteractors + + if (this.shouldEnableNonMobileInteractors) { + this.log.d("Switching to non-Mobile interactors.") + } else { + this.log.d("Switching to Mobile interactor.") + } + + handInteractors.forEach((handInteractor: Interactor) => + handInteractor.setInputEnabled(shouldEnableOtherInteractors) + ) + const mouseInteractors = this.getInteractorsByType( + InteractorInputType.Mouse + ) + if (mouseInteractors.length > 0) { + mouseInteractors.forEach((mouseInteractor: Interactor) => { + mouseInteractor.enabled = shouldEnableOtherInteractors + }) + } + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/InteractionManager.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/InteractionManager.ts.meta new file mode 100644 index 00000000..42f63564 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/InteractionManager/InteractionManager.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 99e37220-7ec1-4b1e-bd39-e952dc778348 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 99e37220-7ec1-4b1e-bd39-e952dc778348 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 71d144b3-1c09-4552-af5f-50dd16c8f560 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/BaseInteractor.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/BaseInteractor.ts new file mode 100644 index 00000000..b28780b6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/BaseInteractor.ts @@ -0,0 +1,380 @@ +import {Interactable} from "../../Components/Interaction/Interactable/Interactable" +import {InteractableHitInfo} from "../../Providers/TargetProvider/TargetProvider" +import Event from "../../Utils/Event" +import {validate} from "../../Utils/validate" +import {InteractionManager} from "../InteractionManager/InteractionManager" +import {DragProvider} from "./DragProvider" +import { + DragType, + Interactor, + InteractorInputType, + InteractorTriggerType, + TargetingMode, +} from "./Interactor" + +const TAG = "BaseInteractor" + +/** + * Defines API for {@link Interactor} type + */ +export default abstract class BaseInteractor + extends BaseScriptComponent + implements Interactor +{ + @ui.group_start("Interactor") + /** + * Should draw gizmos for visual debugging. + */ + @input + _drawDebug: boolean = false + + @ui.group_start("Spherecast Configuration") + /** + * Should use spherecast for targeting when raycast does not register a hit. + */ + @input + sphereCastEnabled: boolean = false + @input("number[]", "{0.5, 2.0, 4.0}") + @showIf("sphereCastEnabled", true) + spherecastRadii: number[] = [0.5, 2.0, 4.0] + @input("number[]", "{0, 12, 30}") + @showIf("sphereCastEnabled", true) + spherecastDistanceThresholds: number[] = [0, 12, 30] + @ui.group_end + @ui.group_start("Targeting Configuration") + /** + * The maximum distance at which the interactor can target interactables. + */ + @input + _maxRaycastDistance: number = 500 + @input + indirectTargetingVolumeMultiplier: number = 1 + @ui.group_end + @ui.group_start("Indirect Drag Provider") + @input + protected indirectDragThreshold: number = 3.0 + @ui.group_end + @ui.group_end + + // Dependencies injection + protected interactionManager = InteractionManager.getInstance() + + protected _dragProvider = new DragProvider(this.indirectDragThreshold) + + // To allow the planecast drag vector to always be available for 1:1 usage, the threshold should be 0. + protected _planecastDragProvider = new DragProvider(0) + + /** + * Defines the interactor's input type. This can be used for prioritization + * or for discerning controller vs hands. + */ + inputType = InteractorInputType.None + + /** + * Returns the current targeted interactable or null. + */ + currentInteractable: Interactable | null = null + /** + * Returns the previous targeted interactable or null. + */ + previousInteractable: Interactable | null = null + + private onCurrentInteractableChangedEvent = new Event() + + /** + * Called whenever the Interactor changes the target Interactable + */ + onCurrentInteractableChanged = + this.onCurrentInteractableChangedEvent.publicApi() + + /** + * Returns the previous trigger value + */ + previousTrigger = InteractorTriggerType.None + + /** + * Returns the current trigger value + */ + currentTrigger = InteractorTriggerType.None + + _currentDragVector: vec3 | null = null + + /** + * Returns the nullable drag vector, computed in the + * previous frame + */ + previousDragVector: vec3 | null = null + + protected _previousStartPoint: vec3 | null = null + + constructor() { + super() + + this.interactionManager.registerInteractor(this) + } + + release(): void { + this.interactionManager.deregisterInteractor(this) + } + + /** + * Updates the targeting and trigger state of the interactor + */ + updateState(): void { + this.previousInteractable = this.currentInteractable + this.previousTrigger = this.currentTrigger + this.previousDragVector = this.currentDragVector + this._previousStartPoint = this.startPoint + + this.currentInteractable = null + } + + /** + * Disables or enables the input powering this interactor + * @param enabled whether the input powering the interactor should be enabled + */ + setInputEnabled(enabled: boolean): void {} + + /** + * Clears the current Interactable, used when an Interactable is deleted at runtime + */ + clearCurrentInteractable(): void { + this.currentInteractable = null + this.clearCurrentHitInfo() + } + + /** + * Returns the point where the interactor's ray starts. + */ + abstract get startPoint(): vec3 | null + + /** + * Returns the point where the interactor's ray ends. + */ + abstract get endPoint(): vec3 | null + + /** + * Returns the delta start position from previous frame + */ + get deltaStartPosition(): vec3 | null { + if (this.startPoint === null || this._previousStartPoint === null) { + return null + } + return this.startPoint.sub(this._previousStartPoint) + } + + /** + * Returns the direction the interactor's ray is pointing toward. + */ + abstract get direction(): vec3 | null + + /** + * Returns the orientation of the interactor + */ + abstract get orientation(): quat | null + + /** + * @deprecated in favor of using targetHitInfo + * Returns the distance to the current target in cm + */ + abstract get distanceToTarget(): number | null + + /** + * @deprecated in favor of using targetHitInfo + * Returns the point at which the interactor intersected the current target + */ + abstract get targetHitPosition(): vec3 | null + + /** + * Returns the {@link InteractableHitInfo} describing the intersection with the current target + * This includes information such as the intersection position/normal, the Interactable, the collider, etc + */ + abstract get targetHitInfo(): InteractableHitInfo | null + + /** + * Returns the maximum raycast length for world targeting in cm + */ + abstract get maxRaycastDistance(): number + + /** + * Returns the targeting mode used to obtain the targeted interactable + */ + abstract get activeTargetingMode(): TargetingMode + + /** + * Returns a normalized value from 0-1, where 0 is the lowest strength and + * 1 the highest. + * Returns null if the strength cannot be computed. + */ + abstract get interactionStrength(): number | null + + /** + * Returns true if the interactor is actively targeting + */ + abstract isTargeting(): boolean + + /** + * Returns true if the interactor is active + */ + abstract isActive(): boolean + + protected abstract clearCurrentHitInfo(): void + + get dragProvider(): DragProvider { + return this._dragProvider + } + + set dragProvider(provider: DragProvider | undefined) { + validate(provider) + this._dragProvider = provider + } + + protected get planecastDragProvider(): DragProvider { + return this._planecastDragProvider + } + + /** + * Returns the current vector associated to a dragging + * movement since the last frame, and null if not dragging + */ + get currentDragVector(): vec3 | null { + return this._currentDragVector + } + + protected set currentDragVector(dragVector: vec3 | null) { + this._currentDragVector = dragVector + } + + /** + * @returns the drag vector projected onto the plane defined by the current Interactable's forward and origin + */ + get planecastDragVector(): vec3 | null { + return this.planecastDragProvider.currentDragVector + } + + protected clearDragProviders(): void { + this.dragProvider.clear() + this.planecastDragProvider.clear() + } + + protected updateDragVector(): void { + if ((this.currentTrigger & InteractorTriggerType.Select) !== 0) { + this.currentDragVector = this.dragProvider.getDragVector( + this.getDragPoint(), + this.currentInteractable?.enableInstantDrag ?? null + ) + + this.planecastDragProvider.getDragVector( + this.planecastPoint, + this.currentInteractable?.enableInstantDrag ?? null + ) + } else { + this.currentDragVector = null + this.clearDragProviders() + } + } + + protected getDragPoint(): vec3 | null { + return this.endPoint + } + + get planecastPoint(): vec3 | null { + return this.raycastPlaneIntersection(this.currentInteractable) + } + + /** + * Used to define the type of drag vector that the interactor is invoking. + * By default, interactor drag vectors will be as SixDof drags. + */ + get dragType(): DragType | null { + if (this.currentDragVector !== null) { + return DragType.SixDof + } + + return null + } + + /** + * Set if the Interactor is should draw a debug gizmo of collider/raycasts in the scene. + */ + abstract set drawDebug(debug: boolean) + + /** + * @returns if the Interactor is currently drawing a debug gizmo of collider/raycasts in the scene. + */ + abstract get drawDebug(): boolean + + /** + * Calculates the intersection of the Interactor's indirect raycast and the plane defined by the Interactable's forward vector / origin + * @param interactable - the Interactable used to define the plane of intersection + * @returns the intersection point of the indirect raycast and plane + */ + public raycastPlaneIntersection( + interactable: Interactable | null + ): vec3 | null { + const origin = this.startPoint + const direction = this.direction + + if (origin === null || direction === null || interactable === null) { + return null + } + + // This logic uses the equation of t = ((p0-l0)·n)/(l·n) with l0 + l*t = the point of intersection. + // l0 represents ray origin, l represents direction, p0 represents plane origin, and n represents the plane normal. + const normal = interactable.sceneObject.getTransform().forward + const originToPlane = interactable.sceneObject + .getTransform() + .getWorldPosition() + .sub(origin) + + const originDotProduct = originToPlane.dot(normal) + const directionDotProduct = direction.dot(normal) + + const parametricValue = originDotProduct / directionDotProduct + + if (parametricValue >= 0) { + return origin.add(direction.uniformScale(parametricValue)) + } else { + return null + } + } + + /** + * Projects the direct collider's position onto the plane defined by the Interactable's forward vector / origin + * @param interactable - the Interactable used to define the plane of intersection + * @returns the direct collider's position projected onto the plane + */ + public colliderPlaneIntersection( + interactable: Interactable | null + ): vec3 | null { + const origin = this.startPoint + + if (origin === null || interactable === null) { + return null + } + + // This logic uses the equation of t = ((p0-l0)·n)/(l·n) with l0 + l*t = the point of intersection. + // l0 represents ray origin, l represents direction, p0 represents plane origin, and n represents the plane normal. + const normal = interactable.sceneObject.getTransform().forward + const originToPlane = interactable.sceneObject + .getTransform() + .getWorldPosition() + .sub(origin) + + const originDotProduct = originToPlane.dot(normal) + const directionDotProduct = normal.dot(normal) + + const parametricValue = originDotProduct / directionDotProduct + + return origin.add(normal.uniformScale(parametricValue)) + } + + /** + * Notifies that the Interactor has changed target Interactable + */ + currentInteractableChanged = (): void => { + if (this.currentInteractable !== this.previousInteractable) { + this.onCurrentInteractableChangedEvent.invoke(this.currentInteractable) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/BaseInteractor.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/BaseInteractor.ts.meta new file mode 100644 index 00000000..74119fb5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/BaseInteractor.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! cfcabf2a-c8e9-437c-ae0c-246ced8aae6f + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! cfcabf2a-c8e9-437c-ae0c-246ced8aae6f + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! e4892e76-26a7-4665-9b1f-6eb9a7e31b14 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/ColliderTargetProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/ColliderTargetProvider.ts new file mode 100644 index 00000000..82a1fb28 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/ColliderTargetProvider.ts @@ -0,0 +1,202 @@ +import {InteractionPlane} from "../../Components/Interaction/InteractionPlane/InteractionPlane" +import TargetProvider from "../../Providers/TargetProvider/TargetProvider" +import {notEmpty} from "../../Utils/notEmpty" +import BaseInteractor from "./BaseInteractor" + +/** + * Config for ColliderTargetProvider + */ +export type ColliderTargetProviderConfig = { + shouldPreventTargetUpdate?: () => boolean +} + +/** + * Uses a collider positioned to detect a target + */ +export abstract class ColliderTargetProvider extends TargetProvider { + protected ownerSceneObject: SceneObject + + // If the collider is in an interaction plane's interaction zone, cache the plane. + protected _currentInteractionPlanes: InteractionPlane[] = [] + + protected interactor: BaseInteractor + constructor( + interactor: BaseInteractor, + protected config: ColliderTargetProviderConfig + ) { + super() + this.interactor = interactor + this.ownerSceneObject = global.scene.createSceneObject( + "ColliderTargetProvider" + ) + this.ownerSceneObject.setParent(this.interactor.sceneObject) + } + + /** @inheritdoc */ + get startPoint(): vec3 { + return this.colliderPosition + } + + /** @inheritdoc */ + get endPoint(): vec3 { + return this.colliderPosition + } + + /** + * Returns an array of InteractionPlanes with interaction zones overlapping with the collider. + */ + get currentInteractionPlanes(): InteractionPlane[] { + return this._currentInteractionPlanes + } + + /** + * Clears an InteractionPlane from the cache (in the event of the InteractionPlane being de-registered). + * @param plane - the InteractionPlane to clear. + */ + clearInteractionPlane(plane: InteractionPlane): void { + const index = this.currentInteractionPlanes.indexOf(plane) + + if (index !== -1) { + this._currentInteractionPlanes.splice(index, 1) + } + } + + /** + * @returns the direct collider position for direct manipulation + */ + get colliderPosition(): vec3 { + return this.isAvailable() + ? this.ownerSceneObject.getTransform().getWorldPosition() + : vec3.zero() + } + + /** + * @returns true if target provider is available, false otherwise + */ + protected abstract isAvailable(): boolean + + /** + * @returns the collider next position + */ + protected abstract getNextPosition(): vec3 + + /** @inheritdoc */ + update(): void { + if (this.isAvailable()) { + const newPosition = this.getNextPosition() + this.ownerSceneObject.getTransform().setWorldPosition(newPosition) + this.ownerSceneObject.enabled = true + } else { + this.ownerSceneObject.enabled = false + this.clearCurrentInteractableHitInfo() + this._currentInteractionPlanes = [] + } + } + + /** @inheritdoc */ + destroy(): void { + this.ownerSceneObject.destroy() + } + + protected createCollider( + sceneObject: SceneObject, + radius: number, + onOverlapStay: ((eventArgs: OverlapStayEventArgs) => void) | null, + onOverlapExit: ((eventArgs: OverlapExitEventArgs) => void) | null, + debugDrawEnabled: boolean + ): ColliderComponent { + const collider = sceneObject.createComponent("Physics.ColliderComponent") + + const shape = Shape.createSphereShape() + shape.radius = radius + collider.shape = shape + collider.intangible = true + collider.debugDrawEnabled = debugDrawEnabled + + if (onOverlapStay !== null) { + collider.onOverlapStay.add(onOverlapStay) + } + + if (onOverlapExit !== null) { + collider.onOverlapExit.add(onOverlapExit) + } + + return collider + } + + protected onColliderOverlapStay( + event: OverlapEnterEventArgs, + allowOutOfFovInteraction = true + ): void { + if (this.config.shouldPreventTargetUpdate?.()) { + return + } + + const hits: RayCastHit[] = event.currentOverlaps + .map((overlap) => { + try { + return { + collider: overlap.collider, + distance: overlap.collider + .getTransform() + .getWorldPosition() + .distance(this.endPoint), + normal: vec3.zero(), + position: this.endPoint, + skipRemaining: false, + t: 0, + triangle: null, + getTypeName: overlap.collider.getTypeName, + isTypeOf: overlap.collider.isOfType, + isSame: overlap.collider.isSame, + isOfType: overlap.collider.isOfType, + } as RayCastHit + } catch { + return null + } + }) + .filter(notEmpty) + + this._currentInteractableHitInfo = this.getInteractableHitFromRayCast( + hits, + 0, + allowOutOfFovInteraction + ) + + this.updateInteractionPlanesFromOverlap(event.currentOverlaps) + } + + protected onColliderOverlapExit(event: OverlapEnterEventArgs): void { + if ( + event.overlap.collider === this._currentInteractableHitInfo?.hit.collider + ) { + this._currentInteractableHitInfo = null + } + + this.removeInteractionPlaneFromOverlap(event.overlap) + } + + protected updateInteractionPlanesFromOverlap(overlaps: Overlap[]): void { + for (const overlap of overlaps) { + const plane = overlap.collider + .getSceneObject() + .getComponent(InteractionPlane.getTypeName()) + if (plane !== null && !this._currentInteractionPlanes.includes(plane)) { + this._currentInteractionPlanes.push(plane) + } + } + } + + protected removeInteractionPlaneFromOverlap(overlap: Overlap): void { + const plane = overlap.collider + .getSceneObject() + .getComponent(InteractionPlane.getTypeName()) + if (plane !== null) { + const index = this.currentInteractionPlanes.indexOf(plane) + + if (index !== -1) { + this._currentInteractionPlanes.splice(index, 1) + } + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/ColliderTargetProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/ColliderTargetProvider.ts.meta new file mode 100644 index 00000000..579dae18 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/ColliderTargetProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! e50b2da5-e6e2-4e49-bc2d-3403ffe77858 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! e50b2da5-e6e2-4e49-bc2d-3403ffe77858 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! e9befd12-a0ef-4340-9323-6e92d2f94c5f + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DirectTargetProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DirectTargetProvider.ts new file mode 100644 index 00000000..da4bb5bf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DirectTargetProvider.ts @@ -0,0 +1,140 @@ +import {HandInputData} from "../../Providers/HandInputData/HandInputData" +import {HandType} from "../../Providers/HandInputData/HandType" +import BaseInteractor from "./BaseInteractor" +import { + ColliderTargetProvider, + ColliderTargetProviderConfig, +} from "./ColliderTargetProvider" +import {TargetingMode} from "./Interactor" + +export type DirectTargetProviderConfig = ColliderTargetProviderConfig & { + handType: HandType + debugEnabled: boolean + colliderEnterRadius: number + colliderExitRadius: number +} + +/** + * Hand based direct target provider. Uses a collider positioned + * at the center position of the index and thumb + */ +export class DirectTargetProvider extends ColliderTargetProvider { + readonly targetingMode: TargetingMode = TargetingMode.Direct + + private handProvider: HandInputData = HandInputData.getInstance() + + private hand = this.handProvider.getHand(this.config.handType) + + private overlapEvent: OverlapStayEventArgs | null = null + + private colliders: ColliderComponent[] + + private _drawDebug = this.config.debugEnabled + + constructor( + interactor: BaseInteractor, + protected config: DirectTargetProviderConfig + ) { + super(interactor, config) + + this.colliders = [] + + this.colliders.push( + this.createCollider( + this.ownerSceneObject, + config.colliderEnterRadius, + this.onColliderOverlapStay.bind(this), + null, + config.debugEnabled + ) + ) + + this.colliders.push( + this.createCollider( + this.ownerSceneObject, + config.colliderExitRadius, + null, + this.onColliderOverlapExit.bind(this), + config.debugEnabled + ) + ) + + this.ownerSceneObject.enabled = false + this.hand.onHandFound.add(() => { + this.ownerSceneObject.enabled = true + }) + this.hand.onHandLost.add(() => { + this.ownerSceneObject.enabled = false + }) + } + + set drawDebug(debug: boolean) { + this._drawDebug = debug + + for (const collider of this.colliders) { + collider.debugDrawEnabled = debug + } + } + + get drawDebug(): boolean { + return this._drawDebug + } + + /** @inheritdoc */ + protected isAvailable(): boolean { + return ( + this.hand.indexTip !== null && + this.hand.thumbTip !== null && + this.hand.enabled && + (this.hand.isTracked() || this.hand.isPinching()) + ) + } + + /** @inheritdoc */ + override update(): void { + if (this.isAvailable()) { + const newPosition = this.getNextPosition() + this.ownerSceneObject.getTransform().setWorldPosition(newPosition) + this.ownerSceneObject.enabled = true + + if (!this.config.shouldPreventTargetUpdate?.()) { + if (this.overlapEvent === null) { + this.clearCurrentInteractableHitInfo() + } + this.overlapEvent = null + } + } else { + this.ownerSceneObject.enabled = false + this.clearCurrentInteractableHitInfo() + this._currentInteractionPlanes = [] + } + } + + protected override onColliderOverlapStay( + event: OverlapEnterEventArgs, + allowOutOfFovInteraction = true + ): void { + this.overlapEvent = event + super.onColliderOverlapStay(event, allowOutOfFovInteraction) + } + + protected override onColliderOverlapExit(event: OverlapEnterEventArgs): void { + if (this.config.shouldPreventTargetUpdate?.()) { + return + } + + super.onColliderOverlapExit(event) + } + + /** @inheritdoc */ + protected getNextPosition(): vec3 { + const indexTip = this.hand.indexTip?.position + const thumbTip = this.hand.thumbTip?.position + + if (indexTip === undefined || thumbTip === undefined) { + return vec3.zero() + } + + return indexTip.add(thumbTip).uniformScale(0.5) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DirectTargetProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DirectTargetProvider.ts.meta new file mode 100644 index 00000000..dae92cfd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DirectTargetProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! b053c2ed-a426-4c58-b5d2-7138186a1dcd + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! b053c2ed-a426-4c58-b5d2-7138186a1dcd + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! dd5878dc-b21a-4da2-8339-a0fdf4e55a49 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DragProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DragProvider.ts new file mode 100644 index 00000000..584f6b6d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DragProvider.ts @@ -0,0 +1,92 @@ +/** + * Manages the logic for the dragging behaviour, especially detects when dragging happens, + * and provides the associated dragVector + */ +export class DragProvider { + private _originPosition: vec3 | null = null + private _isDragging = false + private previousPosition = vec3.zero() + private _currentDragVector: vec3 | null = null + + constructor(private dragThreshold: number) { + if (dragThreshold < 0) { + throw new Error("HandInteractor: DragThreshold can't be negative.") + } + } + + /** + * @returns origin position for the drag + */ + get originPosition(): vec3 | null { + return this._originPosition + } + + /** + * @returns if dragging is happening or not + */ + get isDragging(): boolean { + return this._isDragging + } + + /** + * @returns the drag vector of the current frame + */ + get currentDragVector(): vec3 | null { + return this._currentDragVector + } + + /** + * Resets the dragging state + */ + clear(): void { + this._originPosition = null + this._isDragging = false + this._currentDragVector = null + } + + /** + * Detects if the interactor is being dragged and returns dragVector if that happens. + * Detection algorithm: if the distance between the interaction point and the origin + * position exceeds the dragging threshold, then dragging is happening. + * @param currentPosition - position that is used to compute the drag vector + * @returns the dragVector as a {@link vec3} if dragging and null otherwise + */ + getDragVector( + currentPosition: vec3 | null, + enableInstantDrag: boolean | null + ): vec3 | null { + if (currentPosition === null) { + return null + } + + if (!this._isDragging) { + this._isDragging = this.isDragDetected(currentPosition, enableInstantDrag) + this.previousPosition = currentPosition + if (!this._isDragging) { + return null + } + } + + const dragVector = currentPosition.sub(this.previousPosition) + + this.previousPosition = currentPosition + this._currentDragVector = dragVector + + return dragVector + } + + private isDragDetected( + position: vec3, + enableInstantDrag: boolean | null + ): boolean { + if (this._originPosition === null) { + this._originPosition = position + return false + } + + const originDelta = position.sub(this._originPosition) + return ( + originDelta.length >= this.dragThreshold || (enableInstantDrag ?? false) + ) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DragProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DragProvider.ts.meta new file mode 100644 index 00000000..f71d80ae --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/DragProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! cc27c36f-8fbf-4a1f-8c52-cba98d3c41a2 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! cc27c36f-8fbf-4a1f-8c52-cba98d3c41a2 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! c3346de3-0c61-474a-aa04-e67eeb3ac8e5 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/HandRayProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/HandRayProvider.ts new file mode 100644 index 00000000..69aba98b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/HandRayProvider.ts @@ -0,0 +1,110 @@ +import {RaycastInfo, RayProvider} from "./RayProvider" + +import {HandInputData} from "../../Providers/HandInputData/HandInputData" +import {HandType} from "../../Providers/HandInputData/HandType" +import { + FieldTargetingMode, + HandInteractor, + RaycastType, +} from "../HandInteractor/HandInteractor" +import RaycastAnchorHead from "./raycastAlgorithms/RaycastAnchorHead" +import RaycastAnchorVariableShoulder from "./raycastAlgorithms/RaycastAnchorVariableShoulder" +import RaycastBase from "./raycastAlgorithms/RaycastBase" +import RaycastLegacySingleCamera from "./raycastAlgorithms/RaycastLegacySingleCamera" +import RaycastProxy from "./raycastAlgorithms/RaycastProxy" + +export type HandRayProviderConfig = { + raycastAlgorithm: RaycastType + handType: HandType + handInteractor: HandInteractor +} + +/** + * This class provides raycasting functionality for hand interactions. It selects the appropriate raycast algorithm based on the provided configuration. + */ +export class HandRayProvider implements RayProvider { + readonly raycast: RaycastBase + + private handProvider: HandInputData = HandInputData.getInstance() + + private hand = this.handProvider.getHand(this.config.handType) + + constructor(private config: HandRayProviderConfig) { + // Set raycast algorithm used + switch (config.raycastAlgorithm) { + case "LegacySingleCamera": { + this.raycast = new RaycastLegacySingleCamera(this.hand) + break + } + case "AnchorHead": { + this.raycast = new RaycastAnchorHead(this.hand) + break + } + case "Proxy": { + this.raycast = new RaycastProxy(this.hand) + break + } + default: { + this.raycast = new RaycastAnchorVariableShoulder(this.hand) + break + } + } + } + + /** @inheritdoc */ + getRaycastInfo(): RaycastInfo { + // When not near an InteractionPlane, use the raycast base's logic for direction / locus. + if ( + this.config.handInteractor.fieldTargetingMode === + FieldTargetingMode.FarField + ) { + return ( + this.raycast.getRay() ?? { + direction: vec3.zero(), + locus: vec3.zero(), + } + ) + } + // When near an InteractionPlane, raycast from the midpoint straight towards the plane. + else { + const indexTip = this.hand.indexTip?.position + const thumbTip = this.hand.thumbTip?.position + + if (indexTip === undefined || thumbTip === undefined) { + return { + direction: vec3.zero(), + locus: vec3.zero(), + } + } + + const locus = indexTip.add(thumbTip).uniformScale(0.5) + const planeProjection = + this.config.handInteractor.currentInteractionPlane.projectPoint(locus) + + if (planeProjection === null) { + return { + direction: vec3.zero(), + locus: vec3.zero(), + } + } else { + return { + direction: planeProjection.point.sub(locus).normalize(), + locus: locus, + } + } + } + } + + /** @inheritdoc */ + isAvailable(): boolean { + return ( + (this.hand.isInTargetingPose() && this.hand.isTracked()) || + this.hand.isPinching() + ) + } + + /** @inheritdoc */ + reset(): void { + this.raycast.reset() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/HandRayProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/HandRayProvider.ts.meta new file mode 100644 index 00000000..46c0fefd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/HandRayProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! d8134328-2011-49c9-b4a7-2d8b847006e0 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! d8134328-2011-49c9-b4a7-2d8b847006e0 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! d708f8fc-c62b-44c3-b282-04ee4916bf9e + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/IndirectTargetProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/IndirectTargetProvider.ts new file mode 100644 index 00000000..b8490183 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/IndirectTargetProvider.ts @@ -0,0 +1,183 @@ +import {RayProvider, RaycastInfo} from "./RayProvider" +import TargetProvider, { + InteractableHitInfo, +} from "../../Providers/TargetProvider/TargetProvider" + +import BaseInteractor from "./BaseInteractor" +import {TargetingMode} from "./Interactor" + +export type IndirectTargetProviderConfig = { + rayProvider: RayProvider + maxRayDistance: number + targetingVolumeMultiplier?: number + shouldPreventTargetUpdate: () => boolean + spherecastRadii: number[] + spherecastDistanceThresholds: number[] +} + +/** + * This class provides indirect targeting functionality using raycasting and spherecasting. It extends the TargetProvider class and uses a configuration object for initialization. + */ +export default class IndirectTargetProvider extends TargetProvider { + readonly targetingMode: TargetingMode = TargetingMode.Indirect + + private probe = Physics.createGlobalProbe() + private currentRay: RaycastInfo | null = null + private targetingVolumeMultiplier: number = + this.config.targetingVolumeMultiplier ?? 1 + + private spherecastRadii: number[] = this.config.spherecastRadii + private spherecastDistanceThresholds: number[] = + this.config.spherecastDistanceThresholds + + private _drawDebug = this.interactor.drawDebug + + constructor( + private interactor: BaseInteractor, + private config: IndirectTargetProviderConfig, + ) { + super() + this._drawDebug = this.interactor.drawDebug + this.probe.debugDrawEnabled = this.interactor.drawDebug + if ( + this.config.spherecastRadii.length !== + this.config.spherecastDistanceThresholds.length + ) { + throw new Error( + "An Interactor's Spherecast Radii and Spherecast Distance Thresholds input arrays are not the same length!", + ) + } + } + + get startPoint(): vec3 { + return this.currentRay?.locus ?? vec3.zero() + } + + get endPoint(): vec3 { + return this.startPoint.add( + this.direction.uniformScale(this.config.maxRayDistance), + ) + } + + get direction(): vec3 { + return this.currentRay?.direction ?? vec3.zero() + } + + set drawDebug(debug: boolean) { + this._drawDebug = debug + + this.probe.debugDrawEnabled = debug + } + + get drawDebug(): boolean { + return this._drawDebug + } + + /** + * Can be used to reset inner states + * Should be called when the hand is not tracked or targeting is blocked + */ + reset(): void { + this.config.rayProvider.reset() + } + + /** @inheritdoc */ + update(): void { + if (!this.config.rayProvider.isAvailable()) { + this.config.rayProvider.reset() + this.updateTargetedItem(null) + return + } + + this.currentRay = this.config.rayProvider.getRaycastInfo() + if (this.currentRay) { + this.indirectRayCast(this.currentRay) + } + } + + /** @inheritdoc */ + destroy(): void {} + + /** + * Uses a ray cast to detect items in the direct path + * Starts sphere casting if and only if nothing is found with the ray + */ + private indirectRayCast(ray: RaycastInfo) { + this.probe.rayCastAll( + ray.locus, + this.endPoint, + // RaycastHits are automatically sorted from nearest to farthest + (hits: RayCastHit[]) => { + const hitInfo = this.getInteractableHitFromRayCast(hits) + + if (hitInfo) { + this.updateTargetedItem(hitInfo) + return + } + + /* + * If nothing is hit directly by the ray, try sphere cast if ray is sticky or set targeted item to null if not + * Also, reset to default indirect mode + */ + if (this.interactor.sphereCastEnabled) { + this.indirectSphereCast(ray) + } else { + this.updateTargetedItem(null) + } + }, + ) + } + + /** + * Does a sphere cast to look for interactables + * Iterates through size options from smallest to largest until something is found/all options are checked + */ + private indirectSphereCast(ray: RaycastInfo, index: number = 0): void { + // Nothing is targeted if no interactables exist, or we've iterated through all sphere options + if (index >= this.spherecastDistanceThresholds.length) { + this.updateTargetedItem(null) + return + } + const offset = this.spherecastDistanceThresholds[index] + const castOrigin = ray.locus.add(ray.direction.uniformScale(offset)) + const castEnd = castOrigin.add( + ray.direction.uniformScale(this.config.maxRayDistance - offset), + ) + + this.probe.sphereCastAll( + this.spherecastRadii[index] * this.targetingVolumeMultiplier, + castOrigin, + castEnd, + (hits: RayCastHit[]) => { + const hitInfo = this.getInteractableHitFromRayCast(hits, offset) + if (hitInfo) { + this.updateTargetedItem(hitInfo) + return + } + + this.indirectSphereCast(ray, index + 1) + }, + ) + } + + private updateTargetedItem(hitInfo: InteractableHitInfo | null): void { + /* + * We check if the new target is the same, we always update the hit data with the new + * value + */ + if ( + hitInfo !== null && + this.currentInteractableHitInfo !== null && + this.currentInteractableHitInfo.interactable === hitInfo.interactable + ) { + this.currentInteractableHitInfo.hit = hitInfo.hit + } + + // If we shouldn't update the target, we return early + if (this.config.shouldPreventTargetUpdate()) { + return + } + + this._currentInteractableHitInfo = hitInfo + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/IndirectTargetProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/IndirectTargetProvider.ts.meta new file mode 100644 index 00000000..59e29d7e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/IndirectTargetProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 5e1ac85a-6e0e-47c4-b18d-15ba77e3b17a + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 5e1ac85a-6e0e-47c4-b18d-15ba77e3b17a + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 5b4a4b05-a649-44f1-9fbb-8663266a9ee1 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/Interactor.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/Interactor.ts new file mode 100644 index 00000000..e23e6f84 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/Interactor.ts @@ -0,0 +1,128 @@ +import {Interactable} from "../../Components/Interaction/Interactable/Interactable" +import {InteractableHitInfo} from "../../Providers/TargetProvider/TargetProvider" +import {PublicApi} from "../../Utils/Event" + +/** + * Input types that discern a target interactable and translate events from their inputs + */ +export enum InteractorInputType { + None = 0, + LeftHand = 1 << 0, + RightHand = 1 << 1, + BothHands = LeftHand | RightHand, + Mobile = 1 << 2, + BtController = 1 << 3, + CustomController = 1 << 4, + Mouse = 1 << 5, + All = BothHands | Mobile | BtController | CustomController | Mouse, +} + +/** + * TargetingMode is a bitflag that determines how an interactor is interacting with an interactable. + * This is also used to determine whether a specific targeting mode can interact with an interactable. + */ +export enum TargetingMode { + None = 0, + Direct = 1 << 0, + Indirect = 1 << 1, + Poke = 1 << 2, // Poke is mutually exclusive with Direct and Indirect + All = Direct | Indirect | Poke, +} + +/** + * InteractorTriggerType is used to differentiate triggers, + * such as a pinch and poke. For objects that only care about activation, + * we can combine these types to make more generic functionality. + * + * Example: + * The developer may want to trigger a sound effect when selected. We combine + * both Pinch and Poke into Select so that all we have to look for is Select. + */ +export enum InteractorTriggerType { + None = 0, + Pinch = 1 << 0, + Poke = 1 << 1, + Select = Pinch | Poke, +} + +/** + * DragType differentiates the type of drag vector that is being passed. + * SixDof is used when the interactor is being moved in world space. + * Touchpad is used when the interactor has some sort of touchpad to initiate drag events. + */ +export enum DragType { + SixDof = 0, + Touchpad = 1, +} + +/** + * Defines available Interactor apis + */ +export interface Interactor { + enabled: boolean + + inputType: InteractorInputType + + currentInteractable: Interactable | null + + previousInteractable: Interactable | null + + onCurrentInteractableChanged: PublicApi + + currentTrigger: InteractorTriggerType + + previousTrigger: InteractorTriggerType + + currentDragVector: vec3 | null + + previousDragVector: vec3 | null + + planecastDragVector: vec3 | null + + /** + * The type of drag vector that is currently being invoked. + */ + dragType: DragType | null + + startPoint: vec3 | null + + endPoint: vec3 | null + + planecastPoint: vec3 | null + + deltaStartPosition: vec3 | null + + direction: vec3 | null + + orientation: quat | null + + distanceToTarget: number | null + + targetHitPosition: vec3 | null + + targetHitInfo: InteractableHitInfo | null + + maxRaycastDistance: number + + activeTargetingMode: TargetingMode + + interactionStrength: number | null + + drawDebug: boolean + + isTargeting(): boolean + + isActive(): boolean + + updateState(): void + + setInputEnabled(enabled: boolean): void + + raycastPlaneIntersection(interactable: Interactable | null): vec3 | null + + colliderPlaneIntersection(interactable: Interactable | null): vec3 | null + + clearCurrentInteractable(): void + + currentInteractableChanged(): void +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/Interactor.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/Interactor.ts.meta new file mode 100644 index 00000000..6e31b46f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/Interactor.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! d2321203-bfe2-465b-bb74-c480d87c9b1b + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! d2321203-bfe2-465b-bb74-c480d87c9b1b + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 567a4841-3272-4dc1-95ee-78fcfd162d2d + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/InteractorEvent.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/InteractorEvent.ts new file mode 100644 index 00000000..fc697823 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/InteractorEvent.ts @@ -0,0 +1,68 @@ +import {Interactable} from "../../Components/Interaction/Interactable/Interactable" +import {Interactor} from "./Interactor" + +export type EventPropagationPhase = "TrickleDown" | "Target" | "BubbleUp" + +export type InteractableEventName = + | "HoverEnter" + | "HoverUpdate" + | "HoverExit" + | "TriggerStart" + | "TriggerUpdate" + | "TriggerEnd" + | "TriggerCanceled" + +export type DispatchableEventArgs = { + interactor: Interactor + target: Interactable + eventName: InteractableEventName + origin?: Interactable +} + +/** + * Represents an interactor event + * Events are propagated along the scene hierarchy, and can be invoked + * by another component as itself. This event adds a field + * to keep track of which {@link Interactable} invoked it. + */ +export type InteractorEvent = { + /** + * The {@link Interactor} that triggered this event + */ + interactor: Interactor + + /** + * The {@link Interactable} targeted by the interactor + */ + target: Interactable + + /** + * The {@link Interactable} where this event was invoked to + */ + interactable: Interactable + + /** + * The current phase for this event + */ + propagationPhase: EventPropagationPhase + + /** + * Stop propagating this event on the propagation path. + */ + stopPropagation(): void +} + +/** + * InteractorEvent with dragging data + */ +export type DragInteractorEvent = InteractorEvent & { + /* + * The coordinate of the interactor origin relative to the + * position of the last {@link DragInteractorEvent}. + */ + dragVector: vec3 + /** + * The drag vector projected onto the plane defined by the Interactable's forward and origin + */ + planecastDragVector: vec3 | null +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/InteractorEvent.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/InteractorEvent.ts.meta new file mode 100644 index 00000000..19fbebe4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/InteractorEvent.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 72c8d064-a42b-403d-ae20-17ebe741104e + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 72c8d064-a42b-403d-ae20-17ebe741104e + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 167a05f3-46a4-4974-a028-d29f13a30623 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MobileRayProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MobileRayProvider.ts new file mode 100644 index 00000000..6e4f7b75 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MobileRayProvider.ts @@ -0,0 +1,48 @@ +import {MobileInputData} from "../../Providers/MobileInputData/MobileInputData" +import NativeLogger from "../../Utils/NativeLogger" +import {RaycastInfo, RayProvider} from "./RayProvider" + +const TAG = "MobileRayProvider" +const MOBILE_ROTATION = quat.angleAxis(Math.PI / 2, vec3.right()) + +/** + * Constructs the {@link RaycastInfo} from the {@link MobileInputData} data. + */ +export class MobileRayProvider implements RayProvider { + // Native Logging + private log = new NativeLogger(TAG) + + private mobileInputData: MobileInputData = MobileInputData.getInstance() + private raycastInfo: RaycastInfo | null = null + + /** @inheritdoc */ + getRaycastInfo(): RaycastInfo { + if (this.mobileInputData.isAvailable()) { + this.raycastInfo = { + direction: + this.mobileInputData.rotation + ?.multiply(MOBILE_ROTATION) + .multiplyVec3(vec3.back()) ?? vec3.zero(), + locus: this.mobileInputData.position ?? vec3.zero(), + } + } else { + this.log.d( + "Mobile ray provider could not get raycast info because mobile input data provider was not available." + ) + this.raycastInfo = { + direction: vec3.zero(), + locus: vec3.zero(), + } + } + + return this.raycastInfo + } + + /** @inheritdoc */ + isAvailable(): boolean { + return this.mobileInputData.isAvailable() + } + + /** @inheritdoc */ + reset(): void {} +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MobileRayProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MobileRayProvider.ts.meta new file mode 100644 index 00000000..795c9f09 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MobileRayProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! f4d97d38-990e-473f-933d-51d2c39961a7 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! f4d97d38-990e-473f-933d-51d2c39961a7 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! a1a429cd-74cc-4d16-9230-476f5baeeed2 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MouseTargetProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MouseTargetProvider.ts new file mode 100644 index 00000000..55808c66 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MouseTargetProvider.ts @@ -0,0 +1,202 @@ +import TargetProvider, { + InteractableHitInfo, +} from "../../Providers/TargetProvider/TargetProvider" +import BaseInteractor from "./BaseInteractor" +import {TargetingMode} from "./Interactor" +import {RaycastInfo, RayProvider} from "./RayProvider" + +/** + * Configuration of the target provider, particularly how ray direction is calculated + maximum length via rayProvider/maxRayDistance. + * Also allows for definition of when the provider should not update target (e.g. during a trigger) via shouldPreventTargetUpdate. + */ +export type MouseTargetProviderConfig = { + rayProvider: RayProvider + maxRayDistance: number + targetingVolumeMultiplier?: number + shouldPreventTargetUpdate: () => boolean + spherecastRadii: number[] + spherecastDistanceThresholds: number[] +} + +/** + * Target provider for MouseInteractor. Can target all Interactables regardless of their targetingMode. + */ +export default class MouseTargetProvider extends TargetProvider { + readonly targetingMode: TargetingMode = + TargetingMode.Indirect | TargetingMode.Direct | TargetingMode.Poke + + private probe = Physics.createGlobalProbe() + private currentRay: RaycastInfo | null = null + private targetingVolumeMultiplier: number = + this.config.targetingVolumeMultiplier ?? 1 + + private spherecastRadii: number[] = this.config.spherecastRadii + private spherecastDistanceThresholds: number[] = + this.config.spherecastDistanceThresholds + + private _drawDebug = this.interactor.drawDebug + + constructor( + private interactor: BaseInteractor, + private config: MouseTargetProviderConfig + ) { + super() + this._drawDebug = this.interactor.drawDebug + this.probe.debugDrawEnabled = this.interactor.drawDebug + if ( + this.config.spherecastRadii.length !== + this.config.spherecastDistanceThresholds.length + ) { + throw new Error( + "An Interactor's Spherecast Radii and Spherecast Distance Thresholds input arrays are not the same length!" + ) + } + } + + /** + * @inheritdoc + */ + get startPoint(): vec3 { + return this.currentRay?.locus ?? vec3.zero() + } + + /** + * @inheritdoc + */ + get endPoint(): vec3 { + return this.startPoint.add( + this.direction.uniformScale(this.config.maxRayDistance) + ) + } + + /** + * Returns the direction the mouse ray is pointing toward. + */ + get direction(): vec3 { + return this.currentRay?.direction ?? vec3.zero() + } + + /** + * Set if the mouse is should draw a debug gizmo of collider/raycasts in the scene. + */ + set drawDebug(debug: boolean) { + this._drawDebug = debug + + this.probe.debugDrawEnabled = debug + } + + /** + * @returns if the mouse is should draw a debug gizmo of collider/raycasts in the scene. + */ + get drawDebug(): boolean { + return this._drawDebug + } + + /** + * Can be used to reset inner states + * Should be called when the hand is not tracked or targeting is blocked + */ + reset(): void { + this.config.rayProvider.reset() + } + + /** @inheritdoc */ + update(): void { + if (!this.config.rayProvider.isAvailable()) { + this.config.rayProvider.reset() + this.updateTargetedItem(null) + return + } + + this.currentRay = this.config.rayProvider.getRaycastInfo() + if (this.currentRay) { + this.mouseRayCast(this.currentRay) + } + } + + /** @inheritdoc */ + destroy(): void {} + + /** + * Uses a ray cast to detect items in the direct path + * Starts sphere casting if and only if nothing is found with the ray + */ + private mouseRayCast(ray: RaycastInfo) { + this.probe.rayCastAll( + ray.locus, + this.endPoint, + // RaycastHits are automatically sorted from nearest to farthest + (hits: RayCastHit[]) => { + const hitInfo = this.getInteractableHitFromRayCast(hits) + + if (hitInfo) { + this.updateTargetedItem(hitInfo) + return + } + + /* + * If nothing is hit directly by the ray, try sphere cast if ray is sticky or set targeted item to null if not + * Also, reset to default mouse mode + */ + if (this.interactor.sphereCastEnabled) { + this.mouseSphereCast(ray) + } else { + this.updateTargetedItem(null) + } + } + ) + } + + /** + * Does a sphere cast to look for interactables + * Iterates through size options from smallest to largest until something is found/all options are checked + */ + private mouseSphereCast(ray: RaycastInfo, index: number = 0): void { + // Nothing is targeted if no interactables exist, or we've iterated through all sphere options + if (index >= this.spherecastDistanceThresholds.length) { + this.updateTargetedItem(null) + return + } + const offset = this.spherecastDistanceThresholds[index] + const castOrigin = ray.locus.add(ray.direction.uniformScale(offset)) + const castEnd = castOrigin.add( + ray.direction.uniformScale(this.config.maxRayDistance - offset) + ) + + this.probe.sphereCastAll( + this.spherecastRadii[index] * this.targetingVolumeMultiplier, + castOrigin, + castEnd, + (hits: RayCastHit[]) => { + const hitInfo = this.getInteractableHitFromRayCast(hits, offset) + if (hitInfo) { + this.updateTargetedItem(hitInfo) + return + } + + this.mouseSphereCast(ray, index + 1) + } + ) + } + + private updateTargetedItem(hitInfo: InteractableHitInfo | null): void { + /* + * We check if the new target is the same, we always update the hit data with the new + * value + */ + if ( + hitInfo !== null && + this.currentInteractableHitInfo !== null && + this.currentInteractableHitInfo.interactable === hitInfo.interactable + ) { + this.currentInteractableHitInfo.hit = hitInfo.hit + } + + // If we shouldn't update the target, we return early + if (this.config.shouldPreventTargetUpdate()) { + return + } + + this._currentInteractableHitInfo = hitInfo + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MouseTargetProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MouseTargetProvider.ts.meta new file mode 100644 index 00000000..1a10157b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/MouseTargetProvider.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 9f61e8cb-8b78-4d79-b68e-a28e8a7b7e37 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 9f61e8cb-8b78-4d79-b68e-a28e8a7b7e37 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 85089add-08ef-484c-b7da-fa2d2b38ecfc + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/PokeTargetProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/PokeTargetProvider.ts new file mode 100644 index 00000000..177e4d8d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/PokeTargetProvider.ts @@ -0,0 +1,209 @@ +import {HandInputData} from "../../Providers/HandInputData/HandInputData" +import {HandType} from "../../Providers/HandInputData/HandType" +import TargetProvider, { + InteractableHitInfo, +} from "../../Providers/TargetProvider/TargetProvider" +import {isDescendantOf} from "../../Utils/SceneObjectUtils" +import {TargetingMode} from "../Interactor/Interactor" +import {WindowMode} from "./raycastAlgorithms/TimeDataContainer" +import {TimedVec3Container} from "./raycastAlgorithms/TimedVec3Container" + +export type PokeTargetProviderConfig = { + handType: HandType + drawDebug: boolean +} + +const POKE_SPHERECAST_RADIUS = 0.7 + +/** + * Hand based poke target provider. Uses a sphere cast from index mid joint + * to index tip + */ +export class PokeTargetProvider extends TargetProvider { + readonly targetingMode: TargetingMode = TargetingMode.Poke + + private handProvider: HandInputData = HandInputData.getInstance() + + private hand = this.handProvider.getHand(this.config.handType) + + private probe = Physics.createGlobalProbe() + + // Used to calculate the average velocity of the fingertip over the past few frames + private endPointHistory = new TimedVec3Container(WindowMode.FRAME, 4) + + private _drawDebug: boolean = this.config.drawDebug + + constructor(protected config: PokeTargetProviderConfig) { + super() + this.probe.debugDrawEnabled = this.config.drawDebug + } + + /** @inheritdoc */ + get startPoint(): vec3 { + // Extend the collider length to the mid joint after a poke has been entered, so we don't lose pokes too easily + return this._currentInteractableHitInfo !== null + ? this.hand.indexKnuckle.position + : this.hand.indexUpperJoint.position + } + + /** @inheritdoc */ + get endPoint(): vec3 { + return this.hand.indexTip.position + } + + get direction() { + return this.startPoint.sub(this.endPoint).normalize() + } + + set drawDebug(debug: boolean) { + this._drawDebug = debug + + this.probe.debugDrawEnabled = debug + } + + get drawDebug(): boolean { + return this._drawDebug + } + + /** @inheritdoc */ + override get currentInteractableHitInfo(): InteractableHitInfo | null { + return this._currentInteractableHitInfo !== null && this.isAvailable() + ? this._currentInteractableHitInfo + : null + } + + /** @inheritdoc */ + update(): void { + if (!this.isAvailable()) { + this._currentInteractableHitInfo = null + this.endPointHistory.clear() + return + } + this.raycastJoints() + } + + private raycastJoints() { + this.probe.sphereCastAll( + POKE_SPHERECAST_RADIUS, + this.startPoint, + this.endPoint, + (hits) => { + this._currentInteractableHitInfo = + this.getInteractableHitFromRayCast(hits) + + this.endPointHistory.pushWithoutDuplicate(getTime(), this.endPoint) + } + ) + } + + private checkAlignment(position: vec3 | null) { + if (position === null) { + return false + } + + const previousAverage = this.endPointHistory.average() + if (previousAverage === null) { + return false + } + + return previousAverage.sub(position).dot(this.direction) > 0 + } + + protected override getInteractableHitFromRayCast( + hits: RayCastHit[] + ): InteractableHitInfo | null { + const hitInfos: InteractableHitInfo[] = [] + for (const hit of hits) { + const interactable = this.interactionManager.getInteractableByCollider( + hit.collider + ) + + if ( + interactable !== null && + (interactable.targetingMode & this.targetingMode) !== 0 + ) { + hit.skipRemaining = false + + hitInfos.push({ + interactable: interactable, + localHitPosition: interactable.sceneObject + .getTransform() + .getInvertedWorldTransform() + .multiplyPoint(hit.position), + hit: { + collider: hit.collider, + distance: hit.distance, + normal: hit.normal, + position: hit.position, + skipRemaining: false, + t: 0, + triangle: hit.triangle, + getTypeName: hit.getTypeName, + isOfType: hit.isOfType, + isSame: hit.isSame, + }, + targetMode: this.targetingMode, + }) + if ( + //Poke Start Event + (this._currentInteractableHitInfo === null && + this.checkAlignment(hit.position)) || + //Poke Update Event + (this._currentInteractableHitInfo && + interactable === this._currentInteractableHitInfo.interactable) + ) { + return this.getNearestDeeplyNestedInteractable(hitInfos) + } + } + } + + return null + } + + private getNearestDeeplyNestedInteractable( + hitInfos: InteractableHitInfo[] + ): InteractableHitInfo | null { + const infos = hitInfos.reverse() + + let targetHitInfo: InteractableHitInfo | null = null + + for (const currentHitInfo of infos) { + if ( + targetHitInfo === null || + isDescendantOf( + currentHitInfo.interactable.sceneObject, + targetHitInfo.interactable.sceneObject + ) + ) { + targetHitInfo = currentHitInfo + } else { + break + } + } + + return targetHitInfo + } + + /** @inheritdoc */ + destroy(): void {} + + /** @returns whether the target provider is triggering or not */ + isTriggering(): boolean { + return this.currentInteractableHitInfo !== null + } + + /** @inheritdoc */ + getInteractionStrength() { + return this.currentInteractableHitInfo !== null ? 1 : 0 + } + + /** @inheritdoc */ + protected isAvailable(): boolean { + return ( + this.hand.indexTip !== null && + this.hand.indexUpperJoint !== null && + this.hand.enabled && + this.hand.isTracked() + ) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/PokeTargetProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/PokeTargetProvider.ts.meta new file mode 100644 index 00000000..9c6e752c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/PokeTargetProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! cce2acca-d032-4558-98ab-9a9d1132fdee + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! cce2acca-d032-4558-98ab-9a9d1132fdee + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! d118b0b8-d87c-4ce8-8577-71fa67b95e77 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/RayProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/RayProvider.ts new file mode 100644 index 00000000..f87c19cd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/RayProvider.ts @@ -0,0 +1,27 @@ +/** + * Information to draw a ray + */ +export type RaycastInfo = { + direction: vec3 + locus: vec3 +} + +/** + * Provides ray information in order to do ray casting + */ +export interface RayProvider { + /** + * Returns raycast information of ray + */ + getRaycastInfo(): RaycastInfo + + /** + * Returns whether the ray provider is an usable state or not (for instance, hands are not tracked) + */ + isAvailable(): boolean + + /** + * Reset function that can be called for instance when hands are not tracked to reset inner logics + */ + reset(): void +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/RayProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/RayProvider.ts.meta new file mode 100644 index 00000000..3ded5baa --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/RayProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 5a5820be-970f-449f-a3f4-935091fdbbf1 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 5a5820be-970f-449f-a3f4-935091fdbbf1 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 88bd5eed-b585-4473-ad12-d11bd310aedf + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/TouchRayProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/TouchRayProvider.ts new file mode 100644 index 00000000..8d51b0b5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/TouchRayProvider.ts @@ -0,0 +1,80 @@ +import WorldCameraFinderProvider from "../../Providers/CameraProvider/WorldCameraFinderProvider" +import {RaycastInfo, RayProvider} from "./RayProvider" + +/** + * Constructs the {@link RaycastInfo} from the cursor position after a touch event has happened. + */ +export class TouchRayProvider implements RayProvider { + private raycastInfo: RaycastInfo | null = null + private cursorPosition: vec2 | null = null + private camera = WorldCameraFinderProvider.getInstance() + + constructor(script: ScriptComponent, maxRayDistance: number) { + script + .createEvent("TouchStartEvent") + .bind(this.onTouchStartEvent.bind(this)) + + script.createEvent("TouchMoveEvent").bind(this.onTouchMoveEvent.bind(this)) + + script.createEvent("TouchEndEvent").bind(this.onTouchEndEvent.bind(this)) + + script.createEvent("HoverEvent").bind(this.onHoverEvent.bind(this)) + + script.createEvent("UpdateEvent").bind(() => { + if (this.cursorPosition === null) { + this.raycastInfo = null + } else { + const locus = this.camera.screenSpaceToWorldSpace( + this.cursorPosition.x, + this.cursorPosition.y, + 0 + ) + this.raycastInfo = { + locus: locus, + direction: this.camera + .screenSpaceToWorldSpace( + this.cursorPosition.x, + this.cursorPosition.y, + maxRayDistance + ) + .sub(locus) + .normalize(), + } + } + }) + } + + /** @inheritdoc */ + getRaycastInfo(): RaycastInfo { + return ( + this.raycastInfo ?? { + direction: vec3.zero(), + locus: vec3.zero(), + } + ) + } + + /** @inheritdoc */ + isAvailable(): boolean { + return this.cursorPosition !== null + } + + /** @inheritdoc */ + reset(): void {} + + private onTouchStartEvent(ev: TouchStartEvent): void { + this.cursorPosition = ev.getTouchPosition() + } + + private onTouchMoveEvent(ev: TouchMoveEvent): void { + this.cursorPosition = ev.getTouchPosition() + } + + private onTouchEndEvent(ev: TouchEndEvent): void { + this.cursorPosition = ev.getTouchPosition() + } + + private onHoverEvent(ev: HoverEvent): void { + this.cursorPosition = ev.getHoverPosition() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/TouchRayProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/TouchRayProvider.ts.meta new file mode 100644 index 00000000..075395ab --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/TouchRayProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! d0fa55d4-3b1f-4f67-ab92-0a59924ff498 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! d0fa55d4-3b1f-4f67-ab92-0a59924ff498 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! c8217ec0-b5ca-432d-8d40-e54fc64a975b + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/AxisAngle.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/AxisAngle.ts new file mode 100644 index 00000000..7a4687d1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/AxisAngle.ts @@ -0,0 +1,46 @@ +const EPSILON_LENGTH = 1e-6 + +/** + * Represents a rotation around an arbitrary axis. + */ +export default class AxisAngle { + /** + * @param axis - the axis of the rotation + * @param angle - the angle of the rotation + */ + constructor(public axis: vec3, public angle: number) {} + + /** + * @returns a new rotation created from 'this' where the angle is multiplied by the given factor. + * @param factor - the factor to multiply the original rotation's angle with. + */ + multipliedBy(factor: number): AxisAngle { + return new AxisAngle(this.axis, factor * this.angle) + } + + static applyRotation(axisAngle: AxisAngle, vec3: vec3): vec3 { + return quat.angleAxis(axisAngle.angle, axisAngle.axis).multiplyVec3(vec3) + } + + /** + * @returns the rotation between the directions of two vectors in the form of axis & angle + * @param v1 - the direction to rotate from + * @param v2 - the direction to rotate to + */ + static getRotationBetween(v1: vec3, v2: vec3): AxisAngle { + const v1unit = v1.normalize() + const v2unit = v2.normalize() + + const cross = v1unit.cross(v2unit) + const crossLength = cross.length + if (crossLength < EPSILON_LENGTH) { + return new AxisAngle(vec3.right(), 0) + } + + const dot = v1unit.dot(v2unit) + + const axis = cross.normalize() + const angle = Math.atan2(crossLength, dot) + return new AxisAngle(axis, angle) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/AxisAngle.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/AxisAngle.ts.meta new file mode 100644 index 00000000..f268ea0b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/AxisAngle.ts.meta @@ -0,0 +1,40 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 65faf7ad-305a-4083-aa2f-f26df5c86fb2 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 65faf7ad-305a-4083-aa2f-f26df5c86fb2 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! f8e7926a-8858-4056-8e5f-2323dd9e01da + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/ContinousIrInteractionTransition.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/ContinousIrInteractionTransition.ts new file mode 100644 index 00000000..63098196 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/ContinousIrInteractionTransition.ts @@ -0,0 +1,117 @@ +import {inverseLerp} from "../../../Utils/mathUtils" +import {IrInteractionTransition} from "./IrInteractionTransition" + +type ContinousIrInteractionTransitionConfig = { + /** + * Maximum rotation around X axis in degrees when the hand is in a low position + */ + maximumRotationXDegrees: number + + /** + * Minimum height difference between neck and hand to control X rotation + */ + minNeckHandDifference: number + + /** + * Maximum height difference between neck and hand to control X rotation + */ + maxNeckHandDifference: number + + /** + * Enable/Disable the counter effect controlled by the gaze pitch + */ + enableGazeControl: boolean + + /** + * Minimum gaze pitch in degrees to control X rotation + */ + minGazePitchDegrees: number + + /** + * Maximum gaze pitch in degrees to control X rotation + */ + maxGazePitchDegrees: number +} + +const ContinousIrInteractionTransitionConfigDefault = { + maximumRotationXDegrees: 25, + minNeckHandDifference: 10, + maxNeckHandDifference: 45, + enableGazeControl: false, + minGazePitchDegrees: 25, + maxGazePitchDegrees: 40, +} + +/** + * Class to implement Directly controlled continuous IR Transition Strategy + */ +export default class ContinuousIrInteractionTransition + implements IrInteractionTransition +{ + /** @inheritdoc */ + computeXRotationInDegrees( + gazePitchInDegrees: number, + toWorldFromSituationSpace: mat4, + handPoint: vec3 + ): number { + const transformedHandPoint = toWorldFromSituationSpace + .inverse() + .multiplyPoint(handPoint) + + const rotationInDegrees = + this.computeMultiplier(transformedHandPoint, gazePitchInDegrees) * + ContinousIrInteractionTransitionConfigDefault.maximumRotationXDegrees + return rotationInDegrees + } + + /** @inheritdoc */ + computeXRotationInRadians( + gazePitchInRadians: number, + toWorldFromSituationSpace: mat4, + handPoint: vec3 + ): number { + return ( + MathUtils.DegToRad * + this.computeXRotationInDegrees( + MathUtils.RadToDeg * gazePitchInRadians, + toWorldFromSituationSpace, + handPoint + ) + ) + } + + /** + * Computes the multiplier for the Ir interaction additional rotation in continuous transition mode + * @param handPoint - hand point used for height estimation + * @param gazePitchInDegrees - gaze pitch given in degrees + * @returns multiplier for the Ir interaction interaction rotation + */ + private computeMultiplier( + handPoint: vec3, + gazePitchInDegrees: number + ): number { + const effect = MathUtils.clamp( + inverseLerp( + -ContinousIrInteractionTransitionConfigDefault.minNeckHandDifference, + -ContinousIrInteractionTransitionConfigDefault.maxNeckHandDifference, + handPoint.y + ), + 0, + 1 + ) + + const counterEffect = + ContinousIrInteractionTransitionConfigDefault.enableGazeControl + ? MathUtils.clamp( + inverseLerp( + -ContinousIrInteractionTransitionConfigDefault.minGazePitchDegrees, + -ContinousIrInteractionTransitionConfigDefault.maxGazePitchDegrees, + gazePitchInDegrees + ), + 0, + 1 + ) + : 0 + return MathUtils.clamp(effect - counterEffect, 0, 1) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/ContinousIrInteractionTransition.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/ContinousIrInteractionTransition.ts.meta new file mode 100644 index 00000000..9d83015f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/ContinousIrInteractionTransition.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 92c11562-1e2a-4b0a-89e2-77fe9f1cf536 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 92c11562-1e2a-4b0a-89e2-77fe9f1cf536 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 792e585d-f849-424e-bfda-f828d3dbd444 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/IrInteractionTransition.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/IrInteractionTransition.ts new file mode 100644 index 00000000..1e78ab7d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/IrInteractionTransition.ts @@ -0,0 +1,33 @@ +/** + * Interface for computing the additional rotation + * on the targeting ray direction to make use of tracking in IR FoV + */ +export interface IrInteractionTransition { + /** + * Computes an extra rotation around the X axis of Situation space + * based on the height of the hand point and the gaze pitch to make use of the ray in IR FoV range + * @param gazePitchInDegrees - gaze pitch given in degrees + * @param toWorldFromSituationSpace - situationSpace-to-world transformation + * @param handPoint - hand point used for height estimation + * @returns the rotation in degrees to be applied on targeting direction around X axis + */ + computeXRotationInDegrees( + gazePitchInDegrees: number, + toWorldFromSituationSpace: mat4, + handPoint: vec3 + ): number + + /** + * Computes an extra rotation around the X axis of Situation space + * based on the height of the hand point and the gaze pitch to make use of the ray in IR FoV range + * @param gazePitchInRadians - gaze pitch given in radians + * @param toWorldFromSituationSpace - situationSpace-to-world transformation + * @param handPoint - hand point used for height estimation + * @returns the rotation in radians to be applied on targeting direction around X axis + */ + computeXRotationInRadians( + gazePitchInRadians: number, + toWorldFromSituationSpace: mat4, + handPoint: vec3 + ): number +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/IrInteractionTransition.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/IrInteractionTransition.ts.meta new file mode 100644 index 00000000..bf4eb670 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/IrInteractionTransition.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 6b3c73a6-c97c-4170-a168-e51202c45556 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 6b3c73a6-c97c-4170-a168-e51202c45556 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 99e2c8dc-cff6-499c-840d-59eafb909240 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/PinchJumpSuppressor.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/PinchJumpSuppressor.ts new file mode 100644 index 00000000..b2b8e2ee --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/PinchJumpSuppressor.ts @@ -0,0 +1,720 @@ +import {BaseHand} from "../../../Providers/HandInputData/BaseHand" +import {Keypoint} from "../../../Providers/HandInputData/Keypoint" +import {inverseLerp} from "../../../Utils/mathUtils" +import NativeLogger from "../../../Utils/NativeLogger" +import {LowPassFilterVec3_v2} from "../../../Utils/OneEuroFilter" +import AxisAngle from "./AxisAngle" +import {WindowMode} from "./TimeDataContainer" +import {TimedVec2Container} from "./TimedVec2Container" +import {TimedScalarContainer} from "./TimeScalarContainer" + +const TAG = "PinchJumpSuppressor" + +/** + * Options for spaces where knuckles are + * transformed from world to be smoothed. + */ +export type KnuckleSmoothingSpace = "DeviceCenter" | "TrackingCamera" + +type PinchJumpSuppressorConfig = { + /** + * The space where knuckles are transformed from world + * to be smoothed. + * Two options are available: device center or tracking camera + * Default: device center + */ + knuckleSmoothingSpace: KnuckleSmoothingSpace + + /** + * Lower bound for normalized pinch intensity + * calculated based on the proximity of fingers + */ + minPinchDistanceCm: number + + /** + * Upper bound for normalized pinch intensity + * calculated based on the proximity of fingers + */ + maxPinchDistanceCm: number + + /** + * Maximum speed value for normalizing the pinch intensity + * calculated based on the relative velocity of fingers + */ + maxPinchSpeedCmPerSec: number + + /** + * Window size (in frame numbers) to aggregate pinch radius measurements + * for calculating relative finger velocity based pinch intensity + */ + pinchDistanceTimeSeriesWindowSizeFrame: number + + /** + * Window size (in seconds) to aggregate measurements + * for calculating average distance of knuckles relative to the smoothing space origin + */ + stableFingerRootsAverageDistanceWindowSizeSec: number + + /** + * Window size (in seconds) to aggregate measurements + * for calculating knuckles' velocity + */ + stableFingerKnuckleVelocityWindowSizeSec: number + + /** + * If true, the smoothed knuckles are transformed back to world to compute their velocity + * after smoothed in the space selected by "knuckleSmoothingSpace". + * If false, the velocity will be calculated in the smoothing space. + */ + transformStableKnucklesBackToWorld: boolean + + /** + * Lower bound for normalized knuckle movement intensity + * calculated based on the knuckles' velocity + */ + minKnuckleSpeedCmPerSec: number + + /** + * Upper bound for normalized knuckle movement intensity + * calculated based on the knuckles' velocity + */ + maxKnuckleSpeedCmPerSec: number + + /** + * Whether to use the combined position+pinch intensity for comparision + * when deciding to leave the active state + */ + useCombinedIntensityAtActiveStateLeave: boolean + + /** + * Threshold to compare intensity indicators to, when deciding to enter the active state + */ + activeStateEnterIntensityThreshold: number + + /** + * Threshold to compare intensity indicators to, when deciding to leave the active state + */ + activeStateLeaveIntensityThreshold: number + + /** + * The interval during which the ray's locus and direction + * is strongly filtered to suppress the jump. + * At the end of this interval, the so-called delta replaces the filter. + */ + suppressionBuildUpInterval: number + + /** + * If gradualDeltaReleaseEnabled is true, this will be the length of the interval + * during which the delta is gradually reduced to zero. + */ + suppressionTearDownInterval: number + + /** + * Activates that part of the logic which replaces the effect + * of a time-limited filter with a displacement (the delta) + * during the interval the pinch is held + */ + pinchJumpSuppressionDeltaEnabled: boolean + + /** + * If true, the delta is removed gradually at the end, not abruptly + */ + gradualDeltaReleaseEnabled: boolean + + /** + * Activates logging in the PinchJumpSuppressor + */ + verbosePinchJumpSuppressor: boolean +} + +const PinchJumpSuppressorConfigDefault: PinchJumpSuppressorConfig = { + knuckleSmoothingSpace: "DeviceCenter", + minPinchDistanceCm: 3.5, + maxPinchDistanceCm: 4, + maxPinchSpeedCmPerSec: 60, + pinchDistanceTimeSeriesWindowSizeFrame: 4, + stableFingerRootsAverageDistanceWindowSizeSec: 0.66, + stableFingerKnuckleVelocityWindowSizeSec: 0.3, + transformStableKnucklesBackToWorld: true, + minKnuckleSpeedCmPerSec: 10.0, + maxKnuckleSpeedCmPerSec: 20.0, + useCombinedIntensityAtActiveStateLeave: false, + activeStateEnterIntensityThreshold: 0.6, + activeStateLeaveIntensityThreshold: 0.2, + suppressionBuildUpInterval: 0.5, + suppressionTearDownInterval: 0.5, + pinchJumpSuppressionDeltaEnabled: true, + gradualDeltaReleaseEnabled: true, + verbosePinchJumpSuppressor: false, +} +/** + * Speed descriptor of a pinch (nearing or opening finger tips) + * Constains a sign indicator and an absolute vlaue + */ +export type PinchSpeedDescriptor = { + /** + * isNegative=true corresponds to a pinch + * that is building up (the fingers are nearing) + */ + isNegative: boolean + absoluteValue: number +} + +export enum DeltaMode { + IDLE, + MEASURE, + APPLY, +} + +export type RayData = { + direction: vec3 + locus: vec3 +} + +export enum SuppressionState { + NOT_ACTIVE, + ACTIVE, +} + +/** + * A major issue with far field targetging is that the ray + * jumps during pinching even if the hand remains still + * (aside from the movement of the fingers performing the pinch). + * + * This class contains the logic to suppress this undesirable jump effect. + * It aims to handle this problem without freezing the ray + * so when the pinch is held out for longer periods, + * the possibility to drag or move the targeted object is still retained. + */ +export class PinchJumpSuppressor { + // Native Logging + private log = new NativeLogger(TAG) + + protected stableFingerRootsAverageDistance = new TimedScalarContainer( + WindowMode.TIME, + PinchJumpSuppressorConfigDefault.stableFingerRootsAverageDistanceWindowSizeSec + ) + protected stableFingerRootsTimeSeries: TimedVec2Container[] = [] + + protected pinchDistance: number | null = null + protected pinchDistanceTimeSeries = new TimedScalarContainer( + WindowMode.FRAME, + PinchJumpSuppressorConfigDefault.pinchDistanceTimeSeriesWindowSizeFrame + ) + protected pinchSpeed: number | null = null + + protected deltaMode = DeltaMode.IDLE + protected deltaMultiplier = 1 + protected directionDelta = new AxisAngle(vec3.zero(), 0) + protected locusDelta = vec3.zero() + + protected directionLowpassFilter = new LowPassFilterVec3_v2(1.0) + protected locusLowpassFilter = new LowPassFilterVec3_v2(1.0) + + private lastActivationTimestampInSecond: number | null = null + private lastDeactivationTimestampInSecond: number | null = null + private suppressionState = SuppressionState.NOT_ACTIVE + + private deltaEnabled: boolean = + PinchJumpSuppressorConfigDefault.pinchJumpSuppressionDeltaEnabled + private gradualDeltaReleaseEnabled: boolean = + PinchJumpSuppressorConfigDefault.gradualDeltaReleaseEnabled + private verboseMode: boolean = + PinchJumpSuppressorConfigDefault.verbosePinchJumpSuppressor + + private minKnuckleSpeedCmPerSec: number = + PinchJumpSuppressorConfigDefault.minKnuckleSpeedCmPerSec + private maxKnuckleSpeedCmPerSec: number = + PinchJumpSuppressorConfigDefault.maxKnuckleSpeedCmPerSec + + private minPinchDistanceCm: number = + PinchJumpSuppressorConfigDefault.minPinchDistanceCm + private maxPinchDistanceCm: number = + PinchJumpSuppressorConfigDefault.maxPinchDistanceCm + + private maxPinchSpeedCmPerSec: number = + PinchJumpSuppressorConfigDefault.maxPinchSpeedCmPerSec + + private useCombinedIntensityAtActiveStateLeave: boolean = + PinchJumpSuppressorConfigDefault.useCombinedIntensityAtActiveStateLeave + private activeStateEnterIntensity: number = + PinchJumpSuppressorConfigDefault.activeStateEnterIntensityThreshold + private activeStateLeaveIntensity: number = + PinchJumpSuppressorConfigDefault.activeStateLeaveIntensityThreshold + + private suppressionBuildUpInterval: number = + PinchJumpSuppressorConfigDefault.suppressionBuildUpInterval + private suppressionTearDownInterval: number = + PinchJumpSuppressorConfigDefault.suppressionTearDownInterval + + private _knuckleSmoothingSpace: KnuckleSmoothingSpace = + PinchJumpSuppressorConfigDefault.knuckleSmoothingSpace + + constructor(protected hand: BaseHand) { + for (let i = 0; i < this.stableKnuckleKeypoints.length; i++) { + const series = new TimedVec2Container( + WindowMode.TIME, + PinchJumpSuppressorConfigDefault.stableFingerKnuckleVelocityWindowSizeSec + ) + this.stableFingerRootsTimeSeries.push(series) + } + } + + /** + * @returns the name of the selected space + * where knuckles are transformed from world to be smoothed. + */ + get knuckleSmoothingSpace(): string { + return this._knuckleSmoothingSpace + } + + /** + * Determines the necessary suppression for the current frame + * @param knuckleSmoothingSpaceFromWorld - smoothingSpace-from-world transformation + */ + updateState(knuckleSmoothingSpaceFromWorld: mat4): void { + this.updatePinchDistance() + this.updateSuppressionState() + const stableKnuckleKeypoints = this.stableKnuckleKeypoints + const knucklesDistance = + this.computeKnucklesDistanceFromSmootingSpaceOrigin( + knuckleSmoothingSpaceFromWorld, + stableKnuckleKeypoints + ) + const maxKnuckleMoveIntensity = this.computeMaxKnuckleMoveIntensity( + knucklesDistance, + knuckleSmoothingSpaceFromWorld, + stableKnuckleKeypoints + ) + this.updateSuppressionParameters(maxKnuckleMoveIntensity) + } + + /** + * Applies suppression to the given ray by returning its modified value. + * @param direction - the direction of the ray to work on + * @param locus - the locus of the ray to work on + * @returns the components of the ray after applying suppression to them. + */ + applySuppression(direction: vec3, locus: vec3): RayData { + let modifiedDirection = this.applyDirectionLowpassFilter(direction) + modifiedDirection = this.applyDirectionDelta(modifiedDirection) + + let modifiedLocus = this.applyLocusLowpassFilter(locus) + modifiedLocus = this.applyLocusDelta(modifiedLocus) + + return { + direction: modifiedDirection, + locus: modifiedLocus, + } + } + + /** + * @returns the position of 4 knuckle landmarks if they are available + */ + private get stableKnuckleKeypoints(): (Keypoint | null)[] { + return [ + this.hand.indexKnuckle, + this.hand.middleKnuckle, + this.hand.ringKnuckle, + this.hand.pinkyKnuckle, + ] + } + + /** + * Calculates average distance of knuckles relative to the smoothing space origin. + * @param knuckleSmoothingSpaceFromWorld - smoothingSpace-from-world transformation + * @param stableKnuckleKeypoints - position of 4 knuckle landmarks, assumed to be stable while pinching + * @returns the calculated distance value + */ + private computeKnucklesDistanceFromSmootingSpaceOrigin( + knuckleSmoothingSpaceFromWorld: mat4, + stableKnuckleKeypoints: (Keypoint | null)[] + ): number | null { + let averageDistance = 0 + let length = 0 + for (const keypoint of stableKnuckleKeypoints) { + if (keypoint === null) { + continue + } + const position = knuckleSmoothingSpaceFromWorld.multiplyPoint( + keypoint.position + ) + averageDistance += position.z + length++ + } + + if (length > 0) { + averageDistance /= length + } + + this.stableFingerRootsAverageDistance.pushData(getTime(), averageDistance) + return this.stableFingerRootsAverageDistance.average() + } + + /** + * Calculates the movement intensity of each knuckles assumed to be stable while pinching + * based on their 2D velocity. Returns the maximum of these intensities. + * @param knucklesDistance - distance of knuckles relative to the smoothing space origin + * @param knuckleSmoothingSpaceFromWorld - smoothingSpace-from-world transformation + * @param stableKnuckleKeypoints - position of 4 knuckle landmarks, assumed to be stable while pinching + * @returns the calculated maximum movement intensity value + */ + private computeMaxKnuckleMoveIntensity( + knucklesDistance: number | null, + knuckleSmoothingSpaceFromWorld: mat4, + stableKnuckleKeypoints: (Keypoint | null)[] + ): number { + let maxKnuckleSpeed = null + if (knucklesDistance) { + for (let i = 0; i < this.stableFingerRootsTimeSeries.length; i++) { + const keyPoint = stableKnuckleKeypoints[i] + const pointInWorld = keyPoint ? keyPoint.position : vec3.zero() + + const pointInSmoothingSpace = + knuckleSmoothingSpaceFromWorld.multiplyPoint(pointInWorld) + const depth = pointInSmoothingSpace.z + const stablePointSmoothingSpace = + depth !== 0 + ? new vec3( + (pointInSmoothingSpace.x / depth) * knucklesDistance, + (pointInSmoothingSpace.y / depth) * knucklesDistance, + knucklesDistance + ) + : new vec3( + pointInSmoothingSpace.x, + pointInSmoothingSpace.y, + knucklesDistance + ) + + const usedStablePoint = + PinchJumpSuppressorConfigDefault.transformStableKnucklesBackToWorld + ? knuckleSmoothingSpaceFromWorld + .inverse() + .multiplyPoint(stablePointSmoothingSpace) + : stablePointSmoothingSpace + + this.stableFingerRootsTimeSeries[i].pushData( + getTime(), + new vec2(usedStablePoint.x, usedStablePoint.y) + ) + const knuckleSpeedCmPerSec = + this.stableFingerRootsTimeSeries[i].aggregateAbsoluteVelocity() + if ( + knuckleSpeedCmPerSec !== null && + (maxKnuckleSpeed === null || knuckleSpeedCmPerSec > maxKnuckleSpeed) + ) { + maxKnuckleSpeed = knuckleSpeedCmPerSec + } + } + } + + let maxKnuckleMoveIntensity = 1 + if (maxKnuckleSpeed !== null) { + maxKnuckleMoveIntensity = MathUtils.clamp( + inverseLerp( + this.minKnuckleSpeedCmPerSec, + this.maxKnuckleSpeedCmPerSec, + maxKnuckleSpeed + ), + 0, + 1 + ) + } + + if (this.verboseMode) { + this.log.d("MaxKnuckleSpeedCmPerSec: " + maxKnuckleSpeed?.toFixed(2)) + this.log.d( + "MaxKnuckleMoveIntensity: " + maxKnuckleMoveIntensity.toFixed(2) + ) + } + return maxKnuckleMoveIntensity + } + + /** + * Gets the intensity of the pinch based on the proximity of fingers + * @returns the normalized position intensity + */ + private getPositionIntensity(): number | null { + if (!this.pinchDistance) { + return null + } + + if (this.verboseMode) { + this.log.d("pinchDistance: " + this.pinchDistance.toFixed(2)) + } + + let normalizedRadius = inverseLerp( + this.minPinchDistanceCm, + this.maxPinchDistanceCm, + this.pinchDistance + ) + normalizedRadius = MathUtils.clamp(normalizedRadius, 0, 1) + return 1 - normalizedRadius + } + + /** + * Gets the intensity of the pinch based on the relative velocity of fingers + * @returns a speed descriptor containing the normalized absolute velocity and its sign + */ + private getPinchSpeedDescriptor(): PinchSpeedDescriptor | null { + if (!this.pinchSpeed) { + return null + } + + const normalizedSpeed = MathUtils.clamp( + Math.abs(this.pinchSpeed) / this.maxPinchSpeedCmPerSec, + 0, + 1 + ) + + if (this.verboseMode) { + this.log.d("pinchSpeed: " + this.pinchSpeed.toFixed(2)) + this.log.d("normalizedSpeed: " + normalizedSpeed.toFixed(2)) + } + + return { + isNegative: this.pinchSpeed < 0, + absoluteValue: normalizedSpeed, + } + } + + /** + * Updates pinch radius which indicates how close fingers are to a pinch + */ + private updatePinchDistance(): void { + if (this.hand.indexTip === null || this.hand.thumbTip === null) { + this.pinchDistance = null + this.pinchSpeed = null + this.pinchDistanceTimeSeries.clear() + return + } + const newPinchDistance = this.hand.indexTip.position.distance( + this.hand.thumbTip.position + ) + + this.pinchDistanceTimeSeries.pushData(getTime(), newPinchDistance) + + if (this.verboseMode) { + this.log.d("newPinchDistance: " + newPinchDistance.toFixed(3)) + const deltaTime = getDeltaTime() + this.log.d("deltaTime: " + deltaTime.toFixed(3)) + } + + this.pinchSpeed = this.pinchDistanceTimeSeries.aggregateSignedVelocity() + this.pinchDistance = newPinchDistance + } + + /** + * Executes the low-pass filter on the given targeting locus by returning its modified value. + * @param locus - the locus to work on + * @returns the modified locus + */ + private applyLocusLowpassFilter(locus: vec3): vec3 { + const filteredLocus = this.locusLowpassFilter?.filter(locus) + if (this.deltaMode === DeltaMode.MEASURE) { + this.locusDelta = filteredLocus.sub(locus) + } + return filteredLocus + } + + /** + * AExecutes the low-pass filter on the given targeting direction by returning its modified value. + * @param direction - the direction to work on + * @returns the modified direction + */ + private applyDirectionLowpassFilter(direction: vec3): vec3 { + const filteredDirection = this.directionLowpassFilter.filter(direction) + if (this.deltaMode === DeltaMode.MEASURE) { + this.directionDelta = AxisAngle.getRotationBetween( + direction, + filteredDirection + ) + + if (this.verboseMode) { + this.log.d( + "directionDelta: " + + this.directionDelta.angle.toFixed(3) + + ", " + + this.directionDelta.axis.toString() + ) + } + } + return filteredDirection + } + + /** + * Adds the stored delta (partially or fully) to the given targeting locus by returning its modified value. + * @param locus - the locus to work on + * @returns the modified locus + */ + private applyLocusDelta(locus: vec3): vec3 { + return this.deltaMode === DeltaMode.APPLY + ? locus.add(this.locusDelta.uniformScale(this.deltaMultiplier)) + : locus + } + + /** + * Adds the stored delta (partially or fully) to the given targeting locus by returning its modified value. + * @param direction - the direction to work on + * @returns the modified direction + */ + private applyDirectionDelta(direction: vec3): vec3 { + return this.deltaMode === DeltaMode.APPLY + ? AxisAngle.applyRotation( + this.directionDelta.multipliedBy(this.deltaMultiplier), + direction + ) + : direction + } + + /** + * Determines the suppression state (active or not active) for the current frame. + */ + private updateSuppressionState(): void { + const previousState = this.suppressionState + + const pinchPositionIntensity = this.getPositionIntensity() + const pinchSpeedDescriptor = this.getPinchSpeedDescriptor() + + if (pinchPositionIntensity === null || pinchSpeedDescriptor === null) { + this.suppressionState = SuppressionState.NOT_ACTIVE + return + } + + if (this.verboseMode && pinchSpeedDescriptor) { + this.log.d("pinchPositionIntensity: " + pinchPositionIntensity.toFixed(2)) + this.log.d( + "pinchSpeedDescriptor: " + + (pinchSpeedDescriptor.isNegative ? "(-)" : "(+)") + + pinchSpeedDescriptor.absoluteValue.toFixed(2) + ) + } + + const combinedPinchIntensity = MathUtils.clamp( + pinchPositionIntensity + pinchSpeedDescriptor.absoluteValue, + 0, + 1 + ) + + if (this.verboseMode) { + this.log.d("combinedPinchIntensity: " + combinedPinchIntensity.toFixed(2)) + } + + let willBeActive + if (previousState === SuppressionState.NOT_ACTIVE) { + willBeActive = + combinedPinchIntensity >= this.activeStateEnterIntensity && + pinchSpeedDescriptor.isNegative + } else { + willBeActive = + (this.useCombinedIntensityAtActiveStateLeave + ? combinedPinchIntensity + : pinchPositionIntensity) >= this.activeStateLeaveIntensity || + pinchSpeedDescriptor.isNegative + } + + this.suppressionState = willBeActive + ? SuppressionState.ACTIVE + : SuppressionState.NOT_ACTIVE + + if (this.verboseMode) { + this.log.d("suppressionState: " + this.suppressionState) + } + + if (this.suppressionState === SuppressionState.ACTIVE) { + if (previousState === SuppressionState.NOT_ACTIVE) { + this.lastActivationTimestampInSecond = getTime() + this.lastDeactivationTimestampInSecond = null + + if (this.verboseMode) { + this.log.d("lastActivationTimestampInSecond was SET") + } + } + } else { + if (previousState === SuppressionState.ACTIVE) { + this.lastDeactivationTimestampInSecond = getTime() + } + this.lastActivationTimestampInSecond = null + + if (this.verboseMode) { + this.log.d("lastActivationTimestampInSecond was RESET") + } + } + + if (this.verboseMode) { + this.log.d( + "lastActivationTimestampInSecond: " + + this.lastActivationTimestampInSecond?.toFixed(2) + ) + this.log.d( + "lastDeactivationTimestampInSecond: " + + this.lastDeactivationTimestampInSecond?.toFixed(2) + ) + } + } + + /** + * Updates the suppression parameters (lowpass filter alpha; delta logic mode and multiplier) for the current frame + * based on the suppression state and the calculated knuckle movement intensity. + * @param knuckleMoveIntensity - the calculated knuckle movement intensity on the current frame + */ + private updateSuppressionParameters(knuckleMoveIntensity: number): void { + let alpha = 1 + if (this.suppressionState === SuppressionState.ACTIVE) { + const timeSinceLastActivation = + getTime() - (this.lastActivationTimestampInSecond ?? getTime()) + const suppressionBuildUpIntervalHasElapsed = + timeSinceLastActivation >= this.suppressionBuildUpInterval + + if (this.deltaEnabled) { + this.deltaMode = suppressionBuildUpIntervalHasElapsed + ? DeltaMode.APPLY + : DeltaMode.MEASURE + this.deltaMultiplier = 1 + } + + const alphaBase = suppressionBuildUpIntervalHasElapsed + ? 1 + : knuckleMoveIntensity + alpha = Math.min(Math.pow(alphaBase, 4), 1) + + if (this.verboseMode) { + this.log.d( + "timeSinceLastActivation: " + timeSinceLastActivation.toFixed(2) + ) + this.log.d( + "suppressionBuildUpIntervalHasElapsed: " + + suppressionBuildUpIntervalHasElapsed + ) + this.log.d("alphaBase: " + alphaBase.toFixed(2)) + } + } else if ( + this.deltaEnabled && + this.lastDeactivationTimestampInSecond !== null + ) { + const timeSinceLastDeactivation = + getTime() - this.lastDeactivationTimestampInSecond + + if ( + this.gradualDeltaReleaseEnabled && + timeSinceLastDeactivation < this.suppressionTearDownInterval + ) { + const interpolationFactor = + timeSinceLastDeactivation / this.suppressionTearDownInterval + + this.deltaMode = DeltaMode.APPLY + this.deltaMultiplier = 1 - interpolationFactor + } else { + this.deltaMode = DeltaMode.IDLE + this.deltaMultiplier = 1 + } + } + + if (this.verboseMode) { + this.log.d("alpha: " + alpha.toFixed(2)) + } + + this.directionLowpassFilter.setAlpha(alpha) + this.locusLowpassFilter.setAlpha(alpha) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/PinchJumpSuppressor.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/PinchJumpSuppressor.ts.meta new file mode 100644 index 00000000..293cd342 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/PinchJumpSuppressor.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! f24b961f-6187-4354-8e51-58a1b481430d + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! f24b961f-6187-4354-8e51-58a1b481430d + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! a3f629c0-c396-4074-b904-5f25ebb3dee6 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorHead.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorHead.ts new file mode 100644 index 00000000..617e9df0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorHead.ts @@ -0,0 +1,658 @@ +import {BaseHand} from "../../../Providers/HandInputData/BaseHand" +import {HandType} from "../../../Providers/HandInputData/HandType" +import {interpolateVec3} from "../../../Utils/mathUtils" +import {validate} from "../../../Utils/validate" +import {RaycastInfo} from "../RayProvider" +import ContinuousIrInteractionTransition from "./ContinousIrInteractionTransition" +import {IrInteractionTransition} from "./IrInteractionTransition" +import {PinchJumpSuppressor} from "./PinchJumpSuppressor" +import RaycastBase, {RayAlgorithmData} from "./RaycastBase" +import RgbIrTransitionJumpSuppressor from "./RgbIrTransitionJumpSuppressor" +import SwitchIrInteractionTransition from "./SwitchIrInteractionTransition" + +const TAG = "RaycastAnchorHead" + +const farDirectionStartPointEnum = Object.freeze({ + CERVICAL_LINK: "CervicalLink", + EPAULET: "Epaulet", +}) + +const highLowTargetingInputEnum = Object.freeze({ + HAND_PITCH: "HandPitch", + GAZE_PITCH: "GazePitch", +}) + +const situationSpaceUpEnum = Object.freeze({ + WORLD_UP: "WorldUp", + DEVICE_UP: "DeviceUp", +}) + +const situationSpaceForwardEnum = Object.freeze({ + WORLD_FORWARD: "WorldForward", + DEVICE_FORWARD: "DeviceForward", +}) + +//Linear Transition Mode if true, Switch Transition Mode if false +export type IrInteractionTransitionMode = "Continuous" | "Switch" + +export type RaycastAnchorHeadConfig = { + /** + * Enable/Disable IR interaction rotation on targeting direction + */ + allowIrInteractionRotation: boolean + + /** + * Switches between strategies for Ir interaction transition + * Options: + * - Continuous: Directly controlled continuous IR Transition Mode + * - Switch: Switch-like IR Transition Mode + * Default: Continuous + */ + irInteractionTransitionMode: IrInteractionTransitionMode + + /** + * Amplification value for the wrist based direction component + */ + wristAmplificationForAnchorHead: number + + /** + * Selects the start point for the far direction component + * This can be one of the following: + * - CervicalLink + * - Epaulet + */ + farDirectionStartPoint: string + + /** + * Offset of the Cervical Link point in device space + * relative the device center + */ + cervicalLinkOffsetInDeviceSpace: vec3 + + /** + * Offset of the epaulet point in situation space (composed by using the selected up and forward vectors) + * relative to the Cervical Link point + */ + epauletOffsetInSituationSpace: vec3 + + /** + * Selects the up vector of the space in which the epaulet is defined relative to the Cervical Link. + * This can be either the up vector of the world coordinate system ("WorldUp") + * or the up vector of the device ("DeviceUp") + */ + situationSpaceUp: string + + /** + * Selects the forward vector of the space in which the epaulet is defined relative to the Cervical Link. + * This can be either the forward vector of the world coordinate system ("WorldForward") + * or the forward vector of the device ("DeviceForward") + */ + situationSpaceForward: string + + /** + * The used start point for the far direction component + * can be adjusted between the computed Cervical Link (at 0) and the epaulet points (at 1) + */ + epauletWeight: number + + /** + * additional rotation of ray around X axis, in degrees + */ + extraXRotationDeg: number + + /** + * additional rotation of ray around Y axis, in degrees (for right hand) + */ + extraYRotationDeg: number + + /** + * Whether to ease targeting to high and low targets, or not + */ + facilitateHighLowTargeting: boolean + + /** + * The source of input to control targeting height. Options: + * - HandPitch + * - GazePitch + */ + highLowTargetingInput: string + + /** + * Cervical Link--Hip transition threshold-pair's high end (for hand-pitch, in degrees) + */ + handPitchUpperThresholdPairHighDeg: number + + /** + * Cervical Link--Hip transition threshold-pair's low end (for hand-pitch, in degrees) + */ + handPitchUpperThresholdPairLowDeg: number + + /** + * Halo--Cervical Link transition threshold-pair's high end (for hand-pitch, in degrees) + */ + handPitchLowerThresholdPairHighDeg: number + + /** + * Halo-Cervical Link transition threshold-pair's low end (for hand-pitch, in degrees) + */ + handPitchLowerThresholdPairLowDeg: number + + /** + * Cervical Link--Hip transition threshold-pair's high end (for gaze-pitch, in degrees) + */ + gazePitchUpperThresholdPairHighDeg: number + + /** + * Cervical Link--Hip transition threshold-pair's low end (for gaze-pitch, in degrees) + */ + gazePitchUpperThresholdPairLowDeg: number + + /** + * Halo--Cervical Link transition threshold-pair's high end (for gaze-pitch, in degrees) + */ + gazePitchLowerThresholdPairHighDeg: number + + /** + * Halo-Cervical Link transition threshold-pair's low end (for gaze-pitch, in degrees) + */ + gazePitchLowerThresholdPairLowDeg: number + + /** + * Halo level's Y offset in situation space, from Cervical Link + */ + haloLevelYOffsetFromCervicalLinkInSituationSpace: number + + /** + * Hip level's Y offset in situation space, from Cervical Link + */ + hipLevelYOffsetFromCervicalLinkInSituationSpace: number + + /** + * Activates suppression logic to overcome pinch jumps + */ + pinchJumpSuppressionEnabled: boolean + + /** + * Activates suppression logic to overcome RGB-IR transition jumps + */ + rgbIrTransitionJumpSuppressorEnabled: boolean +} +const RaycastAnchorHeadConfigDefault: RaycastAnchorHeadConfig = { + allowIrInteractionRotation: true, + irInteractionTransitionMode: "Continuous", //Continuous, Switch + wristAmplificationForAnchorHead: 6.5, + farDirectionStartPoint: "CervicalLink", //CervicalLink, Epaulet + cervicalLinkOffsetInDeviceSpace: new vec3(0, -7.5, 8), + epauletOffsetInSituationSpace: new vec3(17.9, 0, 0), + situationSpaceUp: "WorldUp", //WorldUp, DeviceUp + situationSpaceForward: "DeviceForward", //WorldForward, DeviceForward + epauletWeight: 1, + extraXRotationDeg: 2, + extraYRotationDeg: 3, + facilitateHighLowTargeting: true, + highLowTargetingInput: "GazePitch", //HandPitch, GazePitch + handPitchUpperThresholdPairHighDeg: 90, + handPitchUpperThresholdPairLowDeg: 50, + handPitchLowerThresholdPairHighDeg: 50, + handPitchLowerThresholdPairLowDeg: 10, + gazePitchUpperThresholdPairHighDeg: 90, + gazePitchUpperThresholdPairLowDeg: 15, + gazePitchLowerThresholdPairHighDeg: -20, + gazePitchLowerThresholdPairLowDeg: -90, + haloLevelYOffsetFromCervicalLinkInSituationSpace: 64.3, + hipLevelYOffsetFromCervicalLinkInSituationSpace: -64.3, + pinchJumpSuppressionEnabled: true, + rgbIrTransitionJumpSuppressorEnabled: true, +} + +/** + * RaycastAnchorHead uses the Cervical Link location in device space to stabilize the ray, making it more tolerant to head movements. + */ +export default class RaycastAnchorHead extends RaycastBase { + private config: RaycastAnchorHeadConfig = RaycastAnchorHeadConfigDefault + + private pinchJumpSuppressor: PinchJumpSuppressor | null + private rgbIrTransitionJumpSuppressor: RgbIrTransitionJumpSuppressor | null + + private extraXRotationRad = MathUtils.DegToRad * this.config.extraXRotationDeg + private extraYRotationRad = MathUtils.DegToRad * this.config.extraYRotationDeg + + private irInteractionTransitionStrategy = + this.config.allowIrInteractionRotation === true + ? this.createIrInteractionTransitionStrategy() + : undefined + + constructor(hand: BaseHand) { + super(hand) + this.pinchJumpSuppressor = this.config.pinchJumpSuppressionEnabled + ? new PinchJumpSuppressor(hand) + : null + + this.rgbIrTransitionJumpSuppressor = this.config + .rgbIrTransitionJumpSuppressorEnabled + ? new RgbIrTransitionJumpSuppressor(hand) + : null + } + + private createIrInteractionTransitionStrategy(): IrInteractionTransition { + const irInteractionTransitionMode = this.config.irInteractionTransitionMode + + switch (irInteractionTransitionMode) { + case "Continuous": { + return new ContinuousIrInteractionTransition() + } + case "Switch": { + return new SwitchIrInteractionTransition() + } + default: { + throw new Error( + `${TAG}: No matching IrInteractionTransitionStrategy found, could not create strategy` + ) + } + } + } + + /** + * Computes the transform between world and Situation space + */ + private createTransformToWorldFromSituationBasedSpace( + up: vec3, + forward: vec3, + cervicalLinkPos: vec3 + ): mat4 { + up = up.normalize() + vec3.orthonormalize(up, forward) + const right = up.cross(forward).normalize() + + const rotation = mat4.makeBasis(right, up, forward) + const translation = mat4.fromTranslation(cervicalLinkPos) + return translation.mult(rotation) + } + + /** + * Computes the Cervical Link position in world + */ + private computeCervicalLink( + deviceCenterToWorld: mat4, + deviceCenterInDeviceSpace: vec3 + ): vec3 { + const cervicalLinkInDeviceSpace = deviceCenterInDeviceSpace.add( + this.config.cervicalLinkOffsetInDeviceSpace + ) + return deviceCenterToWorld.multiplyPoint(cervicalLinkInDeviceSpace) + } + + /** + * Computes 'situation space' -> world space transformation. + * 'Situation space' can be defined by using + * the up vector of the world or the device and + * the forward vector of the world or the device. + * The center of this space is the user's Cervical Link. + * The returned epaulet point is transformed to world. + * + * Recommended using: world's up and device's forward + * This assures that the user's body rotates with the device around the Y axis + * but won't be affected by head (device) rotation around its X and Z axes + */ + private computeTrasformToWorldFromSituationBasedSpace( + deviceCenterToWorld: mat4, + cervicalLinkInWorld: vec3 + ) { + let up = vec3.zero() + if (this.config.situationSpaceUp === situationSpaceUpEnum.WORLD_UP) { + up = vec3.up() + } else { + const deviceUpwardInWorld = deviceCenterToWorld.multiplyDirection( + vec3.up() + ) + up = deviceUpwardInWorld + } + + let forward = vec3.zero() + if ( + this.config.situationSpaceForward === + situationSpaceForwardEnum.WORLD_FORWARD + ) { + forward = vec3.forward() + } else { + const deviceForwardInWorld = deviceCenterToWorld.multiplyDirection( + vec3.forward() + ) + forward = deviceForwardInWorld + } + + const toWorldFromSituationSpace = + this.createTransformToWorldFromSituationBasedSpace( + up, + forward, + cervicalLinkInWorld + ) + + return toWorldFromSituationSpace + } + + /** + * Computes the Epaulet position (point above shoulder) in world + */ + private computeEpaulet(toWorldFromSituationSpace: mat4): vec3 { + const cervicalLinkInSituation = vec3.zero() + const epauletOffsetInSituationSpace = new vec3( + this.hand.handType === "left" + ? -this.config.epauletOffsetInSituationSpace.x + : this.config.epauletOffsetInSituationSpace.x, + this.config.epauletOffsetInSituationSpace.y, + this.config.epauletOffsetInSituationSpace.z + ) + const epauletInSituation = cervicalLinkInSituation.add( + epauletOffsetInSituationSpace + ) + return toWorldFromSituationSpace.multiplyPoint(epauletInSituation) + } + + private applyXRotation( + vector: vec3, + angleRad: number, + toWorldFromSituationSpace: mat4 + ): vec3 { + const vector4d = new vec4(vector.x, vector.y, vector.z, 1) + + const situSpaceRight = toWorldFromSituationSpace.multiplyDirection( + vec3.right() + ) + + const rotQuat = quat.angleAxis(angleRad, situSpaceRight) + const rotMat = mat4.compose(vec3.zero(), rotQuat, vec3.one()) + const vectorRotated4d = rotMat.multiplyVector(vector4d) + return new vec3(vectorRotated4d.x, vectorRotated4d.y, vectorRotated4d.z) + } + + private applyYRotation( + vector: vec3, + angleRad: number, + handType: HandType + ): vec3 { + const vector4d = new vec4(vector.x, vector.y, vector.z, 1) + + const sign = handType === "left" ? -1 : 1 + + const rotQuat = quat.angleAxis(sign * angleRad, vec3.up()) + const rotMat = mat4.compose(vec3.zero(), rotQuat, vec3.one()) + const vectorRotated4d = rotMat.multiplyVector(vector4d) + return new vec3(vectorRotated4d.x, vectorRotated4d.y, vectorRotated4d.z) + } + + private determineHandPitchInRadians( + wrist: vec3 | null, + index: vec3 | null, + middle: vec3 | null + ): number { + if (!wrist || !index || !middle) { + return 0 + } + const wristToIndex = index.sub(wrist) + const wristToMiddle = middle.sub(wrist) + const forward = wristToIndex.add(wristToMiddle) + const forwardHoriz = Math.sqrt( + forward.x * forward.x + forward.z * forward.z + ) + return Math.atan2(forward.y, forwardHoriz) + } + + private determineGazePitchInRadians( + rayAlgorithmData: RayAlgorithmData + ): number { + const forward = rayAlgorithmData.deviceCenterToWorld.multiplyDirection( + vec3.back() + ) + const forwardHoriz = Math.sqrt( + forward.x * forward.x + forward.z * forward.z + ) + return Math.atan2(forward.y, forwardHoriz) + } + + private determineLowHighRatio( + pitchRad: number, + lowThresholdRad: number, + highThresholdRad: number + ): number { + return MathUtils.clamp( + MathUtils.remap(pitchRad, lowThresholdRad, highThresholdRad, 0, 1), + 0, + 1 + ) + } + + private interpolateFarDirectionStartPoint( + handPitch: number, + lowThreshold: number, + highThreshold: number, + pointA: vec3, + pointB: vec3 + ): vec3 { + const lowHighRatio = this.determineLowHighRatio( + handPitch, + lowThreshold, + highThreshold + ) + return interpolateVec3(pointA, pointB, lowHighRatio) + } + + private applyTargetingHeightControl( + farDirectionStartPoint: vec3, + rayAlgorithmData: RayAlgorithmData, + toWorldFromSituationSpace: mat4 + ): vec3 { + const hipOffsetFromCervicalLinkInSituationSpace = new vec3( + 0, + this.config.hipLevelYOffsetFromCervicalLinkInSituationSpace, + 0 + ) + const haloOffsetFromCervicalLinkInSituationSpace = new vec3( + 0, + this.config.haloLevelYOffsetFromCervicalLinkInSituationSpace, + 0 + ) + + const hipOffsetFromCervicalLinkInWorld = + toWorldFromSituationSpace.multiplyDirection( + hipOffsetFromCervicalLinkInSituationSpace + ) + const haloOffsetFromCervicalLinkInWorld = + toWorldFromSituationSpace.multiplyDirection( + haloOffsetFromCervicalLinkInSituationSpace + ) + + const farDirectionStartPointHipLevel = farDirectionStartPoint.add( + hipOffsetFromCervicalLinkInWorld + ) + const farDirectionStartPointHaloLevel = farDirectionStartPoint.add( + haloOffsetFromCervicalLinkInWorld + ) + + let pitchRad = 0 + let upperThresholdPairHighRad = 0 + let upperThresholdPairLowRad = 0 + let lowerThresholdPairHighRad = 0 + let lowerThresholdPairLowRad = 0 + if ( + this.config.highLowTargetingInput === highLowTargetingInputEnum.HAND_PITCH + ) { + pitchRad = this.determineHandPitchInRadians( + rayAlgorithmData.wrist, + rayAlgorithmData.index, + rayAlgorithmData.mid + ) + upperThresholdPairHighRad = + MathUtils.RadToDeg * this.config.handPitchUpperThresholdPairHighDeg + upperThresholdPairLowRad = + MathUtils.RadToDeg * this.config.handPitchUpperThresholdPairLowDeg + + lowerThresholdPairHighRad = + MathUtils.RadToDeg * this.config.handPitchLowerThresholdPairHighDeg + + lowerThresholdPairLowRad = + MathUtils.RadToDeg * this.config.handPitchLowerThresholdPairLowDeg + } else if ( + this.config.highLowTargetingInput === highLowTargetingInputEnum.GAZE_PITCH + ) { + pitchRad = this.determineGazePitchInRadians(rayAlgorithmData) + upperThresholdPairHighRad = + MathUtils.RadToDeg * this.config.gazePitchUpperThresholdPairHighDeg + + upperThresholdPairLowRad = + MathUtils.RadToDeg * this.config.gazePitchUpperThresholdPairLowDeg + + lowerThresholdPairHighRad = + MathUtils.RadToDeg * this.config.gazePitchLowerThresholdPairHighDeg + + lowerThresholdPairLowRad = + MathUtils.RadToDeg * this.config.gazePitchLowerThresholdPairLowDeg + } + + const midThresholdRad = + (upperThresholdPairLowRad + lowerThresholdPairHighRad) / 2 + + let farDirectionStartPointUpdated = vec3.zero() + if (pitchRad > midThresholdRad) { + farDirectionStartPointUpdated = this.interpolateFarDirectionStartPoint( + pitchRad, + upperThresholdPairLowRad, + upperThresholdPairHighRad, + farDirectionStartPoint, + farDirectionStartPointHipLevel + ) + } else { + farDirectionStartPointUpdated = this.interpolateFarDirectionStartPoint( + pitchRad, + lowerThresholdPairLowRad, + lowerThresholdPairHighRad, + farDirectionStartPointHaloLevel, + farDirectionStartPoint + ) + } + + return farDirectionStartPointUpdated + } + + override reset(): void { + if (this.rgbIrTransitionJumpSuppressor) { + this.rgbIrTransitionJumpSuppressor.reset() + } + } + + getRay(): RaycastInfo | null { + const data = this.getRayAlgorithmData() + + if (!data.thumb || !data.index || !data.mid || !data.wrist) { + return null + } + + validate(this.directionOneEuroFilter) + validate(this.locusOneEuroFilter) + + let locus = this.calculateInteractionLocus(data.thumb, data.index) + const castAnchor = this.calculateCastAnchor(data.thumb, data.mid) + + const deviceCenterInDeviceSpace = vec3.zero() + + const cervicalLinkInWorld = this.computeCervicalLink( + data.deviceCenterToWorld, + deviceCenterInDeviceSpace + ) + + const toWorldFromSituationSpace = + this.computeTrasformToWorldFromSituationBasedSpace( + data.deviceCenterToWorld, + cervicalLinkInWorld + ) + + let farDirectionStartPoint = vec3.zero() + if ( + this.config.farDirectionStartPoint === + farDirectionStartPointEnum.CERVICAL_LINK + ) { + farDirectionStartPoint = cervicalLinkInWorld + } else if ( + this.config.farDirectionStartPoint === farDirectionStartPointEnum.EPAULET + ) { + const epauletInWorld = this.computeEpaulet(toWorldFromSituationSpace) + farDirectionStartPoint = epauletInWorld + .uniformScale(this.config.epauletWeight) + .add( + cervicalLinkInWorld.uniformScale( + Math.max(1 - this.config.epauletWeight, 0) + ) + ) + } + + if (this.config.facilitateHighLowTargeting) { + farDirectionStartPoint = this.applyTargetingHeightControl( + farDirectionStartPoint, + data, + toWorldFromSituationSpace + ) + } + + const farTargetingRay = castAnchor.sub(farDirectionStartPoint) + const wristTargetingRay = castAnchor.sub(data.wrist) + + const closeTargetingRay = wristTargetingRay + + let targetingRay = farTargetingRay.add( + closeTargetingRay.uniformScale( + this.config.wristAmplificationForAnchorHead + ) + ) + + if (this.rgbIrTransitionJumpSuppressor) { + this.rgbIrTransitionJumpSuppressor.update(targetingRay, locus) + targetingRay = + this.rgbIrTransitionJumpSuppressor.applyDirectionDelta(targetingRay) + locus = this.rgbIrTransitionJumpSuppressor.applyLocusDelta(locus) + } + + let smoothTargetingRay = this.directionOneEuroFilter.filter( + targetingRay, + getTime() + ) + + let filteredLocus = this.locusOneEuroFilter.filter(locus, getTime()) + + if (this.pinchJumpSuppressor) { + this.pinchJumpSuppressor.updateState( + this.pinchJumpSuppressor.knuckleSmoothingSpace === "DeviceCenter" + ? data.deviceCenterToWorld.inverse() + : data.cameraToWorld.inverse() + ) + const rayData = this.pinchJumpSuppressor.applySuppression( + smoothTargetingRay, + filteredLocus + ) + smoothTargetingRay = rayData.direction + filteredLocus = rayData.locus + } + + const irInteractionXRotationInRadians = + this.irInteractionTransitionStrategy?.computeXRotationInRadians( + this.determineGazePitchInRadians(data), + toWorldFromSituationSpace, + filteredLocus + ) ?? 0 + + let normalizedDirection = smoothTargetingRay.normalize() + normalizedDirection = this.applyYRotation( + this.applyXRotation( + normalizedDirection, + this.extraXRotationRad + irInteractionXRotationInRadians, + toWorldFromSituationSpace + ).normalize(), + this.extraYRotationRad, + this.hand.handType + ).normalize() + + return { + locus: filteredLocus, + direction: normalizedDirection, + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorHead.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorHead.ts.meta new file mode 100644 index 00000000..f12b2d3b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorHead.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 8b93a379-a3a3-490c-b2e0-c348ed6fc3da + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 8b93a379-a3a3-490c-b2e0-c348ed6fc3da + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 04c99466-51f7-4968-b808-f994c127086d + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorVariableShoulder.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorVariableShoulder.ts new file mode 100644 index 00000000..d9314d3b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorVariableShoulder.ts @@ -0,0 +1,130 @@ +import {inverseLerp, transformPoint} from "../../../Utils/mathUtils" +import {RaycastInfo} from "../RayProvider" +import RaycastBase, {RayAlgorithmData} from "./RaycastBase" + +//location of the elbow joint, should be tuned eventually +const ELBOW_LOCATION = new vec3(10, -10, -5) +//elbow joint radius, larger values = more sensitive motion & increased unwanted movement +const ELBOW_RADIUS = 10 +//at 1 the joint is a half sphere, other vals create elliptical joints +const ELBOW_RADIUS_HORIZONTAL_FACTOR = 1 +//the distance the hand can travel across and move the elbow joint +const ELBOW_TRACKED_RADIUS = 30 +const ELBOW_RADIUS_HORIZONTAL = ELBOW_RADIUS * ELBOW_RADIUS_HORIZONTAL_FACTOR +const ELBOW_TRACKED_RADIUS_HORIZONTAL = + ELBOW_TRACKED_RADIUS * ELBOW_RADIUS_HORIZONTAL_FACTOR +//how much more the wrist affects the targeting ray vs shoulder position +const WRIST_AMPLIFICATION = 2.5 +//how much the elbow joint is offset from the shoulder +const ELBOW_Z_OFFSET_SCALE = 0.5 + +const TAG = "RaycastAnchorVariableShoulder" +/** + * RayCastAnchorVariableShoulder + */ +export default class RaycastAnchorVariableShoulder extends RaycastBase { + /** + * Composes the vertical head transform given the camera's position + */ + private getVerticalHeadTransform(): mat4 { + const levelRotation: quat = quat.lookAt(this.camera.back(), vec3.up()) + return mat4.compose( + this.camera.getWorldPosition(), + levelRotation, + this.camera.getLocalScale() + ) + } + + private estimateShoulderPosition(handPosition: vec3): vec3 { + const vertHeadTransformInvHand = this.getVerticalHeadTransform() + .inverse() + .multiplyPoint(handPosition) + + const handElevationHeadset = vertHeadTransformInvHand.y + const handLateralHeadset = vertHeadTransformInvHand.x + + // Calculates an approximate elbow joint to determine shoulder location + const elevationIntervalElbow = MathUtils.clamp( + inverseLerp( + ELBOW_LOCATION.y + ELBOW_TRACKED_RADIUS, + ELBOW_LOCATION.y - ELBOW_TRACKED_RADIUS, + handElevationHeadset + ), + 0, + 1 + ) + + const lateralIntervalElbow = MathUtils.clamp( + inverseLerp( + ELBOW_LOCATION.x + ELBOW_TRACKED_RADIUS_HORIZONTAL, + ELBOW_LOCATION.x - ELBOW_TRACKED_RADIUS_HORIZONTAL, + handLateralHeadset + ), + 0, + 1 + ) + + const lerpInvY = Math.abs(1 - elevationIntervalElbow ** 2) + const lerpInvX = Math.abs(1 - lateralIntervalElbow ** 2) + + const variableElbowOffset = ELBOW_LOCATION.add( + new vec3( + Math.cos(lerpInvX * Math.PI * -1) * ELBOW_RADIUS_HORIZONTAL, + Math.cos(lerpInvY * Math.PI * -1) * ELBOW_RADIUS, + Math.sin(lerpInvX * Math.PI * -1) * ELBOW_RADIUS + + Math.sin(lerpInvY * Math.PI * -1) * ELBOW_Z_OFFSET_SCALE + ) + ) + return transformPoint(this.camera.getTransform(), variableElbowOffset) + } + + getRay(): RaycastInfo | null { + const data = this.getRayAlgorithmData() + + if (!this.isValid(data)) { + return null + } + + if ( + this.directionOneEuroFilter === null || + this.shoulderOneEuroFilter === null || + this.locusOneEuroFilter === null + ) { + return null + } + + const locus = this.calculateInteractionLocus(data.thumb!, data.index!) + const castAnchor = this.calculateCastAnchor(data.thumb!, data.mid!) + + const estimatedShoulder = this.estimateShoulderPosition(data.index!) + const shoulder = this.shoulderOneEuroFilter.filter( + estimatedShoulder, + getTime() + ) + + const shoulderTargetingRay = castAnchor.sub(shoulder) + const wristTargetingRay = castAnchor.sub(data.wrist!) + const targetingRay = shoulderTargetingRay.add( + wristTargetingRay.uniformScale(WRIST_AMPLIFICATION) + ) + + const smoothTargetingRay = this.directionOneEuroFilter.filter( + targetingRay, + getTime() + ) + + return { + locus: this.locusOneEuroFilter.filter(locus, getTime()), + direction: smoothTargetingRay.normalize(), + } + } + + isValid(data: RayAlgorithmData): boolean { + return ( + data.thumb !== null && + data.index !== null && + data.mid !== null && + data.wrist !== null + ) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorVariableShoulder.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorVariableShoulder.ts.meta new file mode 100644 index 00000000..70e32ff8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastAnchorVariableShoulder.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 610437c8-d307-4f47-ad42-87108a850597 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 610437c8-d307-4f47-ad42-87108a850597 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! d87d2ca9-0ba8-44dd-9dd4-e306e2e577de + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastBase.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastBase.ts new file mode 100644 index 00000000..a787b34b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastBase.ts @@ -0,0 +1,329 @@ +import WorldCameraFinderProvider from "../../../Providers/CameraProvider/WorldCameraFinderProvider" +import {BaseHand} from "../../../Providers/HandInputData/BaseHand" +import {HandInputData} from "../../../Providers/HandInputData/HandInputData" +import {Keypoint} from "../../../Providers/HandInputData/Keypoint" +import NativeLogger from "../../../Utils/NativeLogger" +import { + OneEuroFilter, + OneEuroFilterConfig, + OneEuroFilterVec3, +} from "../../../Utils/OneEuroFilter" +import {validate} from "../../../Utils/validate" +import {RaycastInfo} from "../RayProvider" + +const smoothedThumbScale: number = 0.4 +const smoothedMidScale: number = 0.6 + +const locusIndexKnuckleScale: number = 0.6 +const locusThumbKnuckleScale: number = 0.4 + +const defaultOneEuroFrequency: number = 60 +const defaultOneEuroDCutoff: number = 0.16 + +const knuckleSmoothingEnabled: boolean = false +const knuckleOneEuroMinCutoff: number = 1 +const knuckleOneEuroBeta: number = 0.0001 + +const wristSmoothingEnabled: boolean = false +const wristOneEuroMinCutoff: number = 3.5 +const wristOneEuroBeta: number = 0.0001 + +const directionSmoothingEnabled: boolean = true +const directionOneEuroMinCutoff: number = 0.5 +const directionOneEuroBeta: number = 0.2 + +const locusSmoothingEnabled: boolean = true +const locusOneEuroMinCutoff: number = 0.5 +const locusOneEuroBeta: number = 0.2 + +const shoulderSmoothingEnabled: boolean = true +const shoulderOneEuroMinCutoff: number = 0.1 +const shoulderOneEuroBeta: number = 0.0001 + +const zSmoothingEnabled: boolean = false +const zOneEuroDCutoff: number = 0.16 +const zOneEuroMinCutoff: number = 0.001 +const zOneEuroBeta: number = 0.2 + +const TAG = "RaycastBase" + +export const RIGHT_HAND = "right" +export const LEFT_HAND = "left" + +const DEFAULT_ONE_EURO_PARAMS = { + frequency: defaultOneEuroFrequency, + dcutoff: defaultOneEuroDCutoff, +} + +const KNUCKLE_ONE_EURO_FILTER_CONFIG: OneEuroFilterConfig = { + ...DEFAULT_ONE_EURO_PARAMS, + minCutoff: knuckleOneEuroMinCutoff, + beta: knuckleOneEuroBeta, +} + +const WRIST_ONE_EURO_FILTER_CONFIG: OneEuroFilterConfig = { + ...DEFAULT_ONE_EURO_PARAMS, + minCutoff: wristOneEuroMinCutoff, + beta: wristOneEuroBeta, +} + +const DIRECTION_ONE_EURO_FILTER_CONFIG: OneEuroFilterConfig = { + ...DEFAULT_ONE_EURO_PARAMS, + minCutoff: directionOneEuroMinCutoff, + beta: directionOneEuroBeta, +} + +const LOCUS_ONE_EURO_FILTER_CONFIG: OneEuroFilterConfig = { + ...DEFAULT_ONE_EURO_PARAMS, + minCutoff: locusOneEuroMinCutoff, + beta: locusOneEuroBeta, +} + +const SHOULDER_ONE_EURO_FILTER_CONFIG: OneEuroFilterConfig = { + ...DEFAULT_ONE_EURO_PARAMS, + minCutoff: shoulderOneEuroMinCutoff, + beta: shoulderOneEuroBeta, +} + +const Z_ONE_EURO_FILTER_CONFIG: OneEuroFilterConfig = { + frequency: DEFAULT_ONE_EURO_PARAMS.frequency, + dcutoff: zOneEuroDCutoff, + minCutoff: zOneEuroMinCutoff, + beta: zOneEuroBeta, +} + +const SMOOTHED_THUMB_SCALE = smoothedThumbScale +const SMOOTHED_MID_SCALE = smoothedMidScale + +const LOCUS_INDEX_KNUCKLE_SCALE = locusIndexKnuckleScale +const LOCUS_THUMB_KNUCKLE_SCALE = locusThumbKnuckleScale + +export type RayAlgorithmData = { + thumb: vec3 | null + index: vec3 | null + mid: vec3 | null + wrist: vec3 | null + deviceCenterToWorld: mat4 + cameraToWorld: mat4 +} + +/** + * Abstract base class for raycast calculation algorithms + * Includes smoothing + */ +export default abstract class RaycastBase { + // Native Logging + private log = new NativeLogger(TAG) + + protected camera: WorldCameraFinderProvider = + WorldCameraFinderProvider.getInstance() + + protected handProvider: HandInputData = HandInputData.getInstance() + + protected knuckleOneEuroFilter = knuckleSmoothingEnabled + ? new OneEuroFilterVec3(KNUCKLE_ONE_EURO_FILTER_CONFIG) + : null + protected wristOneEuroFilter = wristSmoothingEnabled + ? new OneEuroFilterVec3(WRIST_ONE_EURO_FILTER_CONFIG) + : null + + /** + * Direction and locus filters can be dynamically adjusted together with the same magnitude, if pinch stabilization smoothing is turned on. + */ + protected directionOneEuroFilter = directionSmoothingEnabled + ? new OneEuroFilterVec3(DIRECTION_ONE_EURO_FILTER_CONFIG) + : null + protected locusOneEuroFilter = locusSmoothingEnabled + ? new OneEuroFilterVec3(LOCUS_ONE_EURO_FILTER_CONFIG) + : null + + protected shoulderOneEuroFilter = shoulderSmoothingEnabled + ? new OneEuroFilterVec3(SHOULDER_ONE_EURO_FILTER_CONFIG) + : null + + protected handZOneEuroFilter = zSmoothingEnabled + ? new OneEuroFilter(Z_ONE_EURO_FILTER_CONFIG) + : null + + constructor(protected hand: BaseHand) { + this.hand.onHandLost.add(() => { + if (this.knuckleOneEuroFilter) this.knuckleOneEuroFilter.reset() + + if (this.wristOneEuroFilter) this.wristOneEuroFilter.reset() + + if (this.directionOneEuroFilter) this.directionOneEuroFilter.reset() + + if (this.locusOneEuroFilter) this.locusOneEuroFilter.reset() + + if (this.shoulderOneEuroFilter) this.shoulderOneEuroFilter.reset() + + if (this.handZOneEuroFilter) this.handZOneEuroFilter.reset() + }) + } + + /** + * Calculates anchor for the raycast, used for calculating both wrist and shoulder targeting + * Can toggle whether or not smoothing should be used for the raycast anchor in the Script UI. + */ + calculateCastAnchor(thumbKnuckle: vec3, middleKnuckle: vec3): vec3 { + let middleFingerThumbOffset: vec3 = middleKnuckle.sub(thumbKnuckle) + let rootMiddleFinger: vec3 = this.knuckleOneEuroFilter + ? thumbKnuckle.add( + this.knuckleOneEuroFilter.filter(middleFingerThumbOffset, getTime()) + ) + : thumbKnuckle.add(middleFingerThumbOffset) + return rootMiddleFinger + .uniformScale(SMOOTHED_MID_SCALE) + .add(thumbKnuckle.uniformScale(SMOOTHED_THUMB_SCALE)) + } + + private get stubbedKeypoints(): (Keypoint | null)[] { + return [ + this.hand.indexKnuckle, + this.hand.middleKnuckle, + this.hand.ringKnuckle, + this.hand.pinkyKnuckle, + this.hand.thumbBaseJoint, + this.hand.wrist, + ] + } + + /** + * Filters the palm landmark if pre-filtering is selected & returns its position in world space + * This is used to help mitigate the increased jitter for Matador wrist landmarks + */ + protected getWrist(): vec3 | null { + if (this.hand.wrist === null) return null + return ( + this.wristOneEuroFilter?.filter(this.hand.wrist.position, getTime()) ?? + null + ) + } + + /** + * Calculates the interaction locus, where the ray cursor base is placed. + */ + protected calculateInteractionLocus( + thumbKnuckle: vec3, + indexKnuckle: vec3 + ): vec3 { + return indexKnuckle + .uniformScale(LOCUS_INDEX_KNUCKLE_SCALE) + .add(thumbKnuckle.uniformScale(LOCUS_THUMB_KNUCKLE_SCALE)) + } + + /** + * Calculates the measured and filtered average Z value of stab hand landmarks + */ + protected filterHandZAverage(cameraToWorld: mat4) { + validate(this.handZOneEuroFilter) + + let zAverage = 0 + let length = 0 + for (const keypoint of this.stubbedKeypoints) { + if (keypoint === null) { + continue + } + let position = keypoint.position + if (cameraToWorld !== undefined) { + position = cameraToWorld.inverse().multiplyPoint(position) + } + zAverage += position.z + length++ + } + + if (length > 0) { + zAverage /= length + } + const filteredZAverage = this.handZOneEuroFilter.filter(zAverage, getTime()) + return {zAverage: zAverage, filteredZAverage: filteredZAverage} + } + + /** + * Calculates corrected hand landmark positions using the measured and smoothed average Z values of stub + */ + protected getCorrectedHandLandmarkPosition( + cameraToWorld: mat4, + avgZ: number, + filteredAvgZ: number, + worldPos: vec3 | null + ): vec3 | null { + if (worldPos === null) { + return null + } + + if (cameraToWorld === undefined) { + return vec3.zero() + } + + const cameraPos = cameraToWorld.inverse().multiplyPoint(worldPos) + const newZ = cameraPos.z - avgZ + filteredAvgZ + const newCameraPos = new vec3( + (cameraPos.x / cameraPos.z) * newZ, + (cameraPos.y / cameraPos.z) * newZ, + newZ + ) + return cameraToWorld.multiplyPoint(newCameraPos) + } + + /** + * Gets the corrected landmark positions and the device center to world transformation + */ + protected getRayAlgorithmData(): RayAlgorithmData { + // Get joints from hands api + const thumb = this.hand.thumbBaseJoint?.position ?? null + const index = this.hand.indexKnuckle?.position ?? null + const mid = this.hand.middleKnuckle?.position ?? null + const wrist = this.hand.wrist?.position ?? null + const deviceCenterToWorld = this.camera.getWorldTransform() + + let cameraToDeviceCenter = mat4.identity() + try { + cameraToDeviceCenter = global.deviceInfoSystem.getTrackingCamera().pose + } catch (e) { + this.log.e("Exception during accessing the tracking camera device: " + e) + } + const cameraToWorld = deviceCenterToWorld.mult(cameraToDeviceCenter) + + if (this.handZOneEuroFilter === null) { + return { + thumb: thumb, + index: index, + mid: mid, + wrist: wrist, + deviceCenterToWorld: deviceCenterToWorld, + cameraToWorld: cameraToWorld, + } + } + + const handZAverage = this.filterHandZAverage(cameraToWorld) + const getCorrectedPosition = (position: vec3 | null) => { + return this.getCorrectedHandLandmarkPosition( + cameraToWorld, + handZAverage.zAverage, + handZAverage.filteredZAverage, + position + ) + } + + return { + thumb: getCorrectedPosition(thumb), + index: getCorrectedPosition(index), + mid: getCorrectedPosition(mid), + wrist: getCorrectedPosition(wrist), + deviceCenterToWorld: deviceCenterToWorld, + cameraToWorld: cameraToWorld, + } + } + + /** + * Update locus, direction, and camera position (or null if required hand landmarks are not tracked). + */ + abstract getRay(): RaycastInfo | null + + /** + * Can be used to reset inner states + * Should be called when the hand is not tracked or targeting is blocked + */ + reset(): void {} +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastBase.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastBase.ts.meta new file mode 100644 index 00000000..8a03346e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastBase.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 9c6c6c17-012f-4bce-8446-75b48e098644 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 9c6c6c17-012f-4bce-8446-75b48e098644 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 24d8ad30-7c81-48ec-9c26-7ad462fc082e + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastLegacySingleCamera.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastLegacySingleCamera.ts new file mode 100644 index 00000000..d15b9f44 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastLegacySingleCamera.ts @@ -0,0 +1,45 @@ +import {validate} from "../../../Utils/validate" +import {RaycastInfo} from "../RayProvider" +import RaycastBase from "./RaycastBase" + +const SHOULDER_POSITION_RELATIVE_TO_CAMERA = new vec3(15, -20, 0) + +/** + * Raycast Legacy uses the algorithm previously used for Hermosa ray casting. + * Meant for use with single-camera tracking, to unblock anything requiring more stable targeting until stereo tracking is available + */ +export default class RaycastLegacySingleCamera extends RaycastBase { + /** + * Calculates a simple ray direction anchor based on camera position only. + * @returns ray direction anchor + */ + private calculateRayDirectionAnchor(): vec3 { + return this.camera + .getWorldTransform() + .multiplyPoint(SHOULDER_POSITION_RELATIVE_TO_CAMERA) + } + + getRay(): RaycastInfo | null { + if (this.hand.middleKnuckle === null) { + return null + } else { + // Find the ray direction + let targetingRay = this.hand.middleKnuckle.position.sub( + this.calculateRayDirectionAnchor() + ) + + validate(this.locusOneEuroFilter) + validate(this.directionOneEuroFilter) + + return { + locus: this.locusOneEuroFilter.filter( + this.hand.middleKnuckle.position, + getTime() + ), + direction: this.directionOneEuroFilter + .filter(targetingRay, getTime()) + .normalize(), + } + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastLegacySingleCamera.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastLegacySingleCamera.ts.meta new file mode 100644 index 00000000..d72c1499 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastLegacySingleCamera.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! e1f0bf90-85a3-49a4-8a73-b18532bf37e4 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! e1f0bf90-85a3-49a4-8a73-b18532bf37e4 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 12bd42c2-33b5-45c5-83e3-f4ed2c3dc3a2 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastProxy.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastProxy.ts new file mode 100644 index 00000000..f47b0969 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastProxy.ts @@ -0,0 +1,33 @@ +import {BaseHand} from "../../../Providers/HandInputData/BaseHand" +import {RaycastInfo} from "../RayProvider" +import RaycastBase from "./RaycastBase" + +const TAG = "RaycastProxy" + +/** + * RaycastProxy forwards the TargetingData received from LensCore's Gesture Module. + */ +export default class RaycastProxy extends RaycastBase { + constructor(hand: BaseHand) { + super(hand) + } + + /** + * Forwards the TargetingData received from LensCore's Gesture Module. + * + * @returns RaycastInfo (locus and direction of the ray) filled with + * the data received from LensCore's Gesture Module. + * If no data has been received (e.g.: couldn't subscribe because the API is not yet present in LensCore), it can return null. + */ + getRay(): RaycastInfo | null { + const targetingData = this.hand.targetingData + if (targetingData !== null) { + return { + locus: targetingData.targetingLocusInWorld, + direction: targetingData.targetingDirectionInWorld, + } + } else { + return null + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastProxy.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastProxy.ts.meta new file mode 100644 index 00000000..c916e211 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RaycastProxy.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 22a6830f-97f8-4948-87a0-b818db12d64b + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 22a6830f-97f8-4948-87a0-b818db12d64b + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! a2ee7d4b-64fb-4582-9662-c6cd5e6ab3ca + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RgbIrTransitionJumpSuppressor.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RgbIrTransitionJumpSuppressor.ts new file mode 100644 index 00000000..1f865e44 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RgbIrTransitionJumpSuppressor.ts @@ -0,0 +1,507 @@ +import {BaseHand} from "../../../Providers/HandInputData/BaseHand" +import {Keypoint} from "../../../Providers/HandInputData/Keypoint" +import NativeLogger from "../../../Utils/NativeLogger" +import AxisAngle from "./AxisAngle" +import {WindowMode} from "./TimeDataContainer" +import {TimedScalarContainer} from "./TimeScalarContainer" + +const TAG = "RgbIrTransitionJumpSuppressor" +const DEFAULT_DECAY_DURATION_SEC = 3 + +type RgbIrTransitionJumpSuppressorConfig = { + /* + * Defines the threshold value for the relative + * change of the bone lengths on successive frames. + * Above this value, the change is considered to be because of the handover + */ + boneRatioChangeLimit: number + + /* + * Window size in frame count for smoothing the bone lengths + */ + boneLengthAverageWindowFrames: number + + /* + * Maximum capacity for storing the applied deltas. If set below 1, this is ignored. + */ + maxCapacity: number + + /* + * Duration in seconds for decaying the deltas + */ + decayDurationSec: number + + /* + * Unpaired delta will be decayed after this time given in seconds. + * If negative, unpaired deltas won't be decayed + */ + maxTimespentWithoutDecaying: number + + /* + * If true, all deltas will start to decay immediately + */ + enableDecayImmediately: boolean + + /* + * If true, the logic only register and apply deltas + * if the direction of the detected handover is pointing to + * the opposite model/camera type then the previous detection + */ + registerOnlySignedPairs: boolean +} + +export type HandOverDetection = { + isHandOver: boolean + sign: number +} + +export type ModifiedValues = { + currentDirection: vec3 + previousDirection: vec3 + currentLocus: vec3 + previousLocus: vec3 +} + +export type DeltaConfig = { + direction: AxisAngle + locus: vec3 + sign: number + multiplier: number +} + +const RgbIrTransitionJumpSuppressorConfigDefault: RgbIrTransitionJumpSuppressorConfig = + { + boneRatioChangeLimit: 0.1, + boneLengthAverageWindowFrames: 5, + maxCapacity: 50, + decayDurationSec: 3, + maxTimespentWithoutDecaying: -1, + enableDecayImmediately: false, + registerOnlySignedPairs: true, + } + +export class Delta { + static nextId = 0 + readonly id = Delta.nextId++ + private decayDurationSec: number + private _canDecay = + RgbIrTransitionJumpSuppressorConfigDefault.enableDecayImmediately + private decayStartTime: number | undefined = undefined + private decayStopTime: number | undefined = undefined + private creationTime = getTime() + + private constructor(private config: DeltaConfig) { + this.decayDurationSec = + RgbIrTransitionJumpSuppressorConfigDefault.decayDurationSec > 0 + ? RgbIrTransitionJumpSuppressorConfigDefault.decayDurationSec + : DEFAULT_DECAY_DURATION_SEC + } + + /** + * Helper method to create a new delta object instance + * @param detection - handover detection object to get sign (handover direction) metadata from it + * @param modifiedValues - targeting directin and locus (origin) on the previous and current frame to measure delta between them + * @returns the created delta instance + */ + static createDelta( + detection: HandOverDetection, + modifiedValues: ModifiedValues + ): Delta { + return new Delta({ + direction: AxisAngle.getRotationBetween( + modifiedValues.currentDirection, + modifiedValues.previousDirection + ), + locus: modifiedValues.previousLocus.sub(modifiedValues.currentLocus), + sign: detection.sign, + multiplier: 1, + }) + } + + /** + * @returns the direction of the detected handover when the delta is measured + * 1: from UL to HLMT + * -1: from HLMT to UL + */ + get sign(): number { + return this.config.sign + } + + /** + * @returns if the delta can be decayed + */ + get canDecay(): boolean { + return this._canDecay + } + + /** + * Sets if the delta can be decayed + */ + set canDecay(value: boolean) { + if (this._canDecay === false && value === true) { + this.decayStartTime = getTime() + } + this._canDecay = value + } + + /** + * Steps the decay + */ + decay(): void { + if (this.canDecay === false) { + return + } + this.config.multiplier -= getDeltaTime() / this.decayDurationSec + if (this.decayStopTime === undefined && this.config.multiplier <= 0) { + this.decayStopTime = getTime() + } + } + + /** + * @returns the current duration of the decaying in seconds + * Returns zero seconds if the decaying hasn't been started. + * Stops increasing after the delta is completely decayed. + */ + decayDuration(): number { + if (this.decayStartTime === undefined) { + return 0 + } else if (this.decayStopTime === undefined) { + return getTime() - this.decayStartTime + } else { + return this.decayStopTime - this.decayStartTime + } + } + + /** + * @returns the elapsed time in seconds since the delta object was created + */ + timeSinceCreated(): number { + return getTime() - this.creationTime + } + + isValid(): boolean { + return this.config.multiplier > 0 + } + + /** + * Applies the delta on the targeting direction to suppress jumps because of the handover + * @param direction - targeting direction + * @returns targeting direction with the delta applied on it + */ + applyDirectionDelta(direction: vec3): vec3 { + if (!this.isValid()) { + return direction + } + + return AxisAngle.applyRotation( + this.config.direction.multipliedBy(this.config.multiplier), + direction + ) + } + + /** + * Applies the delta on the targeting locus to suppress jumps because of the handover + * @param locus - targeting locus + * @returns targeting locus with the delta applied on it + */ + applyLocusDelta(locus: vec3): vec3 { + if (!this.isValid()) { + return locus + } + + return locus.add(this.config.locus.uniformScale(this.config.multiplier)) + } +} + +export type Bone = { + begin: Keypoint + end: Keypoint + smoothedLength: TimedScalarContainer + currentLength: number | undefined +} + +/* + * Because of the hand tracking differences between + * the Ul and HLMT models running on the different camera types (IR - UL, RGB - HLMT) + * there is a clearly visible jump in the targeting direction and origin (locus) point + * which interfere with user's interaction intentions and results in bad user experience. + * This class implements a logic to suppress the targeting jumps on IR-RGB hand tracking handover. + */ +export default class RgbIrTransitionJumpSuppressor { + // Native Logging + private log = new NativeLogger(TAG) + + private bones: Bone[] = [] + private deltas: Delta[] = [] + private previousLocus: vec3 | undefined = undefined + private previousDirection: vec3 | undefined = undefined + + constructor(private hand: BaseHand) { + /* + * These two bones seemed the best for differentiating the different models + * (largest change in relative length on successive frames when the handover happens) + */ + const jointPairs = [ + [this.hand.indexKnuckle, this.hand.indexMidJoint], + [this.hand.pinkyUpperJoint, this.hand.pinkyTip], + ] + + for (const pair of jointPairs) { + const begin = pair[0] + const end = pair[1] + if (begin === null || end === null) { + throw new Error("Bone joints should not be null") + } + this.bones.push({ + begin: begin, + end: end, + smoothedLength: new TimedScalarContainer( + WindowMode.FRAME, + RgbIrTransitionJumpSuppressorConfigDefault.boneLengthAverageWindowFrames + ), + currentLength: undefined, + }) + } + } + + private isHandOverToRegister(sign: number): boolean { + const acceptBasedOnSign = + this.deltas.length === 0 || + this.deltas[this.deltas.length - 1].sign !== sign || + RgbIrTransitionJumpSuppressorConfigDefault.registerOnlySignedPairs === + false + const withinCapacity = + RgbIrTransitionJumpSuppressorConfigDefault.maxCapacity < 1 || + this.deltas.length < + RgbIrTransitionJumpSuppressorConfigDefault.maxCapacity + + if (acceptBasedOnSign && withinCapacity) { + return true + } + this.log.d( + "Handover is not registered either because of wrong transition parity or delta capacity overflow" + ) + this.log.d(`Parity check: ${acceptBasedOnSign}`) + this.log.d(`Capacity check: ${withinCapacity}`) + return false + } + + private detectHandOver(): HandOverDetection { + let registerAsHandOver = false + let sign = 0 + + let avgRatio = 0 + let count = 0 + this.log.v("Change of relative bone lengths:") + for (const bone of this.bones) { + const currentLength = bone.begin.position.distance(bone.end.position) + if (currentLength <= 0) { + this.log.e("Bone length should be a positive value") + continue + } + bone.currentLength = currentLength + + const previousLength = bone.smoothedLength.average() + if (previousLength !== null) { + if (previousLength <= 0) { + this.log.e("Bone length should be a positive value") + continue + } + const ratio = bone.currentLength / previousLength + this.log.v( + `${bone.begin.getAttachmentPoint().name} - ${ + bone.end.getAttachmentPoint().name + }: ${((ratio - 1) * 100).toFixed(1)} %` + ) + avgRatio += ratio + count++ + } + } + + this.log.v("------------------") + + if (count > 0) { + avgRatio /= count + } else { + avgRatio = 1 + } + + const ratioDifference = avgRatio - 1 + if ( + Math.abs(ratioDifference) >= + RgbIrTransitionJumpSuppressorConfigDefault.boneRatioChangeLimit + ) { + sign = Math.sign(ratioDifference) + registerAsHandOver = this.isHandOverToRegister(sign) + for (const bone of this.bones) { + bone.smoothedLength.clear() + } + + this.log.d( + `Model swich detected: ${sign === 1 ? "HLMT" : "UL"}, diff: ${( + ratioDifference * 100 + ).toFixed(1)} %, Register: ${registerAsHandOver}` + ) + } + + for (const bone of this.bones) { + if (bone.currentLength === undefined) { + this.log.e("Bone length should be defined at this point") + continue + } + bone.smoothedLength.pushData(getTime(), bone.currentLength) + } + + return { + isHandOver: registerAsHandOver, + sign: sign, + } + } + + private decayAndRemoveInvalidDeltas(): void { + const newDeltas = [] + for (const delta of this.deltas) { + delta.decay() + if (delta.isValid()) { + newDeltas.push(delta) + } + } + this.deltas = newDeltas + } + + private computeModifiedValues( + currentDirection: vec3, + previousDirection: vec3, + currentLocus: vec3, + previousLocus: vec3 + ): ModifiedValues { + let modifiedCurrentDirection = currentDirection + let modifiedPreviousDirection = previousDirection + let modifiedCurrentLocus = currentLocus + let modifiedPreviousLocus = previousLocus + for (const delta of this.deltas) { + modifiedCurrentDirection = delta.applyDirectionDelta( + modifiedCurrentDirection + ) + modifiedPreviousDirection = delta.applyDirectionDelta( + modifiedPreviousDirection + ) + modifiedCurrentLocus = delta.applyLocusDelta(modifiedCurrentLocus) + modifiedPreviousLocus = delta.applyLocusDelta(modifiedPreviousLocus) + } + + return { + currentDirection: modifiedCurrentDirection, + previousDirection: modifiedPreviousDirection, + currentLocus: modifiedCurrentLocus, + previousLocus: modifiedPreviousLocus, + } + } + + private startDecayOldLastDelta(maxTime: number): void { + if (this.deltas.length > 0) { + const lastDelta = this.deltas[this.deltas.length - 1] + const timeSinceCreated = lastDelta.timeSinceCreated() + if (timeSinceCreated > maxTime) { + lastDelta.canDecay = true + } + } + } + + private storeDelta(delta: Delta) { + this.deltas.push(delta) + + if (this.deltas.length % 2 === 0) { + this.deltas[this.deltas.length - 1].canDecay = true + this.deltas[this.deltas.length - 2].canDecay = true + } + } + + /** + * Resets the state of the suppressor + * Should be called when the hand is not tracked or targeting is blocked + */ + reset(): void { + this.previousLocus = undefined + this.previousDirection = undefined + this.deltas = [] + } + + /** + * Update the suppressor state by detecting handover and computing, storing deltas + * @param currentDirection - targeting direction on the current frame + * @param currentLocus - targeting locus on the current frame + */ + update(currentDirection: vec3, currentLocus: vec3): void { + const detection = this.detectHandOver() + + this.decayAndRemoveInvalidDeltas() + + if ( + RgbIrTransitionJumpSuppressorConfigDefault.maxTimespentWithoutDecaying > 0 + ) { + this.startDecayOldLastDelta( + RgbIrTransitionJumpSuppressorConfigDefault.maxTimespentWithoutDecaying + ) + } + + if ( + detection.isHandOver === true && + this.previousDirection !== undefined && + this.previousLocus !== undefined + ) { + const delta = Delta.createDelta( + detection, + this.computeModifiedValues( + currentDirection, + this.previousDirection, + currentLocus, + this.previousLocus + ) + ) + this.storeDelta(delta) + + this.log.d(`Delta registered, deltas size: ${this.deltas.length}`) + for (const delta of this.deltas) { + this.log.d( + `decay: ${delta.canDecay}, id: ${delta.id}, to model: ${ + delta.sign === 1 ? "HLMT" : "UL" + }, isValid: ${delta.isValid()}` + ) + } + } else if (detection.isHandOver === true) { + this.log.d( + `Cannot register because previous data is undefined: ${this.previousDirection}, ${this.previousLocus}` + ) + } + + this.previousLocus = currentLocus + this.previousDirection = currentDirection + } + + /** + * Applies the stored deltas on the targeting direction to suppress jumps because of the handover + * @param currentDirection - targeting direction on the current frame + * @returns targeting direction with deltas applied on it + */ + applyDirectionDelta(currentDirection: vec3): vec3 { + let direction = currentDirection + for (const delta of this.deltas) { + direction = delta.applyDirectionDelta(direction) + } + return direction + } + + /** + * Applies the stored deltas on the targeting locus to suppress jumps because of the handover + * @param currentLocus - targeting locus on the current frame + * @returns targeting locus with deltas applied on it + */ + applyLocusDelta(currentLocus: vec3): vec3 { + let locus = currentLocus + for (const delta of this.deltas) { + locus = delta.applyLocusDelta(locus) + } + return locus + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RgbIrTransitionJumpSuppressor.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RgbIrTransitionJumpSuppressor.ts.meta new file mode 100644 index 00000000..9317eab1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/RgbIrTransitionJumpSuppressor.ts.meta @@ -0,0 +1,40 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! ef9851c5-44b2-4181-958b-10a50445e54f + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! ef9851c5-44b2-4181-958b-10a50445e54f + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! 323558e9-4a65-4ec7-859e-fa412bc2190b + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/SwitchIrInteractionTransition.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/SwitchIrInteractionTransition.ts new file mode 100644 index 00000000..e0a1238c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/SwitchIrInteractionTransition.ts @@ -0,0 +1,189 @@ +import {IrInteractionTransition} from "./IrInteractionTransition" + +export type SwitchIrInteractionTransitionConfig = { + /** + * Rotation applied around X axis in degrees when the ray is in IR FoV mode + */ + rotationXDegrees: number + + /** + * Height difference between neck and hand - above this value, switch to IR mode + */ + neckHandHeightDifferenceToIr: number + + /** + * Height difference between neck and hand - under this value, switch to Default mode + */ + neckHandHeightDifferenceToDefault: number + + /** + * Gaze pitch in degrees - below this value, switch to IR mode + */ + gazePitchDegreesToIr: number + + /** + * Gaze pitch in degrees - above this value, switch to Default mode + */ + gazePitchDegreesToDefault: number + + /** + * Duration time in seconds for the transition between modes when the mode is switched + */ + transitionSeconds: number + + /** + * Debounce time in seconds to switch to IR mode + */ + debounceToIrSeconds: number + + /** + * Debounce time in seconds to switch to Default mode + */ + debounceToDefaultSeconds: number +} + +const SwitchIrInteractionTransitionConfigDefault = { + rotationXDegrees: 35, + neckHandHeightDifferenceToIr: 35, + neckHandHeightDifferenceToDefault: 30, + gazePitchDegreesToIr: 25, + gazePitchDegreesToDefault: 25, + transitionSeconds: 0.2, + debounceToIrSeconds: 0.2, + debounceToDefaultSeconds: 0.1, +} + +/** + * Class to implement Switch-like IR Transition Strategy + */ +export default class SwitchIrInteractionTransition + implements IrInteractionTransition +{ + private inIrMode = false + private irModeSaturationProgress = 0 + private debounceProgress = 0 + + private config: SwitchIrInteractionTransitionConfig = + SwitchIrInteractionTransitionConfigDefault + + private transitionSeconds = + this.config.transitionSeconds > 0 ? this.config.transitionSeconds : 0.2 + private debounceToIrSeconds = + this.config.debounceToIrSeconds > 0 ? this.config.debounceToIrSeconds : 0.2 + private debounceToDefaultSeconds = + this.config.debounceToDefaultSeconds > 0 + ? this.config.debounceToDefaultSeconds + : 0.1 + + /** @inheritdoc */ + computeXRotationInDegrees( + gazePitchInDegrees: number, + toWorldFromSituationSpace: mat4, + handPoint: vec3 + ): number { + const transformedHandPoint = toWorldFromSituationSpace + .inverse() + .multiplyPoint(handPoint) + + const rotationInDegrees = + this.computeMultiplier(transformedHandPoint, gazePitchInDegrees) * + this.config.rotationXDegrees + return rotationInDegrees + } + + /** @inheritdoc */ + computeXRotationInRadians( + gazePitchInRadians: number, + toWorldFromSituationSpace: mat4, + handPoint: vec3 + ): number { + return ( + MathUtils.DegToRad * + this.computeXRotationInDegrees( + MathUtils.RadToDeg * gazePitchInRadians, + toWorldFromSituationSpace, + handPoint + ) + ) + } + + /** + * Computes the multiplier for the Ir interaction additional rotation in switch transition mode + * @param handPoint - hand point used for height estimation + * @param gazePitchInDegrees - gaze pitch given in degrees + * @returns multiplier for the Ir interaction interaction rotation + */ + private computeMultiplier( + handPoint: vec3, + gazePitchInDegrees: number + ): number { + if (this.inIrMode === false) { + this.switchTransitionStrategyInDefaultMode(handPoint, gazePitchInDegrees) + } else { + this.switchTransitionStrategyInIrMode(handPoint, gazePitchInDegrees) + } + return this.irModeSaturationProgress + } + + /** + * Steps the switch transition strategy while in default mode + * @param handPoint - hand point used for height estimation + * @param gazePitchInDegrees - gaze pitch given in degrees + */ + private switchTransitionStrategyInDefaultMode( + handPoint: vec3, + gazePitchInDegrees: number + ): void { + if ( + handPoint.y < -this.config.neckHandHeightDifferenceToIr && + gazePitchInDegrees > -this.config.gazePitchDegreesToIr + ) { + this.debounceProgress += getDeltaTime() / this.debounceToIrSeconds + this.debounceProgress = MathUtils.clamp(this.debounceProgress, 0, 1) + if (this.debounceProgress === 1) { + this.inIrMode = true + this.debounceProgress = 0 + } + } else { + this.irModeSaturationProgress -= getDeltaTime() / this.transitionSeconds + this.irModeSaturationProgress = MathUtils.clamp( + this.irModeSaturationProgress, + 0, + 1 + ) + this.debounceProgress -= getDeltaTime() / this.debounceToIrSeconds + this.debounceProgress = MathUtils.clamp(this.debounceProgress, 0, 1) + } + } + + /** + * Steps the switch transition strategy while in IR mode + * @param handPoint - hand point used for height estimation + * @param gazePitchInDegrees - gaze pitch given in degrees + */ + private switchTransitionStrategyInIrMode( + handPoint: vec3, + gazePitchInDegrees: number + ): void { + if ( + handPoint.y >= -this.config.neckHandHeightDifferenceToDefault || + gazePitchInDegrees <= -this.config.gazePitchDegreesToDefault + ) { + this.debounceProgress += getDeltaTime() / this.debounceToDefaultSeconds + this.debounceProgress = MathUtils.clamp(this.debounceProgress, 0, 1) + if (this.debounceProgress === 1) { + this.inIrMode = false + this.debounceProgress = 0 + } + } else { + this.irModeSaturationProgress += getDeltaTime() / this.transitionSeconds + this.irModeSaturationProgress = MathUtils.clamp( + this.irModeSaturationProgress, + 0, + 1 + ) + this.debounceProgress -= getDeltaTime() / this.debounceToDefaultSeconds + this.debounceProgress = MathUtils.clamp(this.debounceProgress, 0, 1) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/SwitchIrInteractionTransition.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/SwitchIrInteractionTransition.ts.meta new file mode 100644 index 00000000..69f6be2f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/SwitchIrInteractionTransition.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 96153d69-efc8-404b-91a2-e6293ddd6741 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 96153d69-efc8-404b-91a2-e6293ddd6741 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 875adf9a-61c2-4e6b-a202-0f403f6a0680 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeDataContainer.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeDataContainer.ts new file mode 100644 index 00000000..7e4be836 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeDataContainer.ts @@ -0,0 +1,153 @@ +import NativeLogger from "../../../Utils/NativeLogger" +import {SampleOps} from "../../../Utils/SampleOps" + +const TAG = "TimedDataContainer" + +/** + * Custom data with timestamp + */ +export class TimedData { + constructor(public timestamp: number, public data: T) {} +} + +/** + * Window modes for TimedDataContainer + * TIME - data window slides based on timestamps and the given window size in time units (seconds) + * FRAME = data window slides based on element (data frame) number + */ +export enum WindowMode { + TIME, + FRAME, +} + +/** + * Manages custom data within a time or frame based window + */ +export class TimedDataContainer { + // Native Logging + private log = new NativeLogger(TAG) + + protected data: TimedData[] = [] + + constructor( + private _windowMode: WindowMode, + private _windowSize: number, + private sampleOps: SampleOps + ) {} + + /** + * State variable to check if warning notification has already been logged + * in case a timestamp is pushed with data value + * different than the previous for the same timestamp. + * This notification will be logged only once per a lens start avoiding + * excessive frame by frame log spam. + */ + private notifiedRepeatedTimestampPush = false + + /** + * @returns the size of the container, + * number of contained elements + */ + get size(): number { + return this.data.length + } + + /** + * @returns the currently set window size of the container, + * time interval or frame number depending on the windowMode + */ + get windowSize(): number { + return this._windowSize + } + + /** + * @returns the currently set window mode of the container + */ + get windowMode(): number { + return this._windowMode + } + + /** + * sets the window size in time unit or frame number + * depending on the windowMode + * @param windowSize - time unit or frame number + */ + setWindowSize(windowSize: number): void { + this._windowSize = windowSize + } + + /** + * clears the data array + */ + clear(): void { + this.data = [] + } + + /** + * Updates the container by removing the outdated elements + * from the front of the data array. + * In FRAME windowMode, only the last windowSize elements are kept + * In TIME mode, the elements older than windowSize + * are removed from the frint of the array (relative to the current timestamp parameter) + * @param timestamp - current timestamp + */ + updateQueue(timestamp: number): void { + if (timestamp < 0) { + throw new Error("Timestamps should not be negative") + } + if (this._windowMode === WindowMode.TIME) { + const begin = timestamp - this._windowSize + while (this.data.length > 0 && this.data[0].timestamp < begin) { + this.data.shift() + } + } else { + while (this.data.length > this._windowSize) { + this.data.shift() + } + } + } + + /** + * adds new data to the container with timestamp + * updates the data array + * @param timestamp - timestamp of the data + * @param data - custom data + */ + pushData(timestamp: number, data: T): void { + if (timestamp < 0) { + throw new Error("Timestamps should not be negative") + } + + if (this.data.length > 0) { + const backData = this.data[this.data.length - 1] + if (timestamp < backData.timestamp) { + throw new Error("Timestamps should be monotonic") + } + if (timestamp === backData.timestamp) { + if (!this.notifiedRepeatedTimestampPush && data !== backData.data) { + this.log.w("Data arrived with repeated timestamp and different data") + this.notifiedRepeatedTimestampPush = true + } + return + } + } + + this.data.push(new TimedData(timestamp, data)) + this.updateQueue(timestamp) + } + + /** + * @returns the average of the contained elements, + * or null if no data contained + */ + average(): T | null { + if (this.data.length === 0) { + return null + } + let sum = this.sampleOps.zero() + for (let i = 0; i < this.data.length; i++) { + sum = this.sampleOps.add(sum, this.data[i].data) + } + return this.sampleOps.uniformScale(sum, 1 / this.data.length) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeDataContainer.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeDataContainer.ts.meta new file mode 100644 index 00000000..2e960a1a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeDataContainer.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 176ad728-4084-4eba-b18c-ab90d427b0ee + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 176ad728-4084-4eba-b18c-ab90d427b0ee + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 9500ac9d-68e0-4f46-873d-1719d3243582 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeScalarContainer.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeScalarContainer.ts new file mode 100644 index 00000000..5238dfce --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeScalarContainer.ts @@ -0,0 +1,50 @@ +import {ScalarSampleOps} from "../../../Utils/SampleOps" +import {TimedDataContainer, WindowMode} from "./TimeDataContainer" + +/** + * Scalar specialization of TimedDataContainer + */ +export class TimedScalarContainer extends TimedDataContainer { + constructor(windowMode: WindowMode, windowSize: number) { + super(windowMode, windowSize, new ScalarSampleOps()) + } + + /** + * @returns the velocity aggregated, using signed delta values between the data points + * + * Tries to overcome the velocity measurement problem caused by data duplications + * because of the different render and tracking frame rates: + * Assuming closely even render frame rate, and frequent data duplications on every second frame, + * calculates the delta between the current data and the one before the previous data + * Averages these cross computed velocity values. + * Requires at least 4 data elements to return valid velocity, othervise returns null + * + * ti - ith time point + * di - ith data + * + * t0 t2 t4 + * ____ ____ + * / \ / \ + * -|--|--|--|--|- + * d0 d0 d1 d1 d2 + * \___/ + * t1 t3 + */ + aggregateSignedVelocity(): number | null { + if (this.data.length < 4) { + return null + } + + let velocitySum = 0 + let count = 0 + for (let i = 2; i < this.data.length; i++) { + const delta = this.data[i].data - this.data[i - 2].data + const deltaTime = this.data[i].timestamp - this.data[i - 2].timestamp + const velocity = delta / deltaTime + velocitySum += velocity + count++ + } + + return velocitySum / count + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeScalarContainer.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeScalarContainer.ts.meta new file mode 100644 index 00000000..063cd4f1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimeScalarContainer.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! aacedc6f-a394-4a45-88aa-7eb2efae09a6 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! aacedc6f-a394-4a45-88aa-7eb2efae09a6 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 7627e864-b285-481a-9e51-a571047ffb6a + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec2Container.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec2Container.ts new file mode 100644 index 00000000..0808b0b1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec2Container.ts @@ -0,0 +1,50 @@ +import {Vec2SampleOps} from "../../../Utils/SampleOps" +import {TimedDataContainer, WindowMode} from "./TimeDataContainer" + +/** + * Vec2 specialization of TimedDataContainer + */ +export class TimedVec2Container extends TimedDataContainer { + constructor(windowMode: WindowMode, windowSize: number) { + super(windowMode, windowSize, new Vec2SampleOps()) + } + + /** + * @returns the velocity aggregated, using absolute distance between the vectors as delta values between the data points + * + * Tries to overcome the velocity measurement problem caused by data duplications + * because of the different render and tracking frame rates: + * Assuming closely even render frame rate, and frequent data duplications on every second frame, + * calculates the delta between the current data and the one before the previous data + * Averages these cross computed velocity values. + * Requires at least 4 data elements to return valid velocity, othervise returns null + * + * ti - ith time point + * di - ith data + * + * t0 t2 t4 + * ____ ____ + * / \ / \ + * -|--|--|--|--|- + * d0 d0 d1 d1 d2 + * \___/ + * t1 t3 + */ + aggregateAbsoluteVelocity(): number | null { + if (this.data.length < 4) { + return null + } + + let velocitySum = 0 + let count = 0 + for (let i = 2; i < this.data.length; i++) { + const delta = this.data[i].data.distance(this.data[i - 2].data) + const deltaTime = this.data[i].timestamp - this.data[i - 2].timestamp + const velocity = delta / deltaTime + velocitySum += velocity + count++ + } + + return velocitySum / count + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec2Container.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec2Container.ts.meta new file mode 100644 index 00000000..0f4a7100 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec2Container.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 48eaf375-139c-41f4-bf7a-9517dab0fb3c + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 48eaf375-139c-41f4-bf7a-9517dab0fb3c + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 9798701e-5b65-408c-801d-b7222dab5e24 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec3Container.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec3Container.ts new file mode 100644 index 00000000..c9ed6ad0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec3Container.ts @@ -0,0 +1,59 @@ +import {Vec3SampleOps} from "../../../Utils/SampleOps" +import {TimedDataContainer, WindowMode} from "./TimeDataContainer" + +/** + * Vec3 specialization of TimedDataContainer + */ +export class TimedVec3Container extends TimedDataContainer { + constructor(windowMode: WindowMode, windowSize: number) { + super(windowMode, windowSize, new Vec3SampleOps()) + } + + /** + * @returns the velocity aggregated, using absolute distance between the vectors as delta values between the data points + * + * Tries to overcome the velocity measurement problem caused by data duplications + * because of the different render and tracking frame rates: + * Assuming closely even render frame rate, and frequent data duplications on every second frame, + * calculates the delta between the current data and the one before the previous data + * Averages these cross computed velocity values. + * Requires at least 4 data elements to return valid velocity, othervise returns null + * + * ti - ith time point + * di - ith data + * + * t0 t2 t4 + * ____ ____ + * / \ / \ + * -|--|--|--|--|- + * d0 d0 d1 d1 d2 + * \___/ + * t1 t3 + */ + aggregateAbsoluteVelocity(): number | null { + if (this.data.length < 4) { + return null + } + + let velocitySum = 0 + let count = 0 + for (let i = 2; i < this.data.length; i++) { + const delta = this.data[i].data.distance(this.data[i - 2].data) + const deltaTime = this.data[i].timestamp - this.data[i - 2].timestamp + const velocity = delta / deltaTime + velocitySum += velocity + count++ + } + + return velocitySum / count + } + + pushWithoutDuplicate(timestamp: number, data: vec3): void { + if ( + this.data.length === 0 || + this.data[this.data.length - 1].data !== data + ) { + this.pushData(timestamp, data) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec3Container.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec3Container.ts.meta new file mode 100644 index 00000000..9748d9d1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/Interactor/raycastAlgorithms/TimedVec3Container.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 82abc3e8-e087-4f6f-bb4a-a27f0929ab96 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 82abc3e8-e087-4f6f-bb4a-a27f0929ab96 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 3fd3322f-1928-4583-92ea-bd6099651a08 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/LogLevelConfiguration.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/LogLevelConfiguration.ts new file mode 100644 index 00000000..d858b334 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/LogLevelConfiguration.ts @@ -0,0 +1,19 @@ +const TAG = "LogLevelConfiguration" + +/** + * This class provides configuration for log levels within the application. It allows setting different log levels for various components and modules, enabling fine-grained control over logging output. + */ +@component +export abstract class LogLevelConfiguration extends BaseScriptComponent { + @input("int") + @widget( + new ComboBoxWidget([ + new ComboBoxItem("Error", 3), + new ComboBoxItem("Warning", 4), + new ComboBoxItem("Info", 6), + new ComboBoxItem("Debug", 7), + new ComboBoxItem("Verbose", 8), + ]), + ) + protected logLevelFilter: number = 8 +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/LogLevelConfiguration.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/LogLevelConfiguration.ts.meta new file mode 100644 index 00000000..16cc3edf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/LogLevelConfiguration.ts.meta @@ -0,0 +1,38 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! ee347a85-5797-4c6b-879a-2fad7ec50406 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! ee347a85-5797-4c6b-879a-2fad7ec50406 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! e0d5dcb4-edd8-4164-a081-20bdda7354f7 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + logLevelFilter: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - logLevelFilter: 8 + ScriptTypes: + - + {} + InputLines: + - '// @input int logLevelFilter = 8 {"widget":"combobox", "values":[{"label":"Error", "value":3}, {"label":"Warning", "value":4}, {"label":"Info", "value":6}, {"label":"Debug", "value":7}, {"label":"Verbose", "value":8}]}' diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/SIKLogLevelConfiguration.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/SIKLogLevelConfiguration.ts new file mode 100644 index 00000000..c5dc691a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/SIKLogLevelConfiguration.ts @@ -0,0 +1,35 @@ +import SIKLogLevelProvider from "../../Providers/InteractionConfigurationProvider/SIKLogLevelProvider" +import {InteractionManager} from "../InteractionManager/InteractionManager" +import {LogLevelConfiguration} from "./LogLevelConfiguration" + +const TAG = "SIKLogLevelConfiguration" + +/** + * Allows the user to select the log level filter for SIK types from a lens studio component. + */ +@component +export class SIKLogLevelConfiguration extends LogLevelConfiguration { + // TODO: Should we rename this back to Configuration? Or keep the debug logic in InteractionManager (which isn't a component)? + private SIKLogLevelProvider = SIKLogLevelProvider.getInstance() + private interactionManager = InteractionManager.getInstance() + + @input + private _debugModeEnabled: boolean = false + + onAwake() { + this.SIKLogLevelProvider.logLevel = this.logLevelFilter + this.createEvent("OnStartEvent").bind(() => { + this.debugModeEnabled = this._debugModeEnabled + }) + } + + set debugModeEnabled(enabled: boolean) { + this._debugModeEnabled = enabled + + this.interactionManager.debugModeEnabled = enabled + } + + get debugModeEnabled(): boolean { + return this._debugModeEnabled + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/SIKLogLevelConfiguration.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/SIKLogLevelConfiguration.ts.meta new file mode 100644 index 00000000..990ec46d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/LogLevelConfiguration/SIKLogLevelConfiguration.ts.meta @@ -0,0 +1,41 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! d957e0e4-3046-4a85-bc12-52fe1927d9c9 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! d957e0e4-3046-4a85-bc12-52fe1927d9c9 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 2b8d966e-34f9-4307-af42-f12f2f418ba7 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _debugModeEnabled: false + logLevelFilter: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - logLevelFilter: 8 + _debugModeEnabled: false + ScriptTypes: + - + {} + InputLines: + - '// @input int logLevelFilter = 8 {"widget":"combobox", "values":[{"label":"Error", "value":3}, {"label":"Warning", "value":4}, {"label":"Info", "value":6}, {"label":"Debug", "value":7}, {"label":"Verbose", "value":8}]}' + - // @input bool _debugModeEnabled diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MobileInteractor/MobileInteractor.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MobileInteractor/MobileInteractor.ts new file mode 100644 index 00000000..0e1a59bb --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MobileInteractor/MobileInteractor.ts @@ -0,0 +1,410 @@ +import {InteractableManipulation} from "../../Components/Interaction/InteractableManipulation/InteractableManipulation" +import {MobileInputData} from "../../Providers/MobileInputData/MobileInputData" +import {InteractableHitInfo} from "../../Providers/TargetProvider/TargetProvider" +import NativeLogger from "../../Utils/NativeLogger" +import {validate} from "../../Utils/validate" +import BaseInteractor from "../Interactor/BaseInteractor" +import {DragProvider} from "../Interactor/DragProvider" +import IndirectTargetProvider from "../Interactor/IndirectTargetProvider" +import { + DragType, + InteractorInputType, + InteractorTriggerType, + TargetingMode, +} from "../Interactor/Interactor" +import {MobileRayProvider} from "../Interactor/MobileRayProvider" + +const TAG = "MobileInteractor" + +// These thresholds are not for deciding when to invoke onDragStart, but rather to tell the MobileInteractor when to switch what type of drag to track. +const INITIAL_TOUCHPAD_SWITCH_THRESHOLD = 0.05 // Screen position units mapped from the phone's touch surface +const OVERRIDE_TOUCHPAD_SWITCH_THRESHOLD = 0.1 // Screen position units mapped from the phone's touch surface + +const INITIAL_SIX_DOF_SWITCH_THRESHOLD = 3 // World units in c +const OVERRIDE_SIX_DOF_SWITCH_THRESHOLD = 20 // World units in c +const MANIPULATE_SIX_DOF_SWITCH_THRESHOLD = 2 // World units in c + +/** + * Interactor for the Mobile Controller + */ +@component +export class MobileInteractor extends BaseInteractor { + @ui.group_start("Mobile Interactor") + @input + @hint( + "Initialize Mobile Input Data Provider with Position and Rotation Filtering" + ) + initializePositionAndRotationFilter: boolean = true + @input + private _touchpadScrollSpeed: number = 250 + @input + private touchpadDragThreshold: number = 0.05 + @ui.group_end + private indirectTargetProvider: IndirectTargetProvider | undefined + private rayProvider: MobileRayProvider | undefined + private _dragType: DragType | null = null + private isManipulating = false + + // Native Logging + private log = new NativeLogger(TAG) + + private mobileInputData: MobileInputData = MobileInputData.getInstance() + + private touchpadStartPosition: vec2 | null = null + private touchpadCurrentPosition: vec2 | null = null + private sixDofStartPosition: vec3 | null = null + private sixDofCurrentPosition: vec3 | null = null + + private sixDofDragProvider = new DragProvider(this.indirectDragThreshold) + private touchpadDragProvider = new DragProvider(this.touchpadDragThreshold) + + onAwake(): void { + this.inputType = InteractorInputType.Mobile + this.mobileInputData.filterPositionAndRotation = + this.initializePositionAndRotationFilter + + this.defineSceneEvents() + this.defineTouchEvents() + + this.rayProvider = new MobileRayProvider() + + this.indirectTargetProvider = new IndirectTargetProvider( + this as BaseInteractor, + { + maxRayDistance: this.maxRaycastDistance, + rayProvider: this.rayProvider, + targetingVolumeMultiplier: this.indirectTargetingVolumeMultiplier, + shouldPreventTargetUpdate: () => { + return this.preventTargetUpdate() + }, + spherecastRadii: this.spherecastRadii, + spherecastDistanceThresholds: this.spherecastDistanceThresholds, + } + ) + } + + get touchpadScrollSpeed(): number { + return this._touchpadScrollSpeed + } + + get startPoint(): vec3 | null { + return this.indirectTargetProvider?.startPoint ?? null + } + + get endPoint(): vec3 | null { + return this.indirectTargetProvider?.endPoint ?? null + } + + get direction(): vec3 | null { + return this.indirectTargetProvider?.direction ?? null + } + + get orientation(): quat | null { + return this.mobileInputData.rotation + } + + get distanceToTarget(): number | null { + return ( + this.indirectTargetProvider?.currentInteractableHitInfo?.hit.distance ?? + null + ) + } + + get targetHitPosition(): vec3 | null { + return ( + this.indirectTargetProvider?.currentInteractableHitInfo?.hit.position ?? + null + ) + } + + get targetHitInfo(): InteractableHitInfo | null { + return this.indirectTargetProvider?.currentInteractableHitInfo ?? null + } + + get activeTargetingMode(): TargetingMode { + return this.indirectTargetProvider?.targetingMode ?? TargetingMode.None + } + + get maxRaycastDistance(): number { + return this._maxRaycastDistance + } + + get interactionStrength(): number | null { + return this.touchpadStartPosition !== null ? 1 : 0 + } + + /** + * Set if the Interactor is should draw a debug gizmo of collider/raycasts in the scene. + */ + set drawDebug(debug: boolean) { + validate(this.indirectTargetProvider) + this._drawDebug = debug + + this.indirectTargetProvider.drawDebug = debug + } + + /** + * @returns if the Interactor is currently drawing a debug gizmo of collider/raycasts in the scene. + */ + get drawDebug(): boolean { + return this._drawDebug + } + + /** + * @returns the current drag vector of the phone's SixDof position in world space. + */ + get sixDofDragVector(): vec3 | null { + return this.sixDofDragProvider.currentDragVector + } + + /** + * @returns the current drag vector of the phone's touchpad in normalized screen space (with bottom-left corner representing [0,0]). + */ + get touchpadDragVector(): vec3 | null { + return this.touchpadDragProvider.currentDragVector + } + + override updateState(): void { + super.updateState() + + if (!this.mobileInputData.isAvailable()) { + return + } + + validate(this.indirectTargetProvider) + + this.indirectTargetProvider.update() + this.currentInteractable = + this.indirectTargetProvider.currentInteractableHitInfo?.interactable ?? + null + this.currentTrigger = + this.touchpadStartPosition !== null + ? InteractorTriggerType.Select + : InteractorTriggerType.None + + if ((this.currentTrigger & InteractorTriggerType.Select) !== 0) { + if (this.sixDofStartPosition === null) { + this.sixDofStartPosition = this.sixDofSwitchPosition + } + this.sixDofCurrentPosition = this.sixDofSwitchPosition + } else { + this.sixDofCurrentPosition = this.sixDofStartPosition = null + } + + this.updateDragType() + this.updateDragVector() + } + + /** @inheritdoc */ + isTargeting(): boolean { + return this.mobileInputData.isAvailable() + } + + /** @inheritdoc */ + isActive(): boolean { + return this.mobileInputData.isAvailable() + } + + protected clearCurrentHitInfo(): void { + validate(this.indirectTargetProvider) + this.indirectTargetProvider.clearCurrentInteractableHitInfo() + } + + private defineSceneEvents(): void { + this.createEvent("OnDestroyEvent").bind(() => { + this.release() + }) + } + + private defineTouchEvents(): void { + this.createEvent("TouchStartEvent").bind((...args) => + this.onTouchStartEvent(...args) + ) + + this.createEvent("TouchMoveEvent").bind((...args) => + this.onTouchMoveEvent(...args) + ) + + this.createEvent("TouchEndEvent").bind((...args) => this.onTouchEndEvent()) + } + + private onTouchStartEvent(ev: TouchStartEvent): void { + this.touchpadCurrentPosition = this.touchpadStartPosition = + ev.getTouchPosition() + if (this.currentInteractable !== null) { + this.isManipulating = + this.currentInteractable.sceneObject.getComponent( + InteractableManipulation.getTypeName() + ) !== null + } + if (!global.deviceInfoSystem.isEditor) { + this.log.v("Mobile Interactor On Touch Start Event") + } + } + + private onTouchMoveEvent(ev: TouchMoveEvent): void { + this.touchpadCurrentPosition = ev.getTouchPosition() + } + + private onTouchEndEvent(): void { + this.touchpadStartPosition = this.touchpadCurrentPosition = null + this.dragType = null + this.dragProvider.clear() + this.isManipulating = false + if (!global.deviceInfoSystem.isEditor) { + this.log.v("Mobile Interactor On Touch End Event") + } + } + + private preventTargetUpdate(): boolean { + // If there's no current touch there's no trigger happening + if (!this.touchpadStartPosition) { + return false + } + + return true + } + + private updateDragType() { + if (this.currentTrigger === InteractorTriggerType.None) { + return + } + + if ( + this.dragType !== DragType.Touchpad && + this.touchpadStartPosition !== null && + this.touchpadCurrentPosition !== null && + this.touchpadCurrentPosition?.sub(this.touchpadStartPosition).length > + this.touchpadSwitchThreshold + ) { + this.dragType = DragType.Touchpad + return + } + + if ( + this.dragType !== DragType.SixDof && + this.sixDofStartPosition !== null && + this.sixDofCurrentPosition !== null && + this.sixDofCurrentPosition?.sub(this.sixDofStartPosition).length > + this.sixDofSwitchThreshold + ) { + this.dragType = DragType.SixDof + return + } + } + + protected override clearDragProviders(): void { + this.touchpadDragProvider.clear() + this.sixDofDragProvider.clear() + this.planecastDragProvider.clear() + } + + protected override updateDragVector(): void { + if ((this.currentTrigger & InteractorTriggerType.Select) !== 0) { + const touchpadDragVector = this.touchpadDragProvider.getDragVector( + this.getTouchpadDragPoint(), + this.currentInteractable?.enableInstantDrag ?? null + ) + const sixDofDragVector = this.sixDofDragProvider.getDragVector( + this.getSixDofDragPoint(), + this.currentInteractable?.enableInstantDrag ?? null + ) + + this.currentDragVector = this.dragProvider.currentDragVector + + this.planecastDragProvider.getDragVector( + this.planecastPoint, + this.currentInteractable?.enableInstantDrag ?? null + ) + } else { + this.currentDragVector = null + this.clearDragProviders() + } + } + + protected override getDragPoint(): vec3 | null { + if (this.dragType === DragType.SixDof) { + return this.getSixDofDragPoint() + } else if (this.dragType === DragType.Touchpad) { + return this.getTouchpadDragPoint() + } + return null + } + + private getSixDofDragPoint(): vec3 | null { + return this.endPoint + } + + private getTouchpadDragPoint(): vec3 | null { + if (this.touchpadCurrentPosition !== null) { + return new vec3( + // Remap the touchpad space such that the bottom-left corner is [0,0] rather than the top-left corner. + this.touchpadCurrentPosition.x, + 1 - this.touchpadCurrentPosition.y, + 0 + ).uniformScale(this.touchpadScrollSpeed) + } + return null + } + + /** + * At the beginning of interaction, the switch threshold should be lower to immediately start tracking the user's desired type of drag. + * However if the user is already dragging via Touchpad, switching to drag via 6DoF should be more difficult to avoid accidental drag interruptions. + * In the case of manipulation, we use a threshold for the startPosition of the ray instead as a design choice. + */ + private get sixDofSwitchThreshold(): number { + if (this.isManipulating) { + return MANIPULATE_SIX_DOF_SWITCH_THRESHOLD + } + + if (this.dragType === DragType.Touchpad) { + return OVERRIDE_SIX_DOF_SWITCH_THRESHOLD + } + + return INITIAL_SIX_DOF_SWITCH_THRESHOLD + } + + /** + * At the beginning of interaction, the switch threshold should be lower to immediately start tracking the user's desired type of drag. + * However if the user is already dragging via 6Dof, switching to drag via Touchpad should be more difficult to avoid accidental drag interruptions. + */ + private get touchpadSwitchThreshold(): number { + if (this.dragType === DragType.SixDof) { + return OVERRIDE_TOUCHPAD_SWITCH_THRESHOLD + } + + return INITIAL_TOUCHPAD_SWITCH_THRESHOLD + } + + /** + * If we are manipulating, we use the location of the phone as the start point. + * Otherwise, we use the endpoint of the raycast. + */ + get sixDofSwitchPosition(): vec3 | null { + return this.isManipulating ? this.startPoint : this.endPoint + } + + override get dragType(): DragType | null { + return this._dragType + } + + private override set dragType(type: DragType | null) { + if (type === this.dragType) { + return + } + + this._dragType = type + + switch (type) { + case DragType.SixDof: + this.dragProvider = this.sixDofDragProvider + // Reset the start position of Touchpad to accurately track when the user wants to switch to using Touchpad drag. + this.touchpadStartPosition = this.touchpadCurrentPosition + break + case DragType.Touchpad: + this.dragProvider = this.touchpadDragProvider + // Reset the start position of 6DoF to accurately track when the user wants to switch to using 6DoF drag. + this.sixDofStartPosition = this.sixDofCurrentPosition + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MobileInteractor/MobileInteractor.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MobileInteractor/MobileInteractor.ts.meta new file mode 100644 index 00000000..4fb6d976 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MobileInteractor/MobileInteractor.ts.meta @@ -0,0 +1,82 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! d81defaa-c407-472a-8de6-a4a6cc16eeb1 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! d81defaa-c407-472a-8de6-a4a6cc16eeb1 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 3a81eaa4-9bd9-40b8-b925-8ce6ced39d84 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _drawDebug: false + _maxRaycastDistance: false + _touchpadScrollSpeed: false + indirectDragThreshold: false + indirectTargetingVolumeMultiplier: false + initializePositionAndRotationFilter: false + sphereCastEnabled: false + spherecastDistanceThresholds: false + spherecastRadii: false + touchpadDragThreshold: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - sphereCastEnabled: false + indirectTargetingVolumeMultiplier: ! 1.000000 + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectDragThreshold: ! 3.000000 + touchpadDragThreshold: 0.050000 + _touchpadScrollSpeed: ! 250.000000 + initializePositionAndRotationFilter: true + _drawDebug: false + ScriptTypes: + - + {} + InputLines: + - '// @ui {"widget":"group_start", "label":"Interactor"}' + - // @input bool _drawDebug + - '// @ui {"widget":"group_start", "label":"Spherecast Configuration"}' + - // @input bool sphereCastEnabled + - '// @input number[] spherecastRadii = "{0.5, 2.0, 4.0}" {"showIf":"sphereCastEnabled", "showIfValue":true}' + - '// @input number[] spherecastDistanceThresholds = "{0, 12, 30}" {"showIf":"sphereCastEnabled", "showIfValue":true}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Targeting Configuration"}' + - // @input float _maxRaycastDistance = 500 + - // @input float indirectTargetingVolumeMultiplier = 1 + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Indirect Drag Provider"}' + - // @input float indirectDragThreshold = 3 + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Mobile Interactor"}' + - '// @input bool initializePositionAndRotationFilter = true {"hint":"Initialize Mobile Input Data Provider with Position and Rotation Filtering"}' + - // @input float _touchpadScrollSpeed = 250 + - // @input float touchpadDragThreshold = 0.05 + - '// @ui {"widget":"group_end"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MouseInteractor/MouseInteractor.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MouseInteractor/MouseInteractor.ts new file mode 100644 index 00000000..313f2b00 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MouseInteractor/MouseInteractor.ts @@ -0,0 +1,189 @@ +import {InteractableHitInfo} from "../../Providers/TargetProvider/TargetProvider" +import BaseInteractor from "../Interactor/BaseInteractor" +import { + InteractorInputType, + InteractorTriggerType, + TargetingMode, +} from "../Interactor/Interactor" +import MouseTargetProvider from "../Interactor/MouseTargetProvider" +import {TouchRayProvider} from "../Interactor/TouchRayProvider" + +const TARGETING_VOLUME_MULTIPLIER = 1 + +/** + * {@link Interactor} implementation used for touch bases interactions + * to interact with {@link Interactable} components with the mouse cursor + * in preview window of Lens Studio + * + * There are no events for mouse hover in Lens Studio so this class uses some technics to + * achieve both hover and trigger events. + */ +@component +export class MouseInteractor extends BaseInteractor { + @ui.group_start("MouseInteractor") + @input + @hint( + "Sets the return value of MouseInteractor.activeTargetingMode for cases where non-indirect targeting needs to be tested specifically. Useful whenever your code has checks for interactor.activeTargetingMode === TargetingMode.X." + ) + @widget( + new ComboBoxWidget([ + new ComboBoxItem("Direct", 1), + new ComboBoxItem("Indirect", 2), + new ComboBoxItem("All", 3), + new ComboBoxItem("Poke", 4), + ]) + ) + private mouseTargetingMode: number = 2 + @ui.group_end + private isDown = false + + private touchRayProvider!: TouchRayProvider + private mouseTargetProvider!: MouseTargetProvider + + onAwake() { + this.defineSceneEvents() + this.defineTouchEvents() + this.inputType = InteractorInputType.Mouse + + this.touchRayProvider = new TouchRayProvider(this, this.maxRaycastDistance) + this.mouseTargetProvider = new MouseTargetProvider(this as BaseInteractor, { + rayProvider: this.touchRayProvider, + maxRayDistance: this.maxRaycastDistance, + targetingVolumeMultiplier: TARGETING_VOLUME_MULTIPLIER, + shouldPreventTargetUpdate: () => { + return this.currentInteractable !== null && this.isDown + }, + spherecastRadii: this.spherecastRadii, + spherecastDistanceThresholds: this.spherecastDistanceThresholds, + }) + } + + constructor() { + super() + + if (!global.deviceInfoSystem.isEditor()) { + this.interactionManager.deregisterInteractor(this) + this.enabled = false + } + } + + get startPoint(): vec3 | null { + return this.mouseTargetProvider.startPoint + } + + get endPoint(): vec3 | null { + return this.mouseTargetProvider.endPoint + } + + get direction(): vec3 | null { + return this.mouseTargetProvider.direction + } + + get distanceToTarget(): number | null { + return ( + this.mouseTargetProvider.currentInteractableHitInfo?.hit.distance ?? null + ) + } + + get targetHitPosition(): vec3 | null { + return ( + this.mouseTargetProvider.currentInteractableHitInfo?.hit.position ?? null + ) + } + + get targetHitInfo(): InteractableHitInfo | null { + return this.mouseTargetProvider.currentInteractableHitInfo ?? null + } + + get activeTargetingMode(): TargetingMode { + return this.mouseTargetingMode + } + + get maxRaycastDistance(): number { + return this._maxRaycastDistance + } + + get orientation(): quat | null { + return quat.quatIdentity() + } + + get interactionStrength(): number | null { + return this.currentTrigger === InteractorTriggerType.Select ? 1 : 0.5 + } + + /** + * Set if the Interactor is should draw a debug gizmo of collider/raycasts in the scene. + */ + set drawDebug(debug: boolean) { + this._drawDebug = debug + + this.mouseTargetProvider.drawDebug = debug + } + + /** + * @returns if the Interactor is currently drawing a debug gizmo of collider/raycasts in the scene. + */ + get drawDebug(): boolean { + return this._drawDebug + } + + isActive(): boolean { + return this.enabled + } + + isTargeting(): boolean { + return ( + this.touchRayProvider !== undefined && this.touchRayProvider.isAvailable() + ) + } + + override updateState(): void { + super.updateState() + + if (!this.isActive()) { + return + } + + this.mouseTargetProvider.update() + + this.currentInteractable = + this.mouseTargetProvider.currentInteractableHitInfo?.interactable ?? null + + this.currentTrigger = this.isDown + ? InteractorTriggerType.Select + : InteractorTriggerType.None + + this.updateDragVector() + } + + protected clearCurrentHitInfo(): void { + this.mouseTargetProvider.clearCurrentInteractableHitInfo() + } + + private defineSceneEvents(): void { + this.createEvent("OnEnableEvent").bind(() => { + this.enabled = true + }) + + this.createEvent("OnDisableEvent").bind(() => { + this.enabled = false + }) + } + + private defineTouchEvents(): void { + this.createEvent("TouchStartEvent").bind((...args) => + this.onTouchStartEvent(...args) + ) + + this.createEvent("TouchEndEvent").bind((...args) => + this.onTouchEndEvent(...args) + ) + } + private onTouchStartEvent(ev: TouchStartEvent): void { + this.isDown = true + } + + private onTouchEndEvent(ev: TouchEndEvent): void { + this.isDown = false + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MouseInteractor/MouseInteractor.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MouseInteractor/MouseInteractor.ts.meta new file mode 100644 index 00000000..39a16503 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Core/MouseInteractor/MouseInteractor.ts.meta @@ -0,0 +1,76 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 52a65860-24de-431c-b6b7-7a6585a77d3c + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 52a65860-24de-431c-b6b7-7a6585a77d3c + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 98041818-04ed-4d32-9681-c9da213fa6b4 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + _drawDebug: false + _maxRaycastDistance: false + indirectDragThreshold: false + indirectTargetingVolumeMultiplier: false + mouseTargetingMode: false + sphereCastEnabled: false + spherecastDistanceThresholds: false + spherecastRadii: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 3.000000 + _drawDebug: false + mouseTargetingMode: ! 2.000000 + ScriptTypes: + - + {} + InputLines: + - '// @ui {"widget":"group_start", "label":"Interactor"}' + - // @input bool _drawDebug + - '// @ui {"widget":"group_start", "label":"Spherecast Configuration"}' + - // @input bool sphereCastEnabled + - '// @input number[] spherecastRadii = "{0.5, 2.0, 4.0}" {"showIf":"sphereCastEnabled", "showIfValue":true}' + - '// @input number[] spherecastDistanceThresholds = "{0, 12, 30}" {"showIf":"sphereCastEnabled", "showIfValue":true}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Targeting Configuration"}' + - // @input float _maxRaycastDistance = 500 + - // @input float indirectTargetingVolumeMultiplier = 1 + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"Indirect Drag Provider"}' + - // @input float indirectDragThreshold = 3 + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_end"}' + - '// @ui {"widget":"group_start", "label":"MouseInteractor"}' + - '// @input float mouseTargetingMode = 2 {"hint":"Sets the return value of MouseInteractor.activeTargetingMode for cases where non-indirect targeting needs to be tested specifically. Useful whenever your code has checks for interactor.activeTargetingMode === TargetingMode.X.", "widget":"combobox", "values":[{"label":"Direct", "value":1}, {"label":"Indirect", "value":2}, {"label":"All", "value":3}, {"label":"Poke", "value":4}]}' + - '// @ui {"widget":"group_end"}' + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Decorators/Singleton.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Decorators/Singleton.ts new file mode 100644 index 00000000..0fe58701 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Decorators/Singleton.ts @@ -0,0 +1,30 @@ +/** + * A decorator function to make a class a singleton. + * + * @param constructor + */ +export function Singleton any>( + constructor: T +): T { + let _instance: InstanceType | null = null + + const newConstructor: any = function (...args: any[]) { + if (!_instance) { + _instance = new constructor(...args) + } + return _instance + } + + // Copy prototype so instanceof operator still works + newConstructor.prototype = constructor.prototype + + // Add the static `getInstance` method to the decorated class + newConstructor.getInstance = function () { + if (!_instance) { + _instance = new constructor() + } + return _instance! + } + + return newConstructor +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Decorators/Singleton.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Decorators/Singleton.ts.meta new file mode 100644 index 00000000..99d659ee --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Decorators/Singleton.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 4577124a-02c0-40dd-abb6-711348a8fa3f + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 4577124a-02c0-40dd-abb6-711348a8fa3f + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 3810dc44-d475-4aa4-986a-31c3185bea52 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernBodyTube_icon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernBodyTube_icon.mat new file mode 100644 index 00000000..52658b0f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernBodyTube_icon.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 83edd8a7-293d-429b-8a77-faecdbb6c3f6 +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: cc6a2658-c9c4-4200-955e-ea150374967c + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernBodyTube_icon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernBodyTube_icon.mat.meta new file mode 100644 index 00000000..28aa8d01 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernBodyTube_icon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 5e3a10ef-8cca-453d-826a-a8c8e8e6f53c + ImporterName: MaterialImporter + PrimaryAsset: ! 5e3a10ef-8cca-453d-826a-a8c8e8e6f53c + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernFins_icon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernFins_icon.mat new file mode 100644 index 00000000..80279b30 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernFins_icon.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 4b9d60db-ad31-45e2-a721-35b9c12acb46 +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: e5a16836-90b9-4686-894b-671a6e6c915e + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernFins_icon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernFins_icon.mat.meta new file mode 100644 index 00000000..f0984356 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernFins_icon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! d87d9ccc-b812-4ed4-b736-0d6b370151fc + ImporterName: MaterialImporter + PrimaryAsset: ! d87d9ccc-b812-4ed4-b736-0d6b370151fc + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernNoseCone_icon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernNoseCone_icon.mat new file mode 100644 index 00000000..361ef2b6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernNoseCone_icon.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 5a43ba0a-7f09-4ccd-ba1d-e83432931aa3 +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 95f5ad88-bc78-42bc-8f9d-4772aa6fdaa0 + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernNoseCone_icon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernNoseCone_icon.mat.meta new file mode 100644 index 00000000..ae96af51 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/ModernNoseCone_icon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 350d011f-f256-477d-a8d3-32c2f075d507 + ImporterName: MaterialImporter + PrimaryAsset: ! 350d011f-f256-477d-a8d3-32c2f075d507 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekBodyTube_icon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekBodyTube_icon.mat new file mode 100644 index 00000000..8d194071 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekBodyTube_icon.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 879b6940-f953-4737-970c-6187a71eda0c +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: df3b9a95-4d7e-47b1-855a-3d47e21e26bc + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekBodyTube_icon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekBodyTube_icon.mat.meta new file mode 100644 index 00000000..ae152317 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekBodyTube_icon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 744d0ebf-a38c-4ea1-86f5-7e6d5aeea8c0 + ImporterName: MaterialImporter + PrimaryAsset: ! 744d0ebf-a38c-4ea1-86f5-7e6d5aeea8c0 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekFins_icon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekFins_icon.mat new file mode 100644 index 00000000..b62097af --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekFins_icon.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! fdbeb9f7-8e48-4684-ad9d-960554b6d954 +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 2f896f95-a856-47d7-b5a0-5bd4e75787a6 + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekFins_icon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekFins_icon.mat.meta new file mode 100644 index 00000000..2ce9dc71 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekFins_icon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 8e124aaf-dd81-4f54-b216-064a0ce92c6f + ImporterName: MaterialImporter + PrimaryAsset: ! 8e124aaf-dd81-4f54-b216-064a0ce92c6f + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekNoseCone_icon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekNoseCone_icon.mat new file mode 100644 index 00000000..6780ac0b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekNoseCone_icon.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 6cb9ca6c-d6d7-4f3c-a413-2d75c5e89795 +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 0311aabc-2091-4424-a8e6-788f16414f71 + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekNoseCone_icon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekNoseCone_icon.mat.meta new file mode 100644 index 00000000..ed8a385d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SleekNoseCone_icon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 31e11660-d89a-4744-a17f-4fe8c63d9ac2 + ImporterName: MaterialImporter + PrimaryAsset: ! 31e11660-d89a-4744-a17f-4fe8c63d9ac2 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeBodyTube_icon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeBodyTube_icon.mat new file mode 100644 index 00000000..01da5487 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeBodyTube_icon.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! b6ca3432-4c05-4460-9666-a001a6f7c9fd +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: a177cbf2-7a2b-4bff-b9c9-8acc82442799 + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeBodyTube_icon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeBodyTube_icon.mat.meta new file mode 100644 index 00000000..e0b8df79 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeBodyTube_icon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! bbbccf8e-d1a1-4580-8348-cc52637c5249 + ImporterName: MaterialImporter + PrimaryAsset: ! bbbccf8e-d1a1-4580-8348-cc52637c5249 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeFins_icon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeFins_icon.mat new file mode 100644 index 00000000..d81b7578 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeFins_icon.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! e6fda1fc-691f-406d-9a1a-788682971f3c +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 30a613c8-8cfb-4744-8335-7059c3835e14 + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeFins_icon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeFins_icon.mat.meta new file mode 100644 index 00000000..cbc4b801 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeFins_icon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 9228366b-7f28-4dcb-b005-ced91bac69fa + ImporterName: MaterialImporter + PrimaryAsset: ! 9228366b-7f28-4dcb-b005-ced91bac69fa + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeNoseCone_icon.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeNoseCone_icon.mat new file mode 100644 index 00000000..c4ee65fc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeNoseCone_icon.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 1e73fe0b-4ea2-4faf-b4da-fcb4553470f3 +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: false + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: a6dc5752-3f7b-4566-b621-26facc3ef93e + sampler: + filteringMode: Bilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: ClampToEdge + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! c4329789-0e5d-4149-a72a-f94c1c89157c + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeNoseCone_icon.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeNoseCone_icon.mat.meta new file mode 100644 index 00000000..3a3b11d8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Icons/SpaceAgeNoseCone_icon.mat.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + Material: ! 9f7bb172-544f-4eac-9bc1-cd471590c2d5 + ImporterName: MaterialImporter + PrimaryAsset: ! 9f7bb172-544f-4eac-9bc1-cd471590c2d5 + PackageType: NotAPackage + AssetDataMap: + Material: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Meteor.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Meteor.mat new file mode 100644 index 00000000..53ec8dd2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Meteor.mat @@ -0,0 +1,54 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 1fcf936e-878c-40f7-98e2-ff8877b67107 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + PreviewEnabled: + typeIdx: 0 + value: 0 + baseTex: + typeIdx: 9 + value: + id: 60085123-337c-4c07-a3bf-740172bd8632 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! 3a248df4-730c-4a39-b4bd-b285a57eda14 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Meteor.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Meteor.mat.meta new file mode 100644 index 00000000..a8ecf1cb --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Meteor.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 57e56f6b-0632-4d36-829e-5265b4e158ec + ImporterName: MaterialImporter + PrimaryAsset: ! 57e56f6b-0632-4d36-829e-5265b4e158ec + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet.mat new file mode 100644 index 00000000..a17c40dc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet.mat @@ -0,0 +1,243 @@ +- ! + PackagePath: "" + PassesInfo: + - ! fd5eac5d-b16f-4140-b812-7be8188fedba +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Center_N012: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Exponent_N024: + typeIdx: 1 + value: 1.500000 + Port_Input0_N001: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Input1_N001: + typeIdx: 5 + value: {x: 0.890196, y: 0.698039, z: 0.388235, w: 1.000000} + Port_Input1_N010: + typeIdx: 1 + value: 0.500000 + Port_Input2_N026: + typeIdx: 5 + value: {x: 0.501961, y: 0.501961, z: 0.501961, w: 0.501961} + Port_Intensity_N024: + typeIdx: 1 + value: 10.000000 + Port_Normal_N024: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.100000} + Port_Position10_N005: + typeIdx: 1 + value: 0.380000 + Port_Position10_N019: + typeIdx: 1 + value: 0.270000 + Port_Position11_N005: + typeIdx: 1 + value: 0.390000 + Port_Position11_N019: + typeIdx: 1 + value: 0.330000 + Port_Position12_N005: + typeIdx: 1 + value: 0.450000 + Port_Position12_N019: + typeIdx: 1 + value: 0.390000 + Port_Position13_N005: + typeIdx: 1 + value: 0.490000 + Port_Position13_N019: + typeIdx: 1 + value: 0.420000 + Port_Position14_N005: + typeIdx: 1 + value: 0.500000 + Port_Position14_N019: + typeIdx: 1 + value: 0.470000 + Port_Position1_N005: + typeIdx: 1 + value: 0.080000 + Port_Position1_N019: + typeIdx: 1 + value: 0.080000 + Port_Position2_N005: + typeIdx: 1 + value: 0.120000 + Port_Position2_N019: + typeIdx: 1 + value: 0.120000 + Port_Position3_N005: + typeIdx: 1 + value: 0.140000 + Port_Position3_N019: + typeIdx: 1 + value: 0.140000 + Port_Position4_N005: + typeIdx: 1 + value: 0.150000 + Port_Position4_N019: + typeIdx: 1 + value: 0.150000 + Port_Position5_N005: + typeIdx: 1 + value: 0.160000 + Port_Position5_N019: + typeIdx: 1 + value: 0.160000 + Port_Position6_N005: + typeIdx: 1 + value: 0.120000 + Port_Position6_N019: + typeIdx: 1 + value: 0.120000 + Port_Position7_N005: + typeIdx: 1 + value: 0.220000 + Port_Position7_N019: + typeIdx: 1 + value: 0.220000 + Port_Position8_N005: + typeIdx: 1 + value: 0.240000 + Port_Position8_N019: + typeIdx: 1 + value: 0.240000 + Port_Position9_N005: + typeIdx: 1 + value: 0.280000 + Port_Position9_N019: + typeIdx: 1 + value: 0.250000 + Port_Rotation_N002: + typeIdx: 1 + value: -90.000000 + Port_Rotation_N012: + typeIdx: 1 + value: 90.000000 + Port_Value0_N005: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value0_N019: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value10_N005: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value10_N019: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value11_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value11_N019: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value12_N005: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value12_N019: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value13_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value13_N019: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value14_N005: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value14_N019: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value15_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value15_N019: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value1_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value1_N019: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value2_N005: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value2_N019: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value3_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value3_N019: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value4_N005: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value4_N019: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value5_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value5_N019: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value6_N005: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value6_N019: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value7_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value7_N019: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value8_N005: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value8_N019: + typeIdx: 5 + value: {x: 0.898039, y: 0.403922, z: 0.000000, w: 1.000000} + Port_Value9_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + Port_Value9_N019: + typeIdx: 5 + value: {x: 1.000000, y: 0.666667, z: 0.203922, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Pass: ! c77ab7db-4342-48e5-aa2f-62bb7705b911 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet.mat.meta new file mode 100644 index 00000000..082d9cfd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! b4b364af-ee41-4c86-a1ba-a055da762816 + ImporterName: MaterialImporter + PrimaryAsset: ! b4b364af-ee41-4c86-a1ba-a055da762816 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet_rings.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet_rings.mat new file mode 100644 index 00000000..4cdeef82 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet_rings.mat @@ -0,0 +1,168 @@ +- ! + PackagePath: "" + PassesInfo: + - ! e67c783e-8fb4-4621-961d-a3a4868efad2 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N001: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Position10_N002: + typeIdx: 1 + value: 0.360000 + Port_Position11_N002: + typeIdx: 1 + value: 0.370000 + Port_Position12_N002: + typeIdx: 1 + value: 0.410000 + Port_Position13_N002: + typeIdx: 1 + value: 0.450000 + Port_Position14_N002: + typeIdx: 1 + value: 0.510000 + Port_Position1_N000: + typeIdx: 1 + value: 0.130000 + Port_Position1_N002: + typeIdx: 1 + value: 0.060000 + Port_Position2_N000: + typeIdx: 1 + value: 0.180000 + Port_Position2_N002: + typeIdx: 1 + value: 0.080000 + Port_Position3_N000: + typeIdx: 1 + value: 0.170000 + Port_Position3_N002: + typeIdx: 1 + value: 0.090000 + Port_Position4_N000: + typeIdx: 1 + value: 0.240000 + Port_Position4_N002: + typeIdx: 1 + value: 0.100000 + Port_Position5_N000: + typeIdx: 1 + value: 0.330000 + Port_Position5_N002: + typeIdx: 1 + value: 0.160000 + Port_Position6_N000: + typeIdx: 1 + value: 0.470000 + Port_Position6_N002: + typeIdx: 1 + value: 0.180000 + Port_Position7_N002: + typeIdx: 1 + value: 0.190000 + Port_Position8_N002: + typeIdx: 1 + value: 0.300000 + Port_Position9_N002: + typeIdx: 1 + value: 0.350000 + Port_Rotation_N001: + typeIdx: 1 + value: -90.000000 + Port_Value0_N000: + typeIdx: 5 + value: {x: 0.666667, y: 0.345098, z: 0.145098, w: 1.000000} + Port_Value0_N002: + typeIdx: 1 + value: 0.000000 + Port_Value10_N002: + typeIdx: 1 + value: 0.000000 + Port_Value11_N002: + typeIdx: 1 + value: 0.000000 + Port_Value12_N002: + typeIdx: 1 + value: 1.000000 + Port_Value13_N002: + typeIdx: 1 + value: 1.000000 + Port_Value14_N002: + typeIdx: 1 + value: 0.000000 + Port_Value15_N002: + typeIdx: 1 + value: 1.000000 + Port_Value1_N000: + typeIdx: 5 + value: {x: 0.968627, y: 0.733333, z: 0.329412, w: 1.000000} + Port_Value1_N002: + typeIdx: 1 + value: 1.000000 + Port_Value2_N000: + typeIdx: 5 + value: {x: 0.988235, y: 0.627451, z: 0.000000, w: 1.000000} + Port_Value2_N002: + typeIdx: 1 + value: 1.000000 + Port_Value3_N000: + typeIdx: 5 + value: {x: 0.713726, y: 0.419608, z: 0.003922, w: 1.000000} + Port_Value3_N002: + typeIdx: 1 + value: 0.000000 + Port_Value4_N000: + typeIdx: 5 + value: {x: 0.988235, y: 0.627451, z: 0.000000, w: 1.000000} + Port_Value4_N002: + typeIdx: 1 + value: 1.000000 + Port_Value5_N000: + typeIdx: 5 + value: {x: 0.988235, y: 0.858824, z: 0.470588, w: 1.000000} + Port_Value5_N002: + typeIdx: 1 + value: 1.000000 + Port_Value6_N000: + typeIdx: 5 + value: {x: 0.988235, y: 0.686275, z: 0.341176, w: 1.000000} + Port_Value6_N002: + typeIdx: 1 + value: 0.000000 + Port_Value7_N000: + typeIdx: 5 + value: {x: 0.666667, y: 0.345098, z: 0.145098, w: 0.000000} + Port_Value7_N002: + typeIdx: 1 + value: 1.000000 + Port_Value8_N002: + typeIdx: 1 + value: 1.000000 + Port_Value9_N002: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Pass: ! 53b176a1-1797-414e-a644-318f89b62222 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet_rings.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet_rings.mat.meta new file mode 100644 index 00000000..e10511b6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Planet_rings.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 7f82b210-b438-4633-853e-6f804c2638bb + ImporterName: MaterialImporter + PrimaryAsset: ! 7f82b210-b438-4633-853e-6f804c2638bb + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Platform.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Platform.mat new file mode 100644 index 00000000..421dd15a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Platform.mat @@ -0,0 +1,108 @@ +- ! + PackagePath: "" + PassesInfo: + - ! f1fc3c98-b329-4c7b-b53f-c07f9449213c +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 0.223529, y: 0.223529, z: 0.223529, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: fd087204-9411-4134-a7ae-fc7d4cb32a14 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 0.372549, y: 0.372549, z: 0.372549, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 0.498039, y: 0.498039, z: 0.498039, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.710000 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.270000 + Pass: ! 3eba1ac9-5348-410d-8dfd-89f67dfd02d6 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Platform.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Platform.mat.meta new file mode 100644 index 00000000..9c484f96 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Platform.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! ab483a45-8677-4f11-8cd0-5c5d4a239a94 + ImporterName: MaterialImporter + PrimaryAsset: ! ab483a45-8677-4f11-8cd0-5c5d4a239a94 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_fire.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_fire.mat new file mode 100644 index 00000000..b2662875 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_fire.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 00940ebc-7612-4455-b8fb-6a4b74b93fb3 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 1.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 1.000000, y: 0.533333, z: 0.000000, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 1.000000, y: 0.988235, z: 0.000000, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 1.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.000000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_fire.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_fire.mat.meta new file mode 100644 index 00000000..bc30c83d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_fire.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! b752c41e-b2db-4e93-b562-23d05e916d79 + ImporterName: MaterialImporter + PrimaryAsset: ! b752c41e-b2db-4e93-b562-23d05e916d79 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass.mat new file mode 100644 index 00000000..d72c045a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass.mat @@ -0,0 +1,167 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 456ae609-20e9-4a1d-822a-6252ae6a55b4 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - NODE_27_DROPLIST_ITEM 0 + - NODE_29_DROPLIST_ITEM 0 + - Tweak_N37 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Center_N025: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Center_N047: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Import_N031: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Import_N038: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Import_N058: + typeIdx: 3 + value: {x: 0.000000, y: 0.650000} + Port_Import_N060: + typeIdx: 3 + value: {x: 0.000000, y: -0.500000} + Port_Input0_N066: + typeIdx: 1 + value: 0.000000 + Port_Input1_N029: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Input1_N065: + typeIdx: 1 + value: 0.000000 + Port_Input1_N066: + typeIdx: 1 + value: 1.000000 + Port_Input2_N065: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N033: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N033: + typeIdx: 1 + value: 1.000000 + Port_RangeMinA_N033: + typeIdx: 1 + value: 0.000000 + Port_RangeMinB_N033: + typeIdx: 1 + value: -1.000000 + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Scale_N025: + typeIdx: 3 + value: {x: 5.000000, y: 5.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 0.541176, y: 0.705882, z: 0.929412, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 0.541176, y: 0.705882, z: 0.929412, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 0.541176, y: 0.705882, z: 0.929412, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: a003dca6-fa76-4dc4-b33e-4a38fc750db9 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.550000 + Pass: ! f092ba3c-de20-41ce-90c7-0bda1f84a95e + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass.mat.meta new file mode 100644 index 00000000..dcb3e124 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 50159f70-05fb-4662-a5c4-ed01c233c88d + ImporterName: MaterialImporter + PrimaryAsset: ! 50159f70-05fb-4662-a5c4-ed01c233c88d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass_satellite.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass_satellite.mat new file mode 100644 index 00000000..cb649640 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass_satellite.mat @@ -0,0 +1,124 @@ +- ! + PackagePath: "" + PassesInfo: + - ! aaa64fd9-9827-4d40-8f6c-8b2b12677adf +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - NODE_27_DROPLIST_ITEM 0 + - NODE_29_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Center_N025: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Scale_N025: + typeIdx: 3 + value: {x: 5.000000, y: 5.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 0.290196, y: 0.560784, z: 1.000000, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 0.290196, y: 0.560784, z: 1.000000, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 0.290196, y: 0.560784, z: 1.000000, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: a003dca6-fa76-4dc4-b33e-4a38fc750db9 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.550000 + Pass: ! f092ba3c-de20-41ce-90c7-0bda1f84a95e + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass_satellite.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass_satellite.mat.meta new file mode 100644 index 00000000..52f9d9fd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_glass_satellite.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 5d1d6397-ae85-4e5f-ab2c-6cce45791d26 + ImporterName: MaterialImporter + PrimaryAsset: ! 5d1d6397-ae85-4e5f-ab2c-6cce45791d26 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_grey.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_grey.mat new file mode 100644 index 00000000..56fe7b46 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_grey.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 400c584f-ec5e-4cfb-bcbb-593f393e54ba +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 0.529412, y: 0.529412, z: 0.529412, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 0.529412, y: 0.529412, z: 0.529412, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 0.529412, y: 0.529412, z: 0.529412, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 1.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.200000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_grey.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_grey.mat.meta new file mode 100644 index 00000000..e7dc76d1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_grey.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 9e34582c-f54f-4423-a72e-5f521a8f816a + ImporterName: MaterialImporter + PrimaryAsset: ! 9e34582c-f54f-4423-a72e-5f521a8f816a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal.mat new file mode 100644 index 00000000..09964085 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 8c05ad01-10a1-4976-8354-d28a3a38545e +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 0.352941, y: 0.352941, z: 0.352941, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 0.584314, y: 0.584314, z: 0.584314, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 0.439216, y: 0.439216, z: 0.439216, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.710000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 1.000000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal.mat.meta new file mode 100644 index 00000000..40b1fca0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 7630d75e-c089-474f-917b-7571a900f1e2 + ImporterName: MaterialImporter + PrimaryAsset: ! 7630d75e-c089-474f-917b-7571a900f1e2 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal_red.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal_red.mat new file mode 100644 index 00000000..39b78cf9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal_red.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 1de6221a-9822-4338-9645-62f6d2018a4b +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 1.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 1.000000, y: 0.015686, z: 0.000000, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 1.000000, y: 0.015686, z: 0.000000, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 1.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.790000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal_red.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal_red.mat.meta new file mode 100644 index 00000000..8a3e5d70 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_metal_red.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! ac5e049b-c43a-415b-8e44-5f8798debb0c + ImporterName: MaterialImporter + PrimaryAsset: ! ac5e049b-c43a-415b-8e44-5f8798debb0c + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_01.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_01.mat new file mode 100644 index 00000000..a6466fcb --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_01.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! c288d07a-5235-4f18-9ea0-62952c564952 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 1.000000, y: 0.015686, z: 0.000000, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 1.000000, y: 0.015686, z: 0.000000, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 0.470588, y: 0.000000, z: 0.000000, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.610000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_01.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_01.mat.meta new file mode 100644 index 00000000..aa3fc8ac --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_01.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! f38add9d-489d-422d-ad03-73c42eddec40 + ImporterName: MaterialImporter + PrimaryAsset: ! f38add9d-489d-422d-ad03-73c42eddec40 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_02.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_02.mat new file mode 100644 index 00000000..17b0e2be --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_02.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 2f66695a-842a-4d46-a3fd-ef65943c4cf0 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 0.101961, y: 0.196109, z: 0.565972, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 0.035294, y: 0.276722, z: 0.564736, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 0.023529, y: 0.771084, z: 0.884565, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.520000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_02.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_02.mat.meta new file mode 100644 index 00000000..297203bf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_02.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! cfd24310-2219-4548-a8a6-1cffadc84712 + ImporterName: MaterialImporter + PrimaryAsset: ! cfd24310-2219-4548-a8a6-1cffadc84712 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03.mat new file mode 100644 index 00000000..34f002c6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 7691beb4-e569-4ced-98fe-3d6b7195cac5 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 1.000000, y: 0.988235, z: 0.000000, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 1.000000, y: 0.988235, z: 0.000000, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 0.882353, y: 0.242863, z: 0.000000, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.470000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.600000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03.mat.meta new file mode 100644 index 00000000..ea6d9d4f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 37852eb4-7e77-4068-bab4-e79b1e75bb8d + ImporterName: MaterialImporter + PrimaryAsset: ! 37852eb4-7e77-4068-bab4-e79b1e75bb8d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03_logo.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03_logo.mat new file mode 100644 index 00000000..da45ae58 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03_logo.mat @@ -0,0 +1,159 @@ +- ! + PackagePath: "" + PassesInfo: + - ! eb03e661-80c3-4f47-add7-36cfb082afaf +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - Tweak_N37 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Center_N060: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Offset_N062: + typeIdx: 3 + value: {x: -0.050000, y: 0.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 1.000000, y: 0.988235, z: 0.000000, w: 1.000000} + Tweak_N25: + typeIdx: 9 + value: + id: f9cdd2df-a667-4be8-a3ca-a5b07c103b0e + sampler: + filteringMode: Trilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N25BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N25Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N25Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N25UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N64: + typeIdx: 1 + value: 1.420000 + Tweak_N66: + typeIdx: 1 + value: 2.130000 + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 1.000000, y: 0.988235, z: 0.000000, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 1.000000, y: 0.988235, z: 0.000000, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.470000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.600000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03_logo.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03_logo.mat.meta new file mode 100644 index 00000000..4a4498b9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_plastic_03_logo.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! b5c1eccd-f8f6-45b8-9b78-3129cf89d0a2 + ImporterName: MaterialImporter + PrimaryAsset: ! b5c1eccd-f8f6-45b8-9b78-3129cf89d0a2 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white.mat new file mode 100644 index 00000000..e8e30083 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 5677017c-ccf6-47df-a341-d2ded393f928 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 1.000000, y: 0.964706, z: 0.933333, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 1.000000, y: 0.964706, z: 0.933333, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 1.000000, y: 0.964706, z: 0.933333, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.710000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: -0.150000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white.mat.meta new file mode 100644 index 00000000..855b880c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! f30b1cbf-55cb-4854-918a-d6f5b68ff302 + ImporterName: MaterialImporter + PrimaryAsset: ! f30b1cbf-55cb-4854-918a-d6f5b68ff302 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white_logo.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white_logo.mat new file mode 100644 index 00000000..fbab466c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white_logo.mat @@ -0,0 +1,159 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 6e39a140-f3af-49b9-a2c8-f399d24ec6ad +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - Tweak_N37 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Center_N060: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Offset_N062: + typeIdx: 3 + value: {x: -0.050000, y: 0.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 1.000000, y: 0.964706, z: 0.933333, w: 1.000000} + Tweak_N25: + typeIdx: 9 + value: + id: 4ce82aa3-8e78-4e2c-b693-4224248bba87 + sampler: + filteringMode: Trilinear + wrapModeU: ClampToEdge + wrapModeV: ClampToEdge + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N25BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N25Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N25Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N25UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N64: + typeIdx: 1 + value: 2.080000 + Tweak_N66: + typeIdx: 1 + value: 1.900000 + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 1.000000, y: 0.964706, z: 0.933333, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 1.000000, y: 0.964706, z: 0.933333, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.710000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: -0.150000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white_logo.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white_logo.mat.meta new file mode 100644 index 00000000..a12eb1f5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Rocket_white_logo.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 7fe04302-2264-4d1f-8d8f-92cbeaf46a51 + ImporterName: MaterialImporter + PrimaryAsset: ! 7fe04302-2264-4d1f-8d8f-92cbeaf46a51 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Satellite_blue.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Satellite_blue.mat new file mode 100644 index 00000000..a3ecebbd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Satellite_blue.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 604c3a68-980a-4e1a-8905-090d9d3548af +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N003: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N013: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Rotation_N003: + typeIdx: 1 + value: 90.000000 + Port_Value2_N053: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N2: + typeIdx: 5 + value: {x: 0.078431, y: 0.176471, z: 0.572549, w: 1.000000} + Tweak_N6: + typeIdx: 9 + value: + id: 09760f3a-f73e-482b-a710-aeee74246f02 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N6BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N6Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N6UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N8: + typeIdx: 5 + value: {x: 0.078431, y: 0.176471, z: 0.572549, w: 1.000000} + Tweak_N9: + typeIdx: 5 + value: {x: 0.078431, y: 0.176471, z: 0.572549, w: 1.000000} + colorRatio: + typeIdx: 1 + value: 0.270000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + planet_refl_map: + typeIdx: 9 + value: + id: ac2798fc-6df2-44d0-8d4e-871d24cccc4d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + planet_refl_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + planet_refl_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + planet_refl_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + reflIntensity: + typeIdx: 1 + value: 0.490000 + Pass: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + RTCaster: false + RTReceiver: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Satellite_blue.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Satellite_blue.mat.meta new file mode 100644 index 00000000..820e38c5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Materials/Objects/SIK_Satellite_blue.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 09db06bf-3b9e-41dd-b6a0-a7da122ffade + ImporterName: MaterialImporter + PrimaryAsset: ! 09db06bf-3b9e-41dd-b6a0-a7da122ffade + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/Bases.fbx b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/Bases.fbx new file mode 100644 index 00000000..15124177 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/Bases.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34d5d501702f820221cdf49ddd1f6ae37a77ca779d13d1e520ee2de6a0413bc2 +size 34108 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/Bases.fbx.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/Bases.fbx.meta new file mode 100644 index 00000000..b4df00a5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/Bases.fbx.meta @@ -0,0 +1,190 @@ +- ! + ImportedAssetIds: + .hidden/Lightbake.001: ! 207bfbbd-e402-46f2-ae52-284f33453580 + .hidden/white: ! 320ace7d-8386-4873-899c-e9d9aad90e7d + Materials/Lightbake.001: ! 23811c3a-1bdb-4936-a76c-95ecf6af2238 + Materials/Lightbake.001|Lightbake.001|GraphPassInfo: ! 7fbc0d19-6558-42d8-b453-b7e40d89c5c4 + Meshes/Circular: ! e7bb3308-12a7-4fa8-93b1-14b414b79f5a + Meshes/Cubic_01: ! 5c4facb7-b6bc-44b0-9a87-60357c267787 + Meshes/Hexagon_01: ! 77876113-6295-4e1f-8432-ae02f8f4c0bd + Scene: ! fc6400ab-da4a-4a59-b7a8-12fdc27c0ee1 + _3DSceneImportRoot_0|: ! 1f40283b-7a57-4cc8-85e4-8ed26c479b88 + _3DSceneImportRoot_0|_Circular_2|: ! 29515ae1-635c-4c8c-a23c-ca6c8bf06f1d + _3DSceneImportRoot_0|_Circular_2|_RenderMeshVisual_0|: ! c401d9a7-87b9-48bd-b0a1-ca2232982975 + _3DSceneImportRoot_0|_Cubic_01_1|: ! ec53a26e-befd-4078-a9f3-d060b8d2e25f + _3DSceneImportRoot_0|_Cubic_01_1|_RenderMeshVisual_0|: ! f434af13-ea27-4b68-b972-311b3f1698f4 + _3DSceneImportRoot_0|_Hexagon_01_0|: ! ec51aecd-f34c-4faf-b718-2973f5d496e6 + _3DSceneImportRoot_0|_Hexagon_01_0|_RenderMeshVisual_0|: ! 26f04bda-9517-4535-84c0-48e8c65a32f8 + ImporterName: FbxImporter + PrimaryAsset: ! fc6400ab-da4a-4a59-b7a8-12fdc27c0ee1 + PackageType: LegacyPackage + PackagePolicy: CanBeUnpacked + AssetDataMap: + Scene: ! 02b4419f-46fc-4a73-8207-b7941db0c8db + DependentFiles: + [] + ImporterSettings: ! + UseLegacyImporter: false + WithMaterials: true + NamingConvention: ByCategory + AnimationCurveOptimization: true + CustomAnimationSamplingRate: 30.000000 + ImportVertexColor: true + ImportTangentsAndBinormals: true + RegenerateTangentsAndBinormals: false + RegenerateNormalsForSkinnedMeshes: true + ImportBlendShapeAnimation: true + ImportVertexAnimation: true + GeneratePivots: true + TriangulateNURBS: true + UseLegacyFbxLoader: false + PersistentIdGenerationAlgorithm: Legacy + CompressionSettings: ! + Presets: + None Compression: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtensionMappings: + mesh: None Compression + Overrides: + {} + ExtraData: + {} +- ! + SourceRemaps: + - 1f40283b-7a57-4cc8-85e4-8ed26c479b88: 3435bba3-9017-42aa-a9db-452defe0ece9 + - 26f04bda-9517-4535-84c0-48e8c65a32f8: 4bbd1b06-ed9d-4bfb-9306-75cdc611c26b + - 29515ae1-635c-4c8c-a23c-ca6c8bf06f1d: eca65803-44ed-41e8-b8ad-4406b9f5fdd1 + - c401d9a7-87b9-48bd-b0a1-ca2232982975: 0b78386f-20e0-494c-81e1-f54f51ce8c9a + - ec51aecd-f34c-4faf-b718-2973f5d496e6: 2846c39a-ce8f-4609-883a-78b8550fe917 + - ec53a26e-befd-4078-a9f3-d060b8d2e25f: 256830c8-3590-41f5-9817-1b29040fda5a + - f434af13-ea27-4b68-b972-311b3f1698f4: 31f004b6-648c-4802-82a8-8ce1e080d833 + SourceState: ! 3cd6a850-30c3-4201-903a-d414c6441ff3 +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 23811c3a-1bdb-4936-a76c-95ecf6af2238 + Mesh: ! e7bb3308-12a7-4fa8-93b1-14b414b79f5a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Cubic_01 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 31f004b6-648c-4802-82a8-8ce1e080d833 +- ! + PrefabRemaps: + [] + Name: Hexagon_01 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4bbd1b06-ed9d-4bfb-9306-75cdc611c26b +- ! + PrefabRemaps: + [] + Name: component_1 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 23811c3a-1bdb-4936-a76c-95ecf6af2238 + Mesh: ! 5c4facb7-b6bc-44b0-9a87-60357c267787 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Bases + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2846c39a-ce8f-4609-883a-78b8550fe917 + - ! 256830c8-3590-41f5-9817-1b29040fda5a + - ! eca65803-44ed-41e8-b8ad-4406b9f5fdd1 + Components: + [] +- ! + PackagePath: "" + objects: + - ! 3435bba3-9017-42aa-a9db-452defe0ece9 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 23811c3a-1bdb-4936-a76c-95ecf6af2238 + Mesh: ! 77876113-6295-4e1f-8432-ae02f8f4c0bd + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Circular + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0b78386f-20e0-494c-81e1-f54f51ce8c9a diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/SIK_Rockets.fbx b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/SIK_Rockets.fbx new file mode 100644 index 00000000..eb095f1e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/SIK_Rockets.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f57676d0c8f0a6a09a876581642f5b67bc0a1c55a2ae44c6894ffc3fd4d88e31 +size 803660 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/SIK_Rockets.fbx.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/SIK_Rockets.fbx.meta new file mode 100644 index 00000000..57190a9a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Meshes/SIK_Rockets.fbx.meta @@ -0,0 +1,945 @@ +- ! + ImportedAssetIds: + Meshes/Meteor: ! 9ab42643-fa56-4906-8dc6-c9cb4b53034f + Meshes/Planet: ! eb9c4a4a-8795-4ce9-9f28-3fa5870debeb + Meshes/Planet1: ! 7ba378bf-39c6-4345-acbf-9e09fff8deaa + Meshes/Rocket_01_bottom: ! b705f36d-9e18-4fda-b94f-067b9ab34ee0 + Meshes/Rocket_01_bottom1: ! 0bd54fec-e05b-4bcb-9c1e-eec19e3d3063 + Meshes/Rocket_01_bottom2: ! 88f899e7-9590-4dee-964f-ce40a022f07a + Meshes/Rocket_01_bottom3: ! 7b07b906-5237-4aba-bd64-8ca9d8e1c9fc + Meshes/Rocket_01_middle: ! 146f6e8f-d5d8-4f37-a364-f5fd53e7ffd4 + Meshes/Rocket_01_middle1: ! e833bcb6-6e61-4630-a40f-854c64276405 + Meshes/Rocket_01_middle2: ! 06a41d56-e716-4015-b950-8778506335af + Meshes/Rocket_01_top: ! 3dae7dac-7880-46bf-89ee-c5b255a34762 + Meshes/Rocket_01_top1: ! 1b2f6a59-990e-4833-baac-c0cbe117c66d + Meshes/Rocket_02_bottom: ! d939f3b0-8db9-4798-9298-7f08066b3614 + Meshes/Rocket_02_middle: ! 60984803-0479-49fb-8ace-87319126e843 + Meshes/Rocket_02_top: ! 86d6eeb7-1007-4ff6-958f-5bbfa5bab327 + Meshes/Rocket_03_bottom: ! 6df66694-4b1b-4e96-a8a0-0d6e2723bd7e + Meshes/Rocket_03_bottom1: ! a47982fc-9d96-484f-aa08-39c865a8b2be + Meshes/Rocket_03_bottom2: ! 62f26ce0-c005-4d10-9699-e72cffedf047 + Meshes/Rocket_03_bottom3: ! 0ff4db03-95f6-4b2d-9ea6-5439799edf59 + Meshes/Rocket_03_bottom4: ! 4d3be133-9482-45ce-a384-fddf87f4ac0b + Meshes/Rocket_03_middle: ! 7fbd5be2-a226-4326-b016-577f61c9a2b8 + Meshes/Rocket_03_top: ! 1c95cf09-b15f-4723-9825-f1661a5148f2 + Meshes/Rocket_03_top1: ! 94f8a9c7-d77e-47af-8528-0a63dc9a861e + Meshes/Rocket_03_top2: ! 7009f208-56d4-42c2-bc1e-c77857d5553c + Meshes/Satellite: ! 18828ccb-4865-4bf5-b7c5-fdec9ae7650e + Meshes/Satellite1: ! dfb8556d-a943-41b2-a69f-1a525c358172 + Meshes/Satellite2: ! d5389096-6ff6-4687-a39d-88838ca6ce61 + Meshes/Satellite3: ! 41ed7fd3-6772-4318-9758-7be2e92a7d59 + Scene: ! be15cf62-da40-4035-a7ff-fe43fd2082d8 + _3DSceneImportRoot_0|: ! 3dbf7af0-e736-465d-aa58-360cda287ca3 + _3DSceneImportRoot_0|_Meteor_0|: ! d6b2cacd-6acc-4f9c-b1cb-29036b713207 + _3DSceneImportRoot_0|_Meteor_0|_RenderMeshVisual_0|: ! 67d27210-b8b3-4d55-aa41-89e03596c2ba + _3DSceneImportRoot_0|_Planet_11|: ! 51e4d7d3-0b6c-45ed-b3cf-8b0889b91d42 + _3DSceneImportRoot_0|_Planet_11|_RenderMeshVisual_0|: ! a22fef0b-a66f-4b47-930e-2695a65d2014 + _3DSceneImportRoot_0|_Planet_11|_RenderMeshVisual_1|: ! a28b3010-8906-4fc7-b15a-eb2616d32331 + _3DSceneImportRoot_0|_Rocket_01_bottom_8|: ! 57356883-01b7-4a3b-87b8-564ad04f0802 + _3DSceneImportRoot_0|_Rocket_01_bottom_8|_RenderMeshVisual_0|: ! 59854f3d-602f-41f0-b822-620883d7107c + _3DSceneImportRoot_0|_Rocket_01_bottom_8|_RenderMeshVisual_1|: ! 924c2710-902d-47f0-a3db-0e2163fcd23c + _3DSceneImportRoot_0|_Rocket_01_bottom_8|_RenderMeshVisual_2|: ! e8444479-0c8d-4a48-99f2-99ad1d044674 + _3DSceneImportRoot_0|_Rocket_01_bottom_8|_RenderMeshVisual_3|: ! 8eaa543a-a5c2-4088-9c77-56a7ab596789 + _3DSceneImportRoot_0|_Rocket_01_middle_7|: ! f703209b-efed-46fe-a501-00fc192f2c4b + _3DSceneImportRoot_0|_Rocket_01_middle_7|_RenderMeshVisual_0|: ! 67496b2d-219e-4ac6-b0b3-15011c089160 + _3DSceneImportRoot_0|_Rocket_01_middle_7|_RenderMeshVisual_1|: ! 95aff8e1-edab-44a6-93c1-63fc7733b35b + _3DSceneImportRoot_0|_Rocket_01_middle_7|_RenderMeshVisual_2|: ! a089e947-01e6-486a-aaa7-43f03152b6d4 + _3DSceneImportRoot_0|_Rocket_01_top_9|: ! 879107ea-c632-4916-9971-463c06c86428 + _3DSceneImportRoot_0|_Rocket_01_top_9|_RenderMeshVisual_0|: ! 21b0bbc5-aab5-47fb-8f75-f060d9b71de8 + _3DSceneImportRoot_0|_Rocket_01_top_9|_RenderMeshVisual_1|: ! 5162cfba-6d7b-457d-87e4-37ec2ec55599 + _3DSceneImportRoot_0|_Rocket_02_bottom_4|: ! 0ee3cfc8-734b-478c-8f5e-8d77abb21e34 + _3DSceneImportRoot_0|_Rocket_02_bottom_4|_RenderMeshVisual_0|: ! 0f1a46c4-480e-4acc-b7bb-84e70d871ee6 + _3DSceneImportRoot_0|_Rocket_02_middle_5|: ! 8a2d5bbf-eddf-46c4-84af-247413ad5c6f + _3DSceneImportRoot_0|_Rocket_02_middle_5|_RenderMeshVisual_0|: ! 904323d2-ddb4-49e1-bc0a-06f50ac28c18 + _3DSceneImportRoot_0|_Rocket_02_top_6|: ! 9f9cd066-8e78-4202-a90b-fd958ec55f49 + _3DSceneImportRoot_0|_Rocket_02_top_6|_RenderMeshVisual_0|: ! 02ed6fe8-aa6d-44c1-93a2-8ab03be182b8 + _3DSceneImportRoot_0|_Rocket_03_bottom_2|: ! 828a3f04-b949-41d2-9d11-f000e7a9391b + _3DSceneImportRoot_0|_Rocket_03_bottom_2|_RenderMeshVisual_0|: ! d795b32d-208d-4a52-8c41-c5d8b022d548 + _3DSceneImportRoot_0|_Rocket_03_bottom_2|_RenderMeshVisual_1|: ! 91d650a5-6af8-4d3a-83fd-0385034c1a80 + _3DSceneImportRoot_0|_Rocket_03_bottom_2|_RenderMeshVisual_2|: ! cb64ed46-703b-4441-b62b-aa96e7441bef + _3DSceneImportRoot_0|_Rocket_03_bottom_2|_RenderMeshVisual_3|: ! 21c7fc78-6819-41fe-8c77-05753762edf6 + _3DSceneImportRoot_0|_Rocket_03_bottom_2|_RenderMeshVisual_4|: ! 2b8f8952-236d-44b9-8d92-a96fa345fbc4 + _3DSceneImportRoot_0|_Rocket_03_middle_3|: ! 858fb21c-1346-4590-9621-d1f1d53b4662 + _3DSceneImportRoot_0|_Rocket_03_middle_3|_RenderMeshVisual_0|: ! 604a6623-ba9f-4f23-b25a-fb0e4e74adf9 + _3DSceneImportRoot_0|_Rocket_03_top_1|: ! 6614f18e-e041-466e-8cfc-bb4deefe3ec0 + _3DSceneImportRoot_0|_Rocket_03_top_1|_RenderMeshVisual_0|: ! 5fd29402-9dd0-4de7-b072-4e253ae50dc0 + _3DSceneImportRoot_0|_Rocket_03_top_1|_RenderMeshVisual_1|: ! a9344fc5-fa94-422e-8c38-17d859173692 + _3DSceneImportRoot_0|_Rocket_03_top_1|_RenderMeshVisual_2|: ! 04444faa-e3e9-4e17-a510-5e290b1dc6ab + _3DSceneImportRoot_0|_Satellite_10|: ! 721a1148-6adc-4c9b-8c22-e2b65181817a + _3DSceneImportRoot_0|_Satellite_10|_RenderMeshVisual_0|: ! 46e9bc77-a71b-44ce-8c03-fdc6b6502581 + _3DSceneImportRoot_0|_Satellite_10|_RenderMeshVisual_1|: ! 7f63c4aa-e873-440b-82c6-2c1a053bd771 + _3DSceneImportRoot_0|_Satellite_10|_RenderMeshVisual_2|: ! 95d1df9a-24d4-4c6b-840d-e9d2d9be856b + _3DSceneImportRoot_0|_Satellite_10|_RenderMeshVisual_3|: ! 32c0d1ff-143a-49ab-8241-70c1e0eb0221 + ImporterName: FbxImporter + PrimaryAsset: ! be15cf62-da40-4035-a7ff-fe43fd2082d8 + PackageType: LegacyPackage + PackagePolicy: CanBeUnpacked + AssetDataMap: + Scene: ! 2536ef34-9dae-47c6-a7e3-febf31a85b31 + DependentFiles: + [] + ImporterSettings: ! + UseLegacyImporter: false + WithMaterials: false + NamingConvention: ByCategory + AnimationCurveOptimization: true + CustomAnimationSamplingRate: 30.000000 + ImportVertexColor: true + ImportTangentsAndBinormals: true + RegenerateTangentsAndBinormals: false + RegenerateNormalsForSkinnedMeshes: false + ImportBlendShapeAnimation: true + ImportVertexAnimation: true + GeneratePivots: true + TriangulateNURBS: true + UseLegacyFbxLoader: false + PersistentIdGenerationAlgorithm: Legacy + CompressionSettings: ! + Presets: + None Compression: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + Performance Compression: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtensionMappings: + mesh: None Compression + jpg: Performance Compression + Overrides: + {} + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: component_17 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 05e0dba6-c028-4097-8b6c-57a2cbfb9cc4 + Mesh: ! 0bd54fec-e05b-4bcb-9c1e-eec19e3d3063 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: SIK_Rockets + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 92f85e29-20a5-4382-8387-d63a0769ee0f + - ! 3372b332-9e7e-49cf-97f0-fb1cf909276d + - ! 2234d4da-017d-4049-8089-7c43cf5f1950 + - ! eeac80db-518a-45bf-9dfe-5237edc8c532 + - ! ecedabbd-cc6c-4468-a657-a8a4037d6bc2 + - ! 85788fcd-c56c-4dce-8188-35ac689ca3e6 + - ! 9622859b-1cb7-49b5-9319-7bb4983ee19b + - ! 9e38680b-544e-4376-b137-7ce4341ba16f + - ! 95ffd9ce-cbc1-4af7-8118-b3956674aacb + - ! aa757a1c-a887-4cdc-a602-cec273c1eb48 + - ! ca726ab7-404e-4818-8fc0-0778d27bede8 + - ! ae16b9a2-2f91-4ba7-9343-cbfebfe3c70c + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_15 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 23e54b3f-d19f-460b-a175-04aeaaf6a8fd + Mesh: ! 06a41d56-e716-4015-b950-8778506335af + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_23 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 6eff5bc7-5581-4a49-b7c0-75132215b602 + Mesh: ! dfb8556d-a943-41b2-a69f-1a525c358172 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Rocket_03_bottom + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! feae2640-5d34-4eb6-830f-7f600230f3e6 + - ! 6f6fbb06-ebfb-42cb-a6c2-53a0ba83d6e9 + - ! bfa3d898-8d50-4cd2-a9d7-31027b08aa17 + - ! 4a20604f-7423-4379-8e76-d27200882121 + - ! 445934e1-b0fa-422a-8d0b-5e31c8c2d90b +- ! + SourceRemaps: + - 02ed6fe8-aa6d-44c1-93a2-8ab03be182b8: 4d38c146-ef19-406e-91b8-fd4fc86560d0 + - 04444faa-e3e9-4e17-a510-5e290b1dc6ab: cce6c217-2948-4dff-a636-df2a5ea47eac + - 0ee3cfc8-734b-478c-8f5e-8d77abb21e34: ecedabbd-cc6c-4468-a657-a8a4037d6bc2 + - 0f1a46c4-480e-4acc-b7bb-84e70d871ee6: cbe9872a-c8e2-436f-9cf5-fbea58cb0f9f + - 21b0bbc5-aab5-47fb-8f75-f060d9b71de8: c60e4453-bec1-43c6-86ba-dde1dec6f193 + - 21c7fc78-6819-41fe-8c77-05753762edf6: 4a20604f-7423-4379-8e76-d27200882121 + - 2b8f8952-236d-44b9-8d92-a96fa345fbc4: 445934e1-b0fa-422a-8d0b-5e31c8c2d90b + - 32c0d1ff-143a-49ab-8241-70c1e0eb0221: b61b7861-3bdb-4790-a9b9-0488d7c48f29 + - 3dbf7af0-e736-465d-aa58-360cda287ca3: 0544d1d6-f8fc-4f44-aad6-9ab4f8ab1702 + - 46e9bc77-a71b-44ce-8c03-fdc6b6502581: 7e1fe566-0e3f-44b0-b3f8-79732db160e4 + - 5162cfba-6d7b-457d-87e4-37ec2ec55599: f1a0eaad-7591-4b2f-a371-48092df5fa74 + - 51e4d7d3-0b6c-45ed-b3cf-8b0889b91d42: ae16b9a2-2f91-4ba7-9343-cbfebfe3c70c + - 57356883-01b7-4a3b-87b8-564ad04f0802: 95ffd9ce-cbc1-4af7-8118-b3956674aacb + - 59854f3d-602f-41f0-b822-620883d7107c: 31403b7e-9e11-44f6-9a37-e683c410754c + - 5fd29402-9dd0-4de7-b072-4e253ae50dc0: 44442efa-ef72-447c-ab84-9c468c6379f2 + - 604a6623-ba9f-4f23-b25a-fb0e4e74adf9: 3642b691-e478-43ed-b691-e53cc7fca830 + - 6614f18e-e041-466e-8cfc-bb4deefe3ec0: 3372b332-9e7e-49cf-97f0-fb1cf909276d + - 67496b2d-219e-4ac6-b0b3-15011c089160: 56a700ce-8391-437f-8506-4f715e336a4e + - 67d27210-b8b3-4d55-aa41-89e03596c2ba: 6515d2e8-da80-45c0-a9d2-60d15ad236db + - 721a1148-6adc-4c9b-8c22-e2b65181817a: ca726ab7-404e-4818-8fc0-0778d27bede8 + - 7f63c4aa-e873-440b-82c6-2c1a053bd771: 2220a9ae-312a-41a6-aa71-751c484053de + - 828a3f04-b949-41d2-9d11-f000e7a9391b: 2234d4da-017d-4049-8089-7c43cf5f1950 + - 858fb21c-1346-4590-9621-d1f1d53b4662: eeac80db-518a-45bf-9dfe-5237edc8c532 + - 879107ea-c632-4916-9971-463c06c86428: aa757a1c-a887-4cdc-a602-cec273c1eb48 + - 8a2d5bbf-eddf-46c4-84af-247413ad5c6f: 85788fcd-c56c-4dce-8188-35ac689ca3e6 + - 8eaa543a-a5c2-4088-9c77-56a7ab596789: 7a6ab9ea-08ef-4d25-9f86-85cd7c69d1d6 + - 904323d2-ddb4-49e1-bc0a-06f50ac28c18: 77aa6353-fd86-4f2b-ab72-0a22d482a881 + - 91d650a5-6af8-4d3a-83fd-0385034c1a80: 6f6fbb06-ebfb-42cb-a6c2-53a0ba83d6e9 + - 924c2710-902d-47f0-a3db-0e2163fcd23c: 0174d32e-c1ae-46fe-a41d-82305f059d4c + - 95aff8e1-edab-44a6-93c1-63fc7733b35b: 6c2f37ab-ee49-4258-9cd7-9f7466d49c61 + - 95d1df9a-24d4-4c6b-840d-e9d2d9be856b: 3639160b-0aca-4cfc-812c-573463485649 + - 9f9cd066-8e78-4202-a90b-fd958ec55f49: 9622859b-1cb7-49b5-9319-7bb4983ee19b + - a089e947-01e6-486a-aaa7-43f03152b6d4: 213e3af4-4af7-469a-adde-b8c538cdf45a + - a22fef0b-a66f-4b47-930e-2695a65d2014: d0468651-8231-459d-8868-09495f6eb2bc + - a28b3010-8906-4fc7-b15a-eb2616d32331: 81412365-ea21-4e34-96a9-251673a93850 + - a9344fc5-fa94-422e-8c38-17d859173692: de672627-e11b-4878-a1b4-8b9484705fe7 + - be15cf62-da40-4035-a7ff-fe43fd2082d8: 7afd7b4d-3539-453d-8d79-8fbd037156bc + - cb64ed46-703b-4441-b62b-aa96e7441bef: bfa3d898-8d50-4cd2-a9d7-31027b08aa17 + - d6b2cacd-6acc-4f9c-b1cb-29036b713207: 92f85e29-20a5-4382-8387-d63a0769ee0f + - d795b32d-208d-4a52-8c41-c5d8b022d548: feae2640-5d34-4eb6-830f-7f600230f3e6 + - e8444479-0c8d-4a48-99f2-99ad1d044674: e225ba80-c10d-47ab-a63a-b043adbd2a74 + - f703209b-efed-46fe-a501-00fc192f2c4b: 9e38680b-544e-4376-b137-7ce4341ba16f + SourceState: ! 7afd7b4d-3539-453d-8d79-8fbd037156bc +- ! + PrefabRemaps: + [] + Name: component_16 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 6eff5bc7-5581-4a49-b7c0-75132215b602 + Mesh: ! b705f36d-9e18-4fda-b94f-067b9ab34ee0 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Rocket_03_top + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 44442efa-ef72-447c-ab84-9c468c6379f2 + - ! de672627-e11b-4878-a1b4-8b9484705fe7 + - ! cce6c217-2948-4dff-a636-df2a5ea47eac +- ! + PrefabRemaps: + [] + Name: component_24 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! d3359299-a4db-4c03-a7bc-a64d4136a9f3 + Mesh: ! d5389096-6ff6-4687-a39d-88838ca6ce61 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_9 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 93707c6b-a2a2-4e53-b029-d45186d5afa9 + Mesh: ! 7fbd5be2-a226-4326-b016-577f61c9a2b8 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_1 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 93707c6b-a2a2-4e53-b029-d45186d5afa9 + Mesh: ! 1c95cf09-b15f-4723-9825-f1661a5148f2 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_8 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f170a514-5db3-4b97-9124-d338f81259fc + Mesh: ! 4d3be133-9482-45ce-a384-fddf87f4ac0b + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_7 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f85cf635-c156-46d6-83f6-d6404fd2368d + Mesh: ! 0ff4db03-95f6-4b2d-9ea6-5439799edf59 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_12 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + [] + Mesh: ! 86d6eeb7-1007-4ff6-958f-5bbfa5bab327 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_13 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 6eff5bc7-5581-4a49-b7c0-75132215b602 + Mesh: ! 146f6e8f-d5d8-4f37-a364-f5fd53e7ffd4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 0a997bdd-20c6-419a-aaeb-b04c8dce4392 + Mesh: ! 9ab42643-fa56-4906-8dc6-c9cb4b53034f + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_14 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 05e0dba6-c028-4097-8b6c-57a2cbfb9cc4 + Mesh: ! e833bcb6-6e61-4630-a40f-854c64276405 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_5 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 0ca86bc0-7069-4166-a0e3-37223fd77d23 + Mesh: ! a47982fc-9d96-484f-aa08-39c865a8b2be + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_11 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + [] + Mesh: ! 60984803-0479-49fb-8ace-87319126e843 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_19 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! bffee791-e07f-4cfc-b7df-0c862f647ed8 + Mesh: ! 7b07b906-5237-4aba-bd64-8ca9d8e1c9fc + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PackagePath: "" + objects: + - ! 0544d1d6-f8fc-4f44-aad6-9ab4f8ab1702 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_22 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 93707c6b-a2a2-4e53-b029-d45186d5afa9 + Mesh: ! 18828ccb-4865-4bf5-b7c5-fdec9ae7650e + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_27 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! a915bbfd-085c-4e00-873b-fdc526aa9d6d + Mesh: ! 7ba378bf-39c6-4345-acbf-9e09fff8deaa + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Rocket_02_middle + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 77aa6353-fd86-4f2b-ab72-0a22d482a881 +- ! + PrefabRemaps: + [] + Name: Meteor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.276116, y: -39.832081, z: 27.427725} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6515d2e8-da80-45c0-a9d2-60d15ad236db +- ! + PrefabRemaps: + [] + Name: Rocket_01_bottom + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 31403b7e-9e11-44f6-9a37-e683c410754c + - ! 0174d32e-c1ae-46fe-a41d-82305f059d4c + - ! e225ba80-c10d-47ab-a63a-b043adbd2a74 + - ! 7a6ab9ea-08ef-4d25-9f86-85cd7c69d1d6 +- ! + PrefabRemaps: + [] + Name: Rocket_02_top + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4d38c146-ef19-406e-91b8-fd4fc86560d0 +- ! + PrefabRemaps: + [] + Name: Rocket_01_middle + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 56a700ce-8391-437f-8506-4f715e336a4e + - ! 6c2f37ab-ee49-4258-9cd7-9f7466d49c61 + - ! 213e3af4-4af7-469a-adde-b8c538cdf45a +- ! + PrefabRemaps: + [] + Name: Rocket_01_top + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c60e4453-bec1-43c6-86ba-dde1dec6f193 + - ! f1a0eaad-7591-4b2f-a371-48092df5fa74 +- ! + PrefabRemaps: + [] + Name: Planet + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.276116, y: -39.832081, z: 27.427725} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d0468651-8231-459d-8868-09495f6eb2bc + - ! 81412365-ea21-4e34-96a9-251673a93850 +- ! + PrefabRemaps: + [] + Name: component_25 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 6a1b6163-f95b-45d0-bf18-4d6ae89adcbf + Mesh: ! 41ed7fd3-6772-4318-9758-7be2e92a7d59 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_6 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 45d0e8c4-c422-48f3-b15e-fcd8f6eba7c8 + Mesh: ! 62f26ce0-c005-4d10-9699-e72cffedf047 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_20 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 6eff5bc7-5581-4a49-b7c0-75132215b602 + Mesh: ! 3dae7dac-7880-46bf-89ee-c5b255a34762 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Satellite + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.276116, y: -39.832081, z: 27.427725} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7e1fe566-0e3f-44b0-b3f8-79732db160e4 + - ! 2220a9ae-312a-41a6-aa71-751c484053de + - ! 3639160b-0aca-4cfc-812c-573463485649 + - ! b61b7861-3bdb-4790-a9b9-0488d7c48f29 +- ! + PrefabRemaps: + [] + Name: component_10 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + [] + Mesh: ! d939f3b0-8db9-4798-9298-7f08066b3614 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_3 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f0d53907-2cf0-42a3-bac1-15a502ea5cd2 + Mesh: ! 7009f208-56d4-42c2-bc1e-c77857d5553c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_26 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 51884309-d234-4f1d-bee3-d9bfee58509c + Mesh: ! eb9c4a4a-8795-4ce9-9f28-3fa5870debeb + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 2232ee72-5e28-48e9-8b1c-6786afc3b55e + Mesh: ! 94f8a9c7-d77e-47af-8528-0a63dc9a861e + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_18 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 79c4f925-18d3-41be-a07a-a6fdd8c4997c + Mesh: ! 88f899e7-9590-4dee-964f-ce40a022f07a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Rocket_02_bottom + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! cbe9872a-c8e2-436f-9cf5-fbea58cb0f9f +- ! + PrefabRemaps: + [] + Name: Rocket_03_middle + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 100.000000, y: 100.000000, z: 100.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3642b691-e478-43ed-b691-e53cc7fca830 +- ! + PrefabRemaps: + [] + Name: component_21 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15d19f91-9149-4cd6-9915-290c73dbb461 + Mesh: ! 1b2f6a59-990e-4833-baac-c0cbe117c66d + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_4 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 93707c6b-a2a2-4e53-b029-d45186d5afa9 + Mesh: ! 6df66694-4b1b-4e96-a8a0-0d6e2723bd7e + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Body Tube.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Body Tube.prefab new file mode 100644 index 00000000..3556de70 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Body Tube.prefab @@ -0,0 +1,41 @@ +- ! + PackagePath: "" + objects: + - ! 8f6a3f6f-c647-4c0c-b40e-942485ee1324 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7fe04302-2264-4d1f-8d8f-92cbeaf46a51 + Mesh: ! 7fbd5be2-a226-4326-b016-577f61c9a2b8 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Modern Body Tube + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -1.228443, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7a893ddb-bf57-4471-ba25-a1e88c2f10fd diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Body Tube.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Body Tube.prefab.meta new file mode 100644 index 00000000..40a34b00 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Body Tube.prefab.meta @@ -0,0 +1,62 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! a9931968-3294-457d-b5f4-67213a87aec0 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! a9931968-3294-457d-b5f4-67213a87aec0 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! 0b82626f-e864-4422-bbe9-c880eb84b2c6 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7fe04302-2264-4d1f-8d8f-92cbeaf46a51 + Mesh: ! 7fbd5be2-a226-4326-b016-577f61c9a2b8 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + SourceRemaps: + - 7a893ddb-bf57-4471-ba25-a1e88c2f10fd: 0772ec44-08f4-436f-a44d-f5c0ef3c75fd + - 8f6a3f6f-c647-4c0c-b40e-942485ee1324: 9cf844de-671b-4344-ac82-6d109d82dd2a + SourceState: ! e9559767-f6da-4f6c-a34f-8f004b7d7d55 +- ! + PrefabRemaps: + [] + Name: Modern Body Tube + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 13.478287, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0772ec44-08f4-436f-a44d-f5c0ef3c75fd +- ! + PackagePath: "" + objects: + - ! 9cf844de-671b-4344-ac82-6d109d82dd2a + LazyLoading: false + RetainAssets: true diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Fins.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Fins.prefab new file mode 100644 index 00000000..214cc632 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Fins.prefab @@ -0,0 +1,654 @@ +- ! + PackagePath: "" + objects: + - ! 6a414e96-11ae-4fe2-a376-cf8e4425e4d0 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: engine_exhaust 4 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -6.570652, y: -4.893984, z: 0.131076} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 2.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + - ! ec9d0fbf-5f53-416a-8ab2-91a3048acf43 + Components: + [] +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! b0e256ea-d856-487a-8f40-6ba6555a3d89 + Components: + - ! f7fc48d0-d40b-41a2-a264-0b7f4385766c + - ! 7ae8f441-c49f-4852-884c-ff90a24d7e4d +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f30b1cbf-55cb-4854-918a-d6f5b68ff302 + Mesh: ! 6df66694-4b1b-4e96-a8a0-0d6e2723bd7e + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! b752c41e-b2db-4e93-b562-23d05e916d79 + Mesh: ! 0ff4db03-95f6-4b2d-9ea6-5439799edf59 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9e34582c-f54f-4423-a72e-5f521a8f816a + Mesh: ! 4d3be133-9482-45ce-a384-fddf87f4ac0b + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ac5e049b-c43a-415b-8e44-5f8798debb0c + Mesh: ! 62f26ce0-c005-4d10-9699-e72cffedf047 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: engine_exhaust 3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.500722, y: -4.893984, z: -0.020199} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 2.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + - ! c69c4fd1-9af4-41a9-be84-17a9f10c1ab5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Modern Fins + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -16.653543, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a683f797-86cf-4f9a-b9e0-8d750520ce0c + - ! a61e485f-0c00-4181-a5cf-4f9ad3a0e0a1 + - ! b389d894-14d1-4009-9612-ef4d2fff5fb5 + - ! cb664491-f357-4064-b4bd-87bb1e13876f + - ! 8415fe38-925a-4d1f-9190-3d8b564b105c + - ! b79e8875-e5c4-4fcd-8de0-e835ee844b7d + - ! 655f027b-7299-450d-936e-e51eb1786764 + - ! 1d1fbab3-ca08-42c6-8a5e-397bee76e25f + Components: + - ! 3bc37a77-b2d1-4440-999f-436262651c28 + - ! 6a99906b-1e40-46d3-bb24-793658f9fc1b + - ! 52a98b5d-31c3-48ac-ae32-f639447226b0 + - ! 3efddc10-ac21-4d20-8105-ffb48b553ff2 + - ! 4936a38a-8756-4b76-a4c4-f9079b29db7c + - ! ee646eb6-04aa-4666-af60-a50e9a94961a +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7630d75e-c089-474f-917b-7571a900f1e2 + Mesh: ! a47982fc-9d96-484f-aa08-39c865a8b2be + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: engine_exhaust 1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.048480, y: -4.893984, z: 6.339403} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 2.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + - ! 29cde2ae-a564-461d-80cd-96592dc6c04a + Components: + [] +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.021074, y: -0.043960, z: -0.100001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! dc53c6b6-40f1-47da-9cb9-c74dda95b8fe +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.053362, y: -0.069726, z: -0.158992} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 41d7f626-d480-4b6f-8670-9a553454248f +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -4.784941, z: -6.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 86e929cb-3a4e-42b3-9c92-ab356b888002 +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -4.784941, z: 6.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f6bf520c-6834-4e5d-91e6-4ff4bd9ca34e +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.006524, y: -0.077701, z: -0.157105} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 81db6b26-56be-4112-8e2a-aba5adc19a67 +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.000000, y: -4.784941, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6f5cc554-34f0-42c2-b890-5467db26e908 +- ! + PrefabRemaps: + [] + Name: engine_exhaust 2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.033565, y: -4.893984, z: -6.371538} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 2.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + - ! d97db941-6c09-4766-88b2-5067605c214d + Components: + [] +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 975c1f2d-ced5-4011-a48b-af800814a0e9 + Components: + - ! 7c18e549-1212-4df6-830f-46c6ab694d47 + - ! 933c5c0b-13e8-465c-8dd6-96d4e7a37476 +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 4 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -6.000000, y: -4.784941, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d589a082-14d2-4259-a71c-9b6f421d3d3e +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 9eeeb8e3-2b53-4d5b-9f36-6981f2f76afa + Components: + - ! dbb41444-3acd-4e0d-8775-1dc80123b8e4 + - ! d212dd29-662c-4265-bb9f-06d4338b3d37 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! f963300f-7efd-4b9c-97e5-26cca9b08405 + Components: + - ! 2d181510-55cc-4c35-8ce3-f03ee214e5e0 + - ! d837a9dd-3e8e-45a4-85c9-1b2a3571bdfb +- ! + PrefabRemaps: + [] + Name: ExhaustControls + Enabled: true + ScriptAsset: ! 8a960278-52eb-4a46-ab2a-38be6fcadb24 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + exhausts: ! + - ! 8415fe38-925a-4d1f-9190-3d8b564b105c + - ! b79e8875-e5c4-4fcd-8de0-e835ee844b7d + - ! 655f027b-7299-450d-936e-e51eb1786764 + - ! 1d1fbab3-ca08-42c6-8a5e-397bee76e25f + smokes: ! + - ! a683f797-86cf-4f9a-b9e0-8d750520ce0c + - ! a61e485f-0c00-4181-a5cf-4f9ad3a0e0a1 + - ! b389d894-14d1-4009-9612-ef4d2fff5fb5 + - ! cb664491-f357-4064-b4bd-87bb1e13876f + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.029452, y: -0.099991, z: -0.213263} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1378f917-7ea8-4d20-b230-fa882d723f22 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Fins.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Fins.prefab.meta new file mode 100644 index 00000000..de04edf9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Fins.prefab.meta @@ -0,0 +1,712 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! f1f20f41-b943-4d16-9ec2-8b3047cfe6fc + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! f1f20f41-b943-4d16-9ec2-8b3047cfe6fc + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! d39dc06b-625d-49c4-b1e5-9f1ba3c23950 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: Modern Fins + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -16.653543, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3a3946a3-1092-4365-a633-ed5796f04705 + - ! 4651f2f2-0ceb-4b40-973d-f96684f31d8d + - ! c6c79bbc-2530-49bf-8720-6b1cb669bda1 + - ! 3d52f4d6-8617-4a0c-923e-26f54ab9a14e + - ! 6aee9490-2297-4d42-a273-a633b923a0bb + - ! 64104d79-91a2-4bb5-bf9f-9b8f3af35620 + - ! 19fba4f1-7787-488c-b9ef-85f4457877f6 + - ! 3ec3170b-2020-4a6d-921f-1967f0e104fd + Components: + - ! c90d11d2-a1f0-4511-944d-ea55143cb0d5 + - ! 90c727c9-1c72-4238-b0c8-56830d833043 + - ! 193ffe49-fa06-4ffa-a0f7-15cca06d2ab2 + - ! 903abc59-0dca-491d-b14e-df36b9be979d + - ! 1aa6367a-fa37-4b18-953a-f1d09209fe5c + - ! b3b24391-0bbd-4cf8-bef0-4dc6ed8bb0b9 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ac5e049b-c43a-415b-8e44-5f8798debb0c + Mesh: ! 62f26ce0-c005-4d10-9699-e72cffedf047 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: engine_exhaust 3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.500722, y: -4.893984, z: -0.020199} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 2.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + - ! 73d7feca-582f-446a-8c9a-424779afe0fb + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9e34582c-f54f-4423-a72e-5f521a8f816a + Mesh: ! 4d3be133-9482-45ce-a384-fddf87f4ac0b + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.021074, y: -0.043960, z: -0.100001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 22a4d103-3a26-4ecc-b7a9-9a5093781792 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -4.784941, z: 6.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ce425b9b-8085-42af-a6da-7557c513603d +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 4 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -6.000000, y: -4.784941, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 87be2263-f63b-4d9d-8d55-6e0d6b50352b +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: engine_exhaust 4 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -6.570652, y: -4.893984, z: 0.131076} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 2.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + - ! ffee1684-189d-43ca-8d0f-e66c04a244ce + Components: + [] +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.029452, y: -0.099991, z: -0.213263} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 32989093-2dda-4907-a5fb-06474707fb1b +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -4.784941, z: -6.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3e9f04d0-4118-4e2c-ab41-7b0c4ee2b1c2 +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: engine_exhaust 2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.033565, y: -4.893984, z: -6.371538} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 2.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + - ! d4a5db2a-c4ac-456e-8366-91edd3b63362 + Components: + [] +- ! + PrefabRemaps: + [] + Name: engine_exhaust 1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.048480, y: -4.893984, z: 6.339403} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 2.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + - ! f4c67535-4a87-4bbc-875d-4b985bcb837e + Components: + [] +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 1bc76175-9401-476b-940d-b637f5ea9901 + Components: + - ! d03666fc-dcf4-4547-b369-dfbb9f2e13c3 + - ! 61ae1ba7-44be-4566-b87b-bf92d20ba4f0 +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.053362, y: -0.069726, z: -0.158992} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d2efed71-86a5-4461-b563-b284259ce0bb +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! b752c41e-b2db-4e93-b562-23d05e916d79 + Mesh: ! 0ff4db03-95f6-4b2d-9ea6-5439799edf59 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7630d75e-c089-474f-917b-7571a900f1e2 + Mesh: ! a47982fc-9d96-484f-aa08-39c865a8b2be + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ExhaustControls + Enabled: true + ScriptAsset: ! 8a960278-52eb-4a46-ab2a-38be6fcadb24 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + exhausts: ! + - ! 6aee9490-2297-4d42-a273-a633b923a0bb + - ! 64104d79-91a2-4bb5-bf9f-9b8f3af35620 + - ! 19fba4f1-7787-488c-b9ef-85f4457877f6 + - ! 3ec3170b-2020-4a6d-921f-1967f0e104fd + smokes: ! + - ! 3a3946a3-1092-4365-a633-ed5796f04705 + - ! 4651f2f2-0ceb-4b40-973d-f96684f31d8d + - ! c6c79bbc-2530-49bf-8720-6b1cb669bda1 + - ! 3d52f4d6-8617-4a0c-923e-26f54ab9a14e + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.000000, y: -4.784941, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b490c889-6d48-454c-8f92-aa19b37eb607 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f30b1cbf-55cb-4854-918a-d6f5b68ff302 + Mesh: ! 6df66694-4b1b-4e96-a8a0-0d6e2723bd7e + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + SourceRemaps: + - 1378f917-7ea8-4d20-b230-fa882d723f22: 32989093-2dda-4907-a5fb-06474707fb1b + - 1d1fbab3-ca08-42c6-8a5e-397bee76e25f: 3ec3170b-2020-4a6d-921f-1967f0e104fd + - 29cde2ae-a564-461d-80cd-96592dc6c04a: f4c67535-4a87-4bbc-875d-4b985bcb837e + - 2d181510-55cc-4c35-8ce3-f03ee214e5e0: c50b91f1-fb44-44bb-acd7-3eb380f3e03f + - 3bc37a77-b2d1-4440-999f-436262651c28: c90d11d2-a1f0-4511-944d-ea55143cb0d5 + - 3efddc10-ac21-4d20-8105-ffb48b553ff2: 903abc59-0dca-491d-b14e-df36b9be979d + - 41d7f626-d480-4b6f-8670-9a553454248f: d2efed71-86a5-4461-b563-b284259ce0bb + - 4936a38a-8756-4b76-a4c4-f9079b29db7c: 1aa6367a-fa37-4b18-953a-f1d09209fe5c + - 52a98b5d-31c3-48ac-ae32-f639447226b0: 193ffe49-fa06-4ffa-a0f7-15cca06d2ab2 + - 655f027b-7299-450d-936e-e51eb1786764: 19fba4f1-7787-488c-b9ef-85f4457877f6 + - 6a414e96-11ae-4fe2-a376-cf8e4425e4d0: 179da1df-fb2b-428e-afeb-60471d098c23 + - 6a99906b-1e40-46d3-bb24-793658f9fc1b: 90c727c9-1c72-4238-b0c8-56830d833043 + - 6f5cc554-34f0-42c2-b890-5467db26e908: b490c889-6d48-454c-8f92-aa19b37eb607 + - 7ae8f441-c49f-4852-884c-ff90a24d7e4d: 59e65071-a7ac-40fb-8937-dd2c145aee10 + - 7c18e549-1212-4df6-830f-46c6ab694d47: d03666fc-dcf4-4547-b369-dfbb9f2e13c3 + - 81db6b26-56be-4112-8e2a-aba5adc19a67: 259e3c2e-638f-4a55-aec5-26af59137f93 + - 8415fe38-925a-4d1f-9190-3d8b564b105c: 6aee9490-2297-4d42-a273-a633b923a0bb + - 86e929cb-3a4e-42b3-9c92-ab356b888002: 3e9f04d0-4118-4e2c-ab41-7b0c4ee2b1c2 + - 933c5c0b-13e8-465c-8dd6-96d4e7a37476: 61ae1ba7-44be-4566-b87b-bf92d20ba4f0 + - 975c1f2d-ced5-4011-a48b-af800814a0e9: 1bc76175-9401-476b-940d-b637f5ea9901 + - 9eeeb8e3-2b53-4d5b-9f36-6981f2f76afa: 83638d94-76d7-45f8-8691-f15d07476e5f + - a61e485f-0c00-4181-a5cf-4f9ad3a0e0a1: 4651f2f2-0ceb-4b40-973d-f96684f31d8d + - a683f797-86cf-4f9a-b9e0-8d750520ce0c: 3a3946a3-1092-4365-a633-ed5796f04705 + - b0e256ea-d856-487a-8f40-6ba6555a3d89: dc6d7f50-732c-45d6-b98f-59176f9e04e2 + - b389d894-14d1-4009-9612-ef4d2fff5fb5: c6c79bbc-2530-49bf-8720-6b1cb669bda1 + - b79e8875-e5c4-4fcd-8de0-e835ee844b7d: 64104d79-91a2-4bb5-bf9f-9b8f3af35620 + - c69c4fd1-9af4-41a9-be84-17a9f10c1ab5: 73d7feca-582f-446a-8c9a-424779afe0fb + - cb664491-f357-4064-b4bd-87bb1e13876f: 3d52f4d6-8617-4a0c-923e-26f54ab9a14e + - d212dd29-662c-4265-bb9f-06d4338b3d37: 2db00fe1-c2a1-494f-82ba-e4ddb919e7d9 + - d589a082-14d2-4259-a71c-9b6f421d3d3e: 87be2263-f63b-4d9d-8d55-6e0d6b50352b + - d837a9dd-3e8e-45a4-85c9-1b2a3571bdfb: c354111d-6074-49f8-bbfe-2ffbda19ce19 + - d97db941-6c09-4766-88b2-5067605c214d: d4a5db2a-c4ac-456e-8366-91edd3b63362 + - dbb41444-3acd-4e0d-8775-1dc80123b8e4: 1075ac77-31c9-47f4-85ef-4f76615779d5 + - dc53c6b6-40f1-47da-9cb9-c74dda95b8fe: 22a4d103-3a26-4ecc-b7a9-9a5093781792 + - ec9d0fbf-5f53-416a-8ab2-91a3048acf43: ffee1684-189d-43ca-8d0f-e66c04a244ce + - ee646eb6-04aa-4666-af60-a50e9a94961a: b3b24391-0bbd-4cf8-bef0-4dc6ed8bb0b9 + - f6bf520c-6834-4e5d-91e6-4ff4bd9ca34e: ce425b9b-8085-42af-a6da-7557c513603d + - f7fc48d0-d40b-41a2-a264-0b7f4385766c: cab81ac2-57b4-4143-8374-cf95a95650fb + - f963300f-7efd-4b9c-97e5-26cca9b08405: 4201b046-24d0-48a9-b45b-3750f3c7222b + SourceState: ! f8bfd6f9-6bb1-41d5-8053-3a8e53f365d3 +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 83638d94-76d7-45f8-8691-f15d07476e5f + Components: + - ! 1075ac77-31c9-47f4-85ef-4f76615779d5 + - ! 2db00fe1-c2a1-494f-82ba-e4ddb919e7d9 +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.006524, y: -0.077701, z: -0.157105} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 259e3c2e-638f-4a55-aec5-26af59137f93 +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! dc6d7f50-732c-45d6-b98f-59176f9e04e2 + Components: + - ! cab81ac2-57b4-4143-8374-cf95a95650fb + - ! 59e65071-a7ac-40fb-8937-dd2c145aee10 +- ! + PackagePath: "" + objects: + - ! 179da1df-fb2b-428e-afeb-60471d098c23 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 4201b046-24d0-48a9-b45b-3750f3c7222b + Components: + - ! c50b91f1-fb44-44bb-acd7-3eb380f3e03f + - ! c354111d-6074-49f8-bbfe-2ffbda19ce19 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Nose Cone.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Nose Cone.prefab new file mode 100644 index 00000000..8d498056 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Nose Cone.prefab @@ -0,0 +1,83 @@ +- ! + PackagePath: "" + objects: + - ! 24102825-c166-45d9-beee-41c0d96c6de7 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9e34582c-f54f-4423-a72e-5f521a8f816a + Mesh: ! 94f8a9c7-d77e-47af-8528-0a63dc9a861e + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Modern Nose Cone + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 8.794556, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 55421708-14da-4499-b511-7dbf3e0dd864 + - ! 08ddf03f-9737-40dc-be2a-a1ddc894bb8b + - ! e4ccfb16-07b9-46ac-b303-c11f65a2485a +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f30b1cbf-55cb-4854-918a-d6f5b68ff302 + Mesh: ! 1c95cf09-b15f-4723-9825-f1661a5148f2 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ac5e049b-c43a-415b-8e44-5f8798debb0c + Mesh: ! 7009f208-56d4-42c2-bc1e-c77857d5553c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Nose Cone.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Nose Cone.prefab.meta new file mode 100644 index 00000000..607dc84f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Modern Nose Cone.prefab.meta @@ -0,0 +1,106 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 390ee0cb-1e60-4d19-8b40-1268800c64bc + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 390ee0cb-1e60-4d19-8b40-1268800c64bc + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! bfedaae8-6453-4fdd-8e63-44c3f3c42656 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ac5e049b-c43a-415b-8e44-5f8798debb0c + Mesh: ! 7009f208-56d4-42c2-bc1e-c77857d5553c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9e34582c-f54f-4423-a72e-5f521a8f816a + Mesh: ! 94f8a9c7-d77e-47af-8528-0a63dc9a861e + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PackagePath: "" + objects: + - ! fe89fc07-6722-4aaf-965b-69cfd73bf8bd + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f30b1cbf-55cb-4854-918a-d6f5b68ff302 + Mesh: ! 1c95cf09-b15f-4723-9825-f1661a5148f2 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + SourceRemaps: + - 08ddf03f-9737-40dc-be2a-a1ddc894bb8b: 33bc4a07-a788-4737-a58c-22e817b36daf + - 24102825-c166-45d9-beee-41c0d96c6de7: fe89fc07-6722-4aaf-965b-69cfd73bf8bd + - 55421708-14da-4499-b511-7dbf3e0dd864: 4283eb6f-7dab-4c6b-bf05-8cf09c7b5988 + - e4ccfb16-07b9-46ac-b303-c11f65a2485a: 0f8b2b61-2999-4eec-9268-1c52bfeaa3a1 + SourceState: ! 3f5d0d77-aa5e-45d1-8396-6ec4e8c6b811 +- ! + PrefabRemaps: + [] + Name: Modern Nose Cone + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 23.501286, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4283eb6f-7dab-4c6b-bf05-8cf09c7b5988 + - ! 33bc4a07-a788-4737-a58c-22e817b36daf + - ! 0f8b2b61-2999-4eec-9268-1c52bfeaa3a1 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Body Tube.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Body Tube.prefab new file mode 100644 index 00000000..8d6a94dd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Body Tube.prefab @@ -0,0 +1,41 @@ +- ! + PackagePath: "" + objects: + - ! a21a77a6-e7fb-420b-847a-e09bd22828dc + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Sleek Body Tube + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -1.228443, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f4c92ca3-11e2-47a8-8a39-0c0dac4a7e5f +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! b5c1eccd-f8f6-45b8-9b78-3129cf89d0a2 + Mesh: ! 60984803-0479-49fb-8ace-87319126e843 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Body Tube.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Body Tube.prefab.meta new file mode 100644 index 00000000..a2f5ae73 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Body Tube.prefab.meta @@ -0,0 +1,62 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 79343b52-0148-40f3-b5ee-59276ae43e7c + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 79343b52-0148-40f3-b5ee-59276ae43e7c + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! c8b62620-478c-4d39-ad8e-a17778397b79 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! b5c1eccd-f8f6-45b8-9b78-3129cf89d0a2 + Mesh: ! 60984803-0479-49fb-8ace-87319126e843 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + SourceRemaps: + - a21a77a6-e7fb-420b-847a-e09bd22828dc: f159348b-a001-47b7-9ddf-8c08ddbaceba + - f4c92ca3-11e2-47a8-8a39-0c0dac4a7e5f: 2d06667f-45de-4a3c-b62d-5ed3c46deee7 + SourceState: ! e65e4695-18af-4c35-a076-436b2bd697e3 +- ! + PackagePath: "" + objects: + - ! f159348b-a001-47b7-9ddf-8c08ddbaceba + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Sleek Body Tube + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 11.006973, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2d06667f-45de-4a3c-b62d-5ed3c46deee7 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Fins.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Fins.prefab new file mode 100644 index 00000000..860b801f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Fins.prefab @@ -0,0 +1,442 @@ +- ! + PackagePath: "" + objects: + - ! 9a40337d-a0e3-41c1-9d60-f1716eb3c066 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -7.355330, y: -5.119490, z: 4.763523} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 4.999996, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! eccf4cd6-755a-4ab6-b3e5-c2689b84c049 +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! da06c82e-fe4f-45a3-97ab-963968b32d28 + Components: + - ! 653d54c1-8d04-45a4-99f8-b4b50728d8e9 + - ! 592ab329-3eb6-4095-a6e8-f77fbc4ab0fb +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.013336, y: -0.111188, z: -0.218964} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6278921d-2708-42f5-88d0-01a4a40342d0 +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.026907, y: -0.037271, z: -0.015821} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d7f1fc89-969c-49dd-b03c-8f61fca689a4 +- ! + PrefabRemaps: + [] + Name: engine_exhaust 2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 7.840089, y: -5.126303, z: 4.591424} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.600000, y: 1.800000, z: 1.800000} + hasSegmentScaleCompensation: false + Children: + - ! 6d89d93d-4017-45ba-ac53-932ed3bd33bb + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: engine_exhaust 1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -8.006222, y: -5.126303, z: 4.763523} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.600000, y: 1.800000, z: 1.800000} + hasSegmentScaleCompensation: false + Children: + - ! ff07321a-4787-46e0-8df2-19a480d521a7 + Components: + [] +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 186295bf-3240-4095-b61e-3d7b9344b300 + Components: + - ! 3fd527c9-6c10-4758-b1c1-e333b12f81ee + - ! 5ba38dc9-4db4-487a-9ea8-75a8516a256e +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: engine_exhaust 3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.032578, y: -5.126303, z: -8.960503} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.600000, y: 1.800000, z: 1.800000} + hasSegmentScaleCompensation: false + Children: + - ! 0b3ab60f-15eb-4e87-8a7e-cce5db4ffb5b + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 37852eb4-7e77-4068-bab4-e79b1e75bb8d + Mesh: ! d939f3b0-8db9-4798-9298-7f08066b3614 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: Sleek Fins + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -16.653543, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 072ec3e9-b4bc-4c46-a3ac-4c046cc7bc8d + - ! b76ae71b-58a7-4ce7-9590-465e341049ae + - ! d9dc6b63-7101-424f-a221-2f5d4d5bead2 + - ! 4e1d7e26-6c92-48cb-8cae-6582ef58ae46 + - ! 3446176f-774c-4f91-9d7a-eb91ebdd6576 + - ! 78004e2e-959b-4590-ab0e-78a2f5dd40d3 + Components: + - ! 8a20bdc4-780d-451e-8895-efcaecb79045 + - ! b7eb04b9-00d5-495b-a380-18a9a1494f4c +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 7.339577, y: -5.119490, z: 4.473114} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 4.999996, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5245ae8d-1fd5-4e66-aff5-56e42051d6ad +- ! + PrefabRemaps: + [] + Name: ExhaustControls + Enabled: true + ScriptAsset: ! 8a960278-52eb-4a46-ab2a-38be6fcadb24 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + exhausts: ! + - ! 4e1d7e26-6c92-48cb-8cae-6582ef58ae46 + - ! 3446176f-774c-4f91-9d7a-eb91ebdd6576 + - ! 78004e2e-959b-4590-ab0e-78a2f5dd40d3 + smokes: ! + - ! 072ec3e9-b4bc-4c46-a3ac-4c046cc7bc8d + - ! b76ae71b-58a7-4ce7-9590-465e341049ae + - ! d9dc6b63-7101-424f-a221-2f5d4d5bead2 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.029284, y: -5.119490, z: -8.803538} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 4.999996, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a5cc3528-6e21-4220-81e2-ea7258d27164 +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.019787, y: -0.067461, z: -0.328559} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 77a5b8fe-5b09-4387-929c-f0ad60b7115e +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 0b903852-92c7-4afe-a299-a34fbfc13e61 + Components: + - ! 941b5753-aae4-46d3-a955-6ae5b78ca0ed + - ! a351f317-abeb-4e9d-bf74-dfeb839494b6 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Fins.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Fins.prefab.meta new file mode 100644 index 00000000..372a9d94 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Fins.prefab.meta @@ -0,0 +1,488 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 90f56253-e16e-40b6-9a7b-207dc3b162e7 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 90f56253-e16e-40b6-9a7b-207dc3b162e7 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! 8f64da7f-ac7c-40c3-8409-df42e9503b31 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PackagePath: "" + objects: + - ! f0f900de-25a1-46ba-a541-b31641fe02e8 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 7c202973-b1ba-4010-b9fa-8b61167cbb1e + Components: + - ! 1c90e838-ebb9-4ead-bbe4-0574bb16f185 + - ! 3cdcb7be-f20e-48d3-b80c-e51066b9669d +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.029284, y: -5.119490, z: -8.803538} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 4.999996, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2f7737b5-7d96-4e2b-ae1c-bad8b34e8d3e +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 7.339577, y: -5.119490, z: 4.473114} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 4.999996, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 00009495-28f0-4d00-9ee4-f11ff42ccd3c +- ! + PrefabRemaps: + [] + Name: ExhaustControls + Enabled: true + ScriptAsset: ! 8a960278-52eb-4a46-ab2a-38be6fcadb24 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + exhausts: ! + - ! 56f70fef-3367-47fd-b322-8135a2c282c5 + - ! 97ba01f9-17fc-42c1-ac0c-1b69c8cf44e8 + - ! eea6d345-6d5f-4638-951e-9ced6b4fad4d + smokes: ! + - ! cca8ee0b-3857-44ac-922a-818f010a31df + - ! 4cd701ab-a657-4669-9af1-c4e4209b9eb3 + - ! 3f2d2fed-9b4d-4053-b078-ce29f50dc35d + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: engine_exhaust 1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -8.006222, y: -5.126303, z: 4.763523} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.600000, y: 1.800000, z: 1.800000} + hasSegmentScaleCompensation: false + Children: + - ! 0b5f3756-e2ed-4183-a301-213c2769c24a + Components: + [] +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.019787, y: -0.067461, z: -0.328559} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 924ed4ff-1e48-4286-8a54-97112823be7e +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.013336, y: -0.111188, z: -0.218964} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a51e1b05-7fc7-4697-a51e-f23a9cd77938 +- ! + SourceRemaps: + - 072ec3e9-b4bc-4c46-a3ac-4c046cc7bc8d: cca8ee0b-3857-44ac-922a-818f010a31df + - 0b3ab60f-15eb-4e87-8a7e-cce5db4ffb5b: adf25e0f-cbff-47e4-b1ee-a169bb0c8288 + - 0b903852-92c7-4afe-a299-a34fbfc13e61: 7c202973-b1ba-4010-b9fa-8b61167cbb1e + - 186295bf-3240-4095-b61e-3d7b9344b300: 9ee18e06-1cd6-40ba-8757-38977cc923b4 + - 3446176f-774c-4f91-9d7a-eb91ebdd6576: 97ba01f9-17fc-42c1-ac0c-1b69c8cf44e8 + - 3fd527c9-6c10-4758-b1c1-e333b12f81ee: aa949642-756c-4cfa-b003-47a51eb78061 + - 4e1d7e26-6c92-48cb-8cae-6582ef58ae46: 56f70fef-3367-47fd-b322-8135a2c282c5 + - 5245ae8d-1fd5-4e66-aff5-56e42051d6ad: 00009495-28f0-4d00-9ee4-f11ff42ccd3c + - 592ab329-3eb6-4095-a6e8-f77fbc4ab0fb: 79a96661-d925-41f2-86c2-42d6a18d9b61 + - 5ba38dc9-4db4-487a-9ea8-75a8516a256e: 31d923e4-e1ed-4306-8f1a-e2d0dd4b546d + - 6278921d-2708-42f5-88d0-01a4a40342d0: a51e1b05-7fc7-4697-a51e-f23a9cd77938 + - 653d54c1-8d04-45a4-99f8-b4b50728d8e9: a9a9107a-ca40-492e-a77e-bd131ca98236 + - 6d89d93d-4017-45ba-ac53-932ed3bd33bb: c9212b0d-a89d-432a-a17a-9bd3a472ba59 + - 77a5b8fe-5b09-4387-929c-f0ad60b7115e: 924ed4ff-1e48-4286-8a54-97112823be7e + - 78004e2e-959b-4590-ab0e-78a2f5dd40d3: eea6d345-6d5f-4638-951e-9ced6b4fad4d + - 8a20bdc4-780d-451e-8895-efcaecb79045: ece0da6d-0af7-4d94-bb90-b6f0ebad6d71 + - 941b5753-aae4-46d3-a955-6ae5b78ca0ed: 1c90e838-ebb9-4ead-bbe4-0574bb16f185 + - 9a40337d-a0e3-41c1-9d60-f1716eb3c066: f0f900de-25a1-46ba-a541-b31641fe02e8 + - a351f317-abeb-4e9d-bf74-dfeb839494b6: 3cdcb7be-f20e-48d3-b80c-e51066b9669d + - a5cc3528-6e21-4220-81e2-ea7258d27164: 2f7737b5-7d96-4e2b-ae1c-bad8b34e8d3e + - b76ae71b-58a7-4ce7-9590-465e341049ae: 4cd701ab-a657-4669-9af1-c4e4209b9eb3 + - b7eb04b9-00d5-495b-a380-18a9a1494f4c: 4f86d4f5-f8d0-46fe-b529-cdf046db4379 + - d7f1fc89-969c-49dd-b03c-8f61fca689a4: e6f3a49f-83cc-4f78-bbcf-b896b1abae1c + - d9dc6b63-7101-424f-a221-2f5d4d5bead2: 3f2d2fed-9b4d-4053-b078-ce29f50dc35d + - da06c82e-fe4f-45a3-97ab-963968b32d28: 66c55e08-b045-4ead-8be7-6f7d50e6bfec + - eccf4cd6-755a-4ab6-b3e5-c2689b84c049: d932a60f-5a96-4b78-bd85-ca197af36135 + - ff07321a-4787-46e0-8df2-19a480d521a7: 0b5f3756-e2ed-4183-a301-213c2769c24a + SourceState: ! 050c90b8-39c5-4eb0-8886-3d524fc96254 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: engine_exhaust 2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 7.840089, y: -5.126303, z: 4.591424} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.600000, y: 1.800000, z: 1.800000} + hasSegmentScaleCompensation: false + Children: + - ! c9212b0d-a89d-432a-a17a-9bd3a472ba59 + Components: + [] +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.026907, y: -0.037271, z: -0.015821} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e6f3a49f-83cc-4f78-bbcf-b896b1abae1c +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 66c55e08-b045-4ead-8be7-6f7d50e6bfec + Components: + - ! a9a9107a-ca40-492e-a77e-bd131ca98236 + - ! 79a96661-d925-41f2-86c2-42d6a18d9b61 +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 9ee18e06-1cd6-40ba-8757-38977cc923b4 + Components: + - ! aa949642-756c-4cfa-b003-47a51eb78061 + - ! 31d923e4-e1ed-4306-8f1a-e2d0dd4b546d +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter 1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -7.355330, y: -5.119490, z: 4.763523} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 4.999996, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d932a60f-5a96-4b78-bd85-ca197af36135 +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 37852eb4-7e77-4068-bab4-e79b1e75bb8d + Mesh: ! d939f3b0-8db9-4798-9298-7f08066b3614 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: engine_exhaust 3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.032578, y: -5.126303, z: -8.960503} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.600000, y: 1.800000, z: 1.800000} + hasSegmentScaleCompensation: false + Children: + - ! adf25e0f-cbff-47e4-b1ee-a169bb0c8288 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Sleek Fins + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -16.653543, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cca8ee0b-3857-44ac-922a-818f010a31df + - ! 4cd701ab-a657-4669-9af1-c4e4209b9eb3 + - ! 3f2d2fed-9b4d-4053-b078-ce29f50dc35d + - ! 56f70fef-3367-47fd-b322-8135a2c282c5 + - ! 97ba01f9-17fc-42c1-ac0c-1b69c8cf44e8 + - ! eea6d345-6d5f-4638-951e-9ced6b4fad4d + Components: + - ! ece0da6d-0af7-4d94-bb90-b6f0ebad6d71 + - ! 4f86d4f5-f8d0-46fe-b529-cdf046db4379 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Nose Cone.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Nose Cone.prefab new file mode 100644 index 00000000..53a2c1d7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Nose Cone.prefab @@ -0,0 +1,41 @@ +- ! + PackagePath: "" + objects: + - ! 64adaad9-e5f0-4f98-938a-b8c253b18502 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 37852eb4-7e77-4068-bab4-e79b1e75bb8d + Mesh: ! 86d6eeb7-1007-4ff6-958f-5bbfa5bab327 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Sleek Nose Cone + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 8.794556, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4f30d76b-2396-4c49-9742-6251f6e07fbe diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Nose Cone.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Nose Cone.prefab.meta new file mode 100644 index 00000000..9d243311 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Sleek Nose Cone.prefab.meta @@ -0,0 +1,62 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! f8c6c126-d1c9-46e6-965f-f185cb98ee55 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! f8c6c126-d1c9-46e6-965f-f185cb98ee55 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! 94afbc78-efc6-4127-9c8b-118521b06401 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PackagePath: "" + objects: + - ! cb4a6c5d-d914-4e8a-825b-185e6c0c01ce + LazyLoading: false + RetainAssets: true +- ! + SourceRemaps: + - 4f30d76b-2396-4c49-9742-6251f6e07fbe: d6b01d28-40e4-4a99-acb3-ddaa2e9b1db2 + - 64adaad9-e5f0-4f98-938a-b8c253b18502: cb4a6c5d-d914-4e8a-825b-185e6c0c01ce + SourceState: ! 122c4ab4-cc47-482e-9e2b-5e44b6233e1c +- ! + PrefabRemaps: + [] + Name: Sleek Nose Cone + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 21.029972, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d6b01d28-40e4-4a99-acb3-ddaa2e9b1db2 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 37852eb4-7e77-4068-bab4-e79b1e75bb8d + Mesh: ! 86d6eeb7-1007-4ff6-958f-5bbfa5bab327 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Body Tube.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Body Tube.prefab new file mode 100644 index 00000000..9540bc2f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Body Tube.prefab @@ -0,0 +1,83 @@ +- ! + PackagePath: "" + objects: + - ! dd3fac4c-8ebf-4987-93f6-aa4c31e555ef + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 50159f70-05fb-4662-a5c4-ed01c233c88d + Mesh: ! 06a41d56-e716-4015-b950-8778506335af + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ac5e049b-c43a-415b-8e44-5f8798debb0c + Mesh: ! 146f6e8f-d5d8-4f37-a364-f5fd53e7ffd4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Space Age Body Tube + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -1.228443, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! bd229358-08a2-4283-8522-cbfc8a0ba10a + - ! ff1b06a5-ecca-4c5b-bcf9-bc9530c25d30 + - ! b02e879d-e9f0-4cc2-8907-af65d80f418b +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! cfd24310-2219-4548-a8a6-1cffadc84712 + Mesh: ! e833bcb6-6e61-4630-a40f-854c64276405 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Body Tube.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Body Tube.prefab.meta new file mode 100644 index 00000000..20927cee --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Body Tube.prefab.meta @@ -0,0 +1,106 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 255bac26-326b-4045-8f1e-04c78eabb8b4 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 255bac26-326b-4045-8f1e-04c78eabb8b4 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! ce4795b5-aea2-469f-b69f-37a5ad023546 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 50159f70-05fb-4662-a5c4-ed01c233c88d + Mesh: ! 06a41d56-e716-4015-b950-8778506335af + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Space Age Body Tube + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 8.612383, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! da23f797-df2b-4f11-af74-e827c04e319b + - ! f2f8aba5-596f-40b1-85b2-d942ca31b200 + - ! 24657f58-40d0-403e-befd-2f0221ea3ba7 +- ! + PackagePath: "" + objects: + - ! a2078ddd-fe22-4fb3-847a-cafb0386bb8e + LazyLoading: false + RetainAssets: true +- ! + SourceRemaps: + - b02e879d-e9f0-4cc2-8907-af65d80f418b: 24657f58-40d0-403e-befd-2f0221ea3ba7 + - bd229358-08a2-4283-8522-cbfc8a0ba10a: da23f797-df2b-4f11-af74-e827c04e319b + - dd3fac4c-8ebf-4987-93f6-aa4c31e555ef: a2078ddd-fe22-4fb3-847a-cafb0386bb8e + - ff1b06a5-ecca-4c5b-bcf9-bc9530c25d30: f2f8aba5-596f-40b1-85b2-d942ca31b200 + SourceState: ! b55ead2d-93ec-4fe7-a4e1-7db2e606d084 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ac5e049b-c43a-415b-8e44-5f8798debb0c + Mesh: ! 146f6e8f-d5d8-4f37-a364-f5fd53e7ffd4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! cfd24310-2219-4548-a8a6-1cffadc84712 + Mesh: ! e833bcb6-6e61-4630-a40f-854c64276405 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Fins.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Fins.prefab new file mode 100644 index 00000000..13938e77 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Fins.prefab @@ -0,0 +1,249 @@ +- ! + PackagePath: "" + objects: + - ! 267b71e4-c046-487d-93e5-d94d34fc495a + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.071278, y: -0.043962, z: -0.007384} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 06ff7c3e-1854-4af9-b129-1c1bcc166617 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7630d75e-c089-474f-917b-7571a900f1e2 + Mesh: ! b705f36d-9e18-4fda-b94f-067b9ab34ee0 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Space Age Fins + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -16.653543, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 83e5679f-fc48-4575-ac8d-03ba0cca8c51 + - ! 8a2cc9e3-5f0b-4a66-8be9-9910ccb5d239 + Components: + - ! 1e808a0f-5788-472d-a839-411eb9fb5f8c + - ! cfbb07a4-049f-4961-855e-7d0fd565d2f8 + - ! eb4f76cc-0952-4897-99c8-40b54c8472c1 + - ! f286507f-7950-4ed5-9d67-0d11455d244f + - ! 71b67d55-97f1-497c-adad-26340c904d2f +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: ExhaustControls + Enabled: true + ScriptAsset: ! 8a960278-52eb-4a46-ab2a-38be6fcadb24 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + exhausts: ! + - ! 83e5679f-fc48-4575-ac8d-03ba0cca8c51 + smokes: ! + - ! 8a2cc9e3-5f0b-4a66-8be9-9910ccb5d239 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: engine_exhaust + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.042411, y: -4.704506, z: 0.143178} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 2.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + - ! cbc40177-be4a-4cca-97ff-b8735b242e78 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -4.260098, z: 0.000099} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 323a41ca-2685-4624-a99b-c3a2c80e3e93 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 0bc0a5d1-e729-4f98-8a21-ae47dc067848 + Components: + - ! 931ea689-0051-4521-8c28-435b6560879a + - ! 7b7a4327-911f-4ff5-9d81-de1a53c8aca6 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! cfd24310-2219-4548-a8a6-1cffadc84712 + Mesh: ! 0bd54fec-e05b-4bcb-9c1e-eec19e3d3063 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f38add9d-489d-422d-ad03-73c42eddec40 + Mesh: ! 88f899e7-9590-4dee-964f-ce40a022f07a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f38add9d-489d-422d-ad03-73c42eddec40 + Mesh: ! 7b07b906-5237-4aba-bd64-8ca9d8e1c9fc + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Fins.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Fins.prefab.meta new file mode 100644 index 00000000..685d47b1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Fins.prefab.meta @@ -0,0 +1,282 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 9bb44e42-24ca-4d39-87d2-41596d8f05a4 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 9bb44e42-24ca-4d39-87d2-41596d8f05a4 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! 6502dce8-156a-4ff1-9473-2ea7916d7997 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PackagePath: "" + objects: + - ! dd7723ab-c684-41e8-a208-907a3f987496 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7630d75e-c089-474f-917b-7571a900f1e2 + Mesh: ! b705f36d-9e18-4fda-b94f-067b9ab34ee0 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 9462a917-7a02-443a-9dd6-4110e1c71154 + Components: + - ! 21702720-5470-40bc-8c4c-51ed14b390a2 + - ! b14e6e4c-3e07-47a7-95e3-50a4f5b13e43 +- ! + SourceRemaps: + - 06ff7c3e-1854-4af9-b129-1c1bcc166617: c0b4741c-2512-4ba5-b872-521e6aa0176f + - 0bc0a5d1-e729-4f98-8a21-ae47dc067848: 9462a917-7a02-443a-9dd6-4110e1c71154 + - 1e808a0f-5788-472d-a839-411eb9fb5f8c: 292f0448-563d-4cf7-be0e-10328ef48c75 + - 267b71e4-c046-487d-93e5-d94d34fc495a: dd7723ab-c684-41e8-a208-907a3f987496 + - 323a41ca-2685-4624-a99b-c3a2c80e3e93: 2236630b-43ab-4f1a-8e79-68c3064f7a89 + - 71b67d55-97f1-497c-adad-26340c904d2f: f05eb278-f8be-4c76-938d-cb70bf9cb56a + - 7b7a4327-911f-4ff5-9d81-de1a53c8aca6: b14e6e4c-3e07-47a7-95e3-50a4f5b13e43 + - 83e5679f-fc48-4575-ac8d-03ba0cca8c51: 881fcc71-cd55-412b-ae23-796df7a0e695 + - 8a2cc9e3-5f0b-4a66-8be9-9910ccb5d239: ae33e474-f00a-413f-be10-972860b7bfcf + - 931ea689-0051-4521-8c28-435b6560879a: 21702720-5470-40bc-8c4c-51ed14b390a2 + - cbc40177-be4a-4cca-97ff-b8735b242e78: 51744e3d-41e8-4ad8-afce-cfdea5aafe01 + - cfbb07a4-049f-4961-855e-7d0fd565d2f8: 87b78263-6cab-4216-98a2-da353a2bd500 + - eb4f76cc-0952-4897-99c8-40b54c8472c1: 8c41b12c-c3cb-4d32-a832-8c4bd2b461c8 + - f286507f-7950-4ed5-9d67-0d11455d244f: b61c70b7-d6c6-4c32-9a35-eb4a35a856db + SourceState: ! 2094fcf0-d6a1-4624-a0c2-09acd0278a1d +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! cfd24310-2219-4548-a8a6-1cffadc84712 + Mesh: ! 0bd54fec-e05b-4bcb-9c1e-eec19e3d3063 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: engine_exhaust + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.042411, y: -4.704506, z: 0.143178} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 2.000000, z: 2.000000} + hasSegmentScaleCompensation: false + Children: + - ! 51744e3d-41e8-4ad8-afce-cfdea5aafe01 + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f38add9d-489d-422d-ad03-73c42eddec40 + Mesh: ! 88f899e7-9590-4dee-964f-ce40a022f07a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.071278, y: -0.043962, z: -0.007384} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c0b4741c-2512-4ba5-b872-521e6aa0176f +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -4.260098, z: 0.000099} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2236630b-43ab-4f1a-8e79-68c3064f7a89 +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f38add9d-489d-422d-ad03-73c42eddec40 + Mesh: ! 7b07b906-5237-4aba-bd64-8ca9d8e1c9fc + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Space Age Fins + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -16.653543, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 881fcc71-cd55-412b-ae23-796df7a0e695 + - ! ae33e474-f00a-413f-be10-972860b7bfcf + Components: + - ! 292f0448-563d-4cf7-be0e-10328ef48c75 + - ! 87b78263-6cab-4216-98a2-da353a2bd500 + - ! 8c41b12c-c3cb-4d32-a832-8c4bd2b461c8 + - ! b61c70b7-d6c6-4c32-9a35-eb4a35a856db + - ! f05eb278-f8be-4c76-938d-cb70bf9cb56a +- ! + PrefabRemaps: + [] + Name: ExhaustControls + Enabled: true + ScriptAsset: ! 8a960278-52eb-4a46-ab2a-38be6fcadb24 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + exhausts: ! + - ! 881fcc71-cd55-412b-ae23-796df7a0e695 + smokes: ! + - ! ae33e474-f00a-413f-be10-972860b7bfcf + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Nose Cone.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Nose Cone.prefab new file mode 100644 index 00000000..07643648 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Nose Cone.prefab @@ -0,0 +1,62 @@ +- ! + PackagePath: "" + objects: + - ! 76bb9ea0-5c09-437e-9c15-c4c66299afad + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7630d75e-c089-474f-917b-7571a900f1e2 + Mesh: ! 3dae7dac-7880-46bf-89ee-c5b255a34762 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Space Age Nose Cone + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 8.794556, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 683c1a29-4ad9-4a72-8e8a-97355ab6f6af + - ! d205e528-b07b-4948-a4e9-696481d19fd8 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ac5e049b-c43a-415b-8e44-5f8798debb0c + Mesh: ! 1b2f6a59-990e-4833-baac-c0cbe117c66d + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Nose Cone.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Nose Cone.prefab.meta new file mode 100644 index 00000000..8b24c3b2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/Parts/Space Age Nose Cone.prefab.meta @@ -0,0 +1,84 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 11174f6e-5467-4bf7-a4ec-be4b4e11d888 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 11174f6e-5467-4bf7-a4ec-be4b4e11d888 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! e7fac2b3-eb91-478e-b793-97719f40d799 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ac5e049b-c43a-415b-8e44-5f8798debb0c + Mesh: ! 1b2f6a59-990e-4833-baac-c0cbe117c66d + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PackagePath: "" + objects: + - ! 44645f4b-ecf7-4899-bd71-7bd1780638dd + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Space Age Nose Cone + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 18.635382, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a0989c6f-2b16-4f02-814e-cf9816d9f82f + - ! 06c994e5-0169-4982-ba56-27dd50d975ae +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7630d75e-c089-474f-917b-7571a900f1e2 + Mesh: ! 3dae7dac-7880-46bf-89ee-c5b255a34762 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + SourceRemaps: + - 683c1a29-4ad9-4a72-8e8a-97355ab6f6af: a0989c6f-2b16-4f02-814e-cf9816d9f82f + - 76bb9ea0-5c09-437e-9c15-c4c66299afad: 44645f4b-ecf7-4899-bd71-7bd1780638dd + - d205e528-b07b-4948-a4e9-696481d19fd8: 06c994e5-0169-4982-ba56-27dd50d975ae + SourceState: ! 12657d2c-106c-477c-8480-b76547430538 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Body Tube Category.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Body Tube Category.prefab new file mode 100644 index 00000000..53031399 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Body Tube Category.prefab @@ -0,0 +1,180 @@ +- ! + PackagePath: "" + objects: + - ! 7a1aee32-44da-4150-b657-a9b82811a0ce + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: ContactName + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b1d80340-b780-4f29-a0ae-50a3aac4b256 + - ! e1a946d8-02f6-4d9d-88fa-b6e946bad79c +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 06c9df2d-d933-4bdb-8491-4592c8502ddb + Components: + - ! 6aca3e07-2256-4bf8-a148-f3011e88a390 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.000000 + right: 0.665100 + top: 0.000000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Body Tube + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 70 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Body Tube Category.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Body Tube Category.prefab.meta new file mode 100644 index 00000000..cdbc3e23 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Body Tube Category.prefab.meta @@ -0,0 +1,204 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! 242abbc5-63eb-448b-9a60-c5f5eae6725c + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 242abbc5-63eb-448b-9a60-c5f5eae6725c + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! 00657a9a-754b-451f-b728-62236b100542 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SourceRemaps: + - 06c9df2d-d933-4bdb-8491-4592c8502ddb: 614c11b0-3b4b-49dd-8ae5-689e430b8f9f + - 6aca3e07-2256-4bf8-a148-f3011e88a390: afd118ab-2a27-4ca1-a415-fc01d12d8526 + - 7a1aee32-44da-4150-b657-a9b82811a0ce: d8541c0f-7457-4412-96c6-0146ae207374 + - b1d80340-b780-4f29-a0ae-50a3aac4b256: 32f208e3-fd20-4d42-89b4-a46adc210ecb + - e1a946d8-02f6-4d9d-88fa-b6e946bad79c: f7b64933-48cf-418c-a036-26b38999e781 + SourceState: ! 4cf7cfc3-8970-4416-8b52-36a02450d2cc +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.000000 + right: 0.665100 + top: 0.000000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PackagePath: "" + objects: + - ! d8541c0f-7457-4412-96c6-0146ae207374 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: ContactName + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 32f208e3-fd20-4d42-89b4-a46adc210ecb + - ! f7b64933-48cf-418c-a036-26b38999e781 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 614c11b0-3b4b-49dd-8ae5-689e430b8f9f + Components: + - ! afd118ab-2a27-4ca1-a415-fc01d12d8526 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Body Tube + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 70 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Fins Category.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Fins Category.prefab new file mode 100644 index 00000000..e3e70194 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Fins Category.prefab @@ -0,0 +1,180 @@ +- ! + PackagePath: "" + objects: + - ! 9615071b-9447-4ea6-b9eb-1516c60f7415 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e332e47c-7dc4-445e-a51a-15756ae75352 + Components: + - ! 5c3cae14-67da-4a5d-b8c5-461873b7d01e +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Fins + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 70 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ContactName + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 23069c6c-01cc-405e-93a1-1706f4579174 + - ! a324c92f-5ffe-4193-b6c5-035f37d3e78a diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Fins Category.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Fins Category.prefab.meta new file mode 100644 index 00000000..e2fce435 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Fins Category.prefab.meta @@ -0,0 +1,204 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! 5c321a82-1be9-40b7-a482-f37464b708db + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 5c321a82-1be9-40b7-a482-f37464b708db + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! f5753e29-edcc-4bc0-8a70-f3ac07318cff + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PackagePath: "" + objects: + - ! 65b1b7c5-6a46-4a8c-a9de-453b77d7705a + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e2d3171c-0f5e-4cc5-928e-42814d8bef74 + Components: + - ! 9d2faeae-c61a-4548-a875-67fbec88c211 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Fins + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 70 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: ContactName + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d9b61a0d-1264-4b5e-a238-869dd42dbe72 + - ! b00ec8c3-65d6-4b50-9d4d-5656862e60e8 +- ! + SourceRemaps: + - 23069c6c-01cc-405e-93a1-1706f4579174: d9b61a0d-1264-4b5e-a238-869dd42dbe72 + - 5c3cae14-67da-4a5d-b8c5-461873b7d01e: 9d2faeae-c61a-4548-a875-67fbec88c211 + - 9615071b-9447-4ea6-b9eb-1516c60f7415: 65b1b7c5-6a46-4a8c-a9de-453b77d7705a + - a324c92f-5ffe-4193-b6c5-035f37d3e78a: b00ec8c3-65d6-4b50-9d4d-5656862e60e8 + - e332e47c-7dc4-445e-a51a-15756ae75352: e2d3171c-0f5e-4cc5-928e-42814d8bef74 + SourceState: ! 1ec436ef-0999-44af-9af7-e85e7d6dd869 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Body Tube.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Body Tube.prefab new file mode 100644 index 00000000..c8762913 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Body Tube.prefab @@ -0,0 +1,786 @@ +- ! + PackagePath: "" + objects: + - ! 00c37133-966b-4889-a31e-56739052db09 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 49a2f84d-f796-406b-a565-e1a5e9b08e07 + - ! fb6fdd8e-3c40-40e8-a769-a61596f12f23 + - ! 854f3d81-22d0-4fe9-b2be-4e9c756230dc + - ! ddf098b5-6b2c-4032-aafe-9a4fc289b3be + - ! 940a5d0b-d4b6-45dd-b0fb-65ce8bea3dd9 + Components: + - ! de88d018-d862-42b3-96a8-0bfa3ef58a73 + - ! d73942a4-3e03-4106-8fd2-9643db4f1b2e +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c919943d-86e8-4dc5-91d3-108695e16dd0 + - ! edc83f58-d0ff-4281-bf14-11fe07296f51 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ba4b739a-a604-49f7-9803-3aec2ea98f4e + - ! b04d78cc-ad26-4c09-9ed9-7f31800957cd +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9f331ba2-371b-4e8e-a6ff-3c87c764de3f + - ! d7aa8f62-ff43-49da-a382-703593b91bc3 + - ! 124ec62f-b22d-49c5-be16-cc0dcd565d5b + - ! 5911e5c5-eb9c-49b7-a861-ad72070ce28b + - ! 749a3dde-047e-4e50-8b8b-874657953f78 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 5e3a10ef-8cca-453d-826a-a8c8e8e6f53c + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7a9da3f2-124f-427f-bb4b-e378791a364c + Components: + - ! 76da699b-e2da-467c-94ee-fc3f2be3cede + - ! 8996a2c3-1df6-4a5c-8955-abb1029d593f + - ! ed609bc9-60c1-4d21-a4fb-24975db5de03 + - ! 98026747-f58f-4543-bf30-df00dcd6b8fd + - ! 6d27af13-1ed4-426f-96ac-db4ce8f2c104 + - ! fe687425-0d1b-4353-8cf6-66a3bded06ca +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Body Tube + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! edc83f58-d0ff-4281-bf14-11fe07296f51 + item: ! c23f1135-5034-4f4a-ba72-015f8b3d61be + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 8bcce9be-af57-40e5-9121-e6ec262b085c + - ! b6b25496-4c47-40f3-b160-a81a1287ea8b +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Modern + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f3e54778-ccfb-466e-9f88-533a7a8f787e + - ! c23f1135-5034-4f4a-ba72-015f8b3d61be +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! ba4b739a-a604-49f7-9803-3aec2ea98f4e + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Body Tube.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Body Tube.prefab.meta new file mode 100644 index 00000000..f8b504f6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Body Tube.prefab.meta @@ -0,0 +1,833 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! 68a19954-e237-4b18-827d-db13073a38d6 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 68a19954-e237-4b18-827d-db13073a38d6 + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! bc1ee565-7e22-4de5-b9de-d9fc5440e3f8 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8b749aee-3c74-4077-a789-b7891d4de64a + - ! 939e1900-c399-472e-9d84-8a49afe83392 + - ! 2ee5e77f-4074-4d38-8bf6-1fd93b85a0ec + - ! 9367bbf8-bcfe-4420-ae8b-64248967f6fd + - ! 7d8d1fd0-6a38-4121-af85-b06dd4092f89 + Components: + - ! 451aa864-7e14-40d8-b237-2b40248a3022 + - ! 6bcfbde1-839a-4354-aa32-3e31a26a6724 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 06aa15da-9ea7-4324-9938-ebc4aa828808 + - ! fd826635-09f3-44c3-b704-c4dd4377bb80 + - ! 1fd90016-a9bc-4748-995c-bd87c40e0bd1 + - ! efe3d3c6-3d41-4c8f-8bf9-b3eb306d7c86 + - ! a448494b-032a-4b16-bf2a-91fe318791cf +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! f7bec61f-1d59-44c1-b25c-f02d5e807f66 + item: ! f1d82217-656a-49d6-bb99-4c2e34ee4625 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PackagePath: "" + objects: + - ! 2123863b-ef00-4f26-9d2c-7be514cde96f + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8aa26a12-425f-4cd6-b439-662a04bdc616 + Components: + - ! c2989045-1fa2-40db-9463-33b567c534d5 + - ! b66d4165-0ec0-453a-a089-4b20bcb2c302 + - ! 2c7dbea8-938f-4107-ac46-3887e525f239 + - ! 402ec009-d601-48ec-a4b3-4e4ba52e5656 + - ! a3b782fb-2be0-4647-ab7f-80402c12da39 + - ! e7571d4a-abe5-44c8-9b03-aaf262642df8 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1dbcfdeb-8a72-4ac9-a821-d4c963075277 + - ! 6f5c70fd-9ef7-48e2-89ad-f452a12627ff +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f36b766a-d0c2-4727-9735-0a70f73b01c5 + - ! f7bec61f-1d59-44c1-b25c-f02d5e807f66 +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! eee1e5e1-6dc1-46e7-bdf3-bc8bca31fdc6 + - ! 6bb79c64-95b2-4eb0-9076-d74d1377e053 +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 04f6d461-3148-4661-b5c6-710f73d6268e + - ! f1d82217-656a-49d6-bb99-4c2e34ee4625 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + SourceRemaps: + - 00c37133-966b-4889-a31e-56739052db09: 2123863b-ef00-4f26-9d2c-7be514cde96f + - 124ec62f-b22d-49c5-be16-cc0dcd565d5b: 1fd90016-a9bc-4748-995c-bd87c40e0bd1 + - 49a2f84d-f796-406b-a565-e1a5e9b08e07: 8b749aee-3c74-4077-a789-b7891d4de64a + - 5911e5c5-eb9c-49b7-a861-ad72070ce28b: efe3d3c6-3d41-4c8f-8bf9-b3eb306d7c86 + - 6d27af13-1ed4-426f-96ac-db4ce8f2c104: a3b782fb-2be0-4647-ab7f-80402c12da39 + - 749a3dde-047e-4e50-8b8b-874657953f78: a448494b-032a-4b16-bf2a-91fe318791cf + - 76da699b-e2da-467c-94ee-fc3f2be3cede: c2989045-1fa2-40db-9463-33b567c534d5 + - 7a9da3f2-124f-427f-bb4b-e378791a364c: 8aa26a12-425f-4cd6-b439-662a04bdc616 + - 854f3d81-22d0-4fe9-b2be-4e9c756230dc: 2ee5e77f-4074-4d38-8bf6-1fd93b85a0ec + - 8996a2c3-1df6-4a5c-8955-abb1029d593f: b66d4165-0ec0-453a-a089-4b20bcb2c302 + - 8bcce9be-af57-40e5-9121-e6ec262b085c: eee1e5e1-6dc1-46e7-bdf3-bc8bca31fdc6 + - 940a5d0b-d4b6-45dd-b0fb-65ce8bea3dd9: 7d8d1fd0-6a38-4121-af85-b06dd4092f89 + - 98026747-f58f-4543-bf30-df00dcd6b8fd: 402ec009-d601-48ec-a4b3-4e4ba52e5656 + - 9f331ba2-371b-4e8e-a6ff-3c87c764de3f: 06aa15da-9ea7-4324-9938-ebc4aa828808 + - b04d78cc-ad26-4c09-9ed9-7f31800957cd: 6f5c70fd-9ef7-48e2-89ad-f452a12627ff + - b6b25496-4c47-40f3-b160-a81a1287ea8b: 6bb79c64-95b2-4eb0-9076-d74d1377e053 + - ba4b739a-a604-49f7-9803-3aec2ea98f4e: 1dbcfdeb-8a72-4ac9-a821-d4c963075277 + - c23f1135-5034-4f4a-ba72-015f8b3d61be: f1d82217-656a-49d6-bb99-4c2e34ee4625 + - c919943d-86e8-4dc5-91d3-108695e16dd0: f36b766a-d0c2-4727-9735-0a70f73b01c5 + - d73942a4-3e03-4106-8fd2-9643db4f1b2e: 6bcfbde1-839a-4354-aa32-3e31a26a6724 + - d7aa8f62-ff43-49da-a382-703593b91bc3: fd826635-09f3-44c3-b704-c4dd4377bb80 + - ddf098b5-6b2c-4032-aafe-9a4fc289b3be: 9367bbf8-bcfe-4420-ae8b-64248967f6fd + - de88d018-d862-42b3-96a8-0bfa3ef58a73: 451aa864-7e14-40d8-b237-2b40248a3022 + - ed609bc9-60c1-4d21-a4fb-24975db5de03: 2c7dbea8-938f-4107-ac46-3887e525f239 + - edc83f58-d0ff-4281-bf14-11fe07296f51: f7bec61f-1d59-44c1-b25c-f02d5e807f66 + - f3e54778-ccfb-466e-9f88-533a7a8f787e: 04f6d461-3148-4661-b5c6-710f73d6268e + - fb6fdd8e-3c40-40e8-a769-a61596f12f23: 939e1900-c399-472e-9d84-8a49afe83392 + - fe687425-0d1b-4353-8cf6-66a3bded06ca: e7571d4a-abe5-44c8-9b03-aaf262642df8 + SourceState: ! 77fe4e6f-0991-4fe0-9399-dfb717a1fd85 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 1dbcfdeb-8a72-4ac9-a821-d4c963075277 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 5e3a10ef-8cca-453d-826a-a8c8e8e6f53c + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Body Tube + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Modern + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Fins.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Fins.prefab new file mode 100644 index 00000000..f49bf804 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Fins.prefab @@ -0,0 +1,786 @@ +- ! + PackagePath: "" + objects: + - ! f84d1274-0e32-401e-829e-ea9a079c42d4 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Modern + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 67ec9c6b-dd75-45b3-a2eb-63bbf22e1578 + - ! 0b10ca56-b7da-45ed-b194-49a2a582decd + - ! 25cab00e-e179-4a03-8c06-5cdafa3d8400 + - ! 213fe61f-be1b-45e9-ad79-42687fab2213 + - ! d3dedd65-8bc7-44d8-9794-1d63d0455648 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5174d39b-ac84-4259-8155-0d33022a5ee9 + - ! f146ef79-91da-4e8d-9584-8f1ee2e27d68 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! d87d9ccc-b812-4ed4-b736-0d6b370151fc + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 714479e1-9b3b-4212-929c-69e82e7c7aed + - ! 05f4a015-e812-4951-969a-0b6692da2c85 +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 0a3995dc-5405-4e72-b86c-a32044d7a013 + item: ! f146ef79-91da-4e8d-9584-8f1ee2e27d68 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 064f1cad-18ee-4fbc-b78f-a77ceb083c1b + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b60adc9e-2655-45d4-b200-f0431c2a4a65 + - ! 0a3995dc-5405-4e72-b86c-a32044d7a013 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Fins + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! fb65533d-fcd3-4619-8b7c-7400d0aece95 + Components: + - ! 13c22bd6-f8cd-4c57-8583-6d562aff37e9 + - ! 54ad9b7b-6b93-4a87-90b0-075d67293314 + - ! eac7865f-b80f-436b-bb1a-a39c82f71858 + - ! be4a8ee8-1bd1-448a-8e7d-e5d5447f7ee2 + - ! 308c1e2c-dfce-47bc-ba96-be56bb5d6caa + - ! 9f5b3b07-15e6-48fe-97e7-bebfecf5e056 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c47f6b10-b69f-4045-ac4d-6263997f5c6b + - ! 3d80a2b7-0afc-4f47-8426-cf330cae822e + - ! 2bee27e6-3cfe-40e0-8654-93507a734418 + - ! 98583c17-a07e-434f-8f0c-ef91e9aeb180 + - ! f40a497f-7a41-4a57-9453-5412d16d9f10 + Components: + - ! 7dc2ea5f-4f2f-4ac2-87ec-a2385720b27e + - ! 987ee73b-1af2-44a1-ad7f-410c58cfbad9 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 064f1cad-18ee-4fbc-b78f-a77ceb083c1b + - ! dfa5337e-d140-4a07-a083-47f1d3d8a8ad diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Fins.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Fins.prefab.meta new file mode 100644 index 00000000..9ca82a75 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Fins.prefab.meta @@ -0,0 +1,833 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! bbe206c8-38e1-4245-9550-2a019fe7e078 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! bbe206c8-38e1-4245-9550-2a019fe7e078 + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! 987428d5-7ddd-43b6-bdf3-81d3bdeb04e5 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 42ba2b74-c5c3-42df-a01e-142dace557d5 + - ! 4a1c98f0-ca77-41c8-b4bf-2eb941c7bfdf +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PackagePath: "" + objects: + - ! c22dd6da-3618-4913-b79e-dbc349d8dc47 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 669c3d6a-8380-4032-bdc2-4b445ae75df1 + - ! f8345933-86df-4f3b-b53c-7e48e1e90dcf +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d50f4720-9e55-4a7b-a3dd-e30441a17269 + - ! b043a560-a01d-498c-afe6-5f704ffdd809 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Modern + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! d87d9ccc-b812-4ed4-b736-0d6b370151fc + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 4a1c98f0-ca77-41c8-b4bf-2eb941c7bfdf + item: ! cf636233-b03a-4629-8b07-7ee9da5ad3e1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 486b3d2c-47c7-4e29-b883-2b6e152ed6ab + Components: + - ! e832a442-f5e7-4ae5-bdec-d2d8677cdd05 + - ! 04337581-50e2-4ee9-8ed1-2f0e3d79ca1f + - ! 90ec247f-3ef7-4e4b-8b5b-eb835ddf1fb2 + - ! 7b4af132-5953-437a-a3d8-b641aadc388a + - ! 0e9f4dad-cda4-4b9c-b029-f49c59d6f61e + - ! b459046b-7558-4c50-9c4c-6794ef57fdea +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + SourceRemaps: + - 05f4a015-e812-4951-969a-0b6692da2c85: f8345933-86df-4f3b-b53c-7e48e1e90dcf + - 064f1cad-18ee-4fbc-b78f-a77ceb083c1b: d50f4720-9e55-4a7b-a3dd-e30441a17269 + - 0a3995dc-5405-4e72-b86c-a32044d7a013: 4a1c98f0-ca77-41c8-b4bf-2eb941c7bfdf + - 0b10ca56-b7da-45ed-b194-49a2a582decd: 74bdf545-8972-42a8-b36e-2ba455f9f5d0 + - 13c22bd6-f8cd-4c57-8583-6d562aff37e9: e832a442-f5e7-4ae5-bdec-d2d8677cdd05 + - 213fe61f-be1b-45e9-ad79-42687fab2213: 5ebc3e80-41f0-45b8-b781-0073e56d60e4 + - 25cab00e-e179-4a03-8c06-5cdafa3d8400: 97d89735-4c36-4df6-86d8-b4902514d226 + - 2bee27e6-3cfe-40e0-8654-93507a734418: cef8097a-6f4f-4811-85ff-cf754bc9b631 + - 308c1e2c-dfce-47bc-ba96-be56bb5d6caa: 0e9f4dad-cda4-4b9c-b029-f49c59d6f61e + - 3d80a2b7-0afc-4f47-8426-cf330cae822e: d2986312-30ce-414e-858c-ef9f13ea934d + - 5174d39b-ac84-4259-8155-0d33022a5ee9: d4cd6434-45f9-4501-ba64-f4ba9a747f14 + - 54ad9b7b-6b93-4a87-90b0-075d67293314: 04337581-50e2-4ee9-8ed1-2f0e3d79ca1f + - 67ec9c6b-dd75-45b3-a2eb-63bbf22e1578: f257f4e2-e586-45f9-941d-05721055bd54 + - 714479e1-9b3b-4212-929c-69e82e7c7aed: 669c3d6a-8380-4032-bdc2-4b445ae75df1 + - 7dc2ea5f-4f2f-4ac2-87ec-a2385720b27e: ebda812c-31c0-4510-855b-aff6c41c2c33 + - 98583c17-a07e-434f-8f0c-ef91e9aeb180: 3d4816b2-26f1-493b-8c42-521f6a14debb + - 987ee73b-1af2-44a1-ad7f-410c58cfbad9: 6a5042d9-eed1-4eaf-8d17-183b69fd366b + - 9f5b3b07-15e6-48fe-97e7-bebfecf5e056: b459046b-7558-4c50-9c4c-6794ef57fdea + - b60adc9e-2655-45d4-b200-f0431c2a4a65: 42ba2b74-c5c3-42df-a01e-142dace557d5 + - be4a8ee8-1bd1-448a-8e7d-e5d5447f7ee2: 7b4af132-5953-437a-a3d8-b641aadc388a + - c47f6b10-b69f-4045-ac4d-6263997f5c6b: 0c754414-42a9-4905-90e2-eb9d2199415e + - d3dedd65-8bc7-44d8-9794-1d63d0455648: f7452aaf-1ba9-479a-9664-5cbfe99580e3 + - dfa5337e-d140-4a07-a083-47f1d3d8a8ad: b043a560-a01d-498c-afe6-5f704ffdd809 + - eac7865f-b80f-436b-bb1a-a39c82f71858: 90ec247f-3ef7-4e4b-8b5b-eb835ddf1fb2 + - f146ef79-91da-4e8d-9584-8f1ee2e27d68: cf636233-b03a-4629-8b07-7ee9da5ad3e1 + - f40a497f-7a41-4a57-9453-5412d16d9f10: 6d6e8699-ce24-45c7-8271-2675588a0867 + - f84d1274-0e32-401e-829e-ea9a079c42d4: c22dd6da-3618-4913-b79e-dbc349d8dc47 + - fb65533d-fcd3-4619-8b7c-7400d0aece95: 486b3d2c-47c7-4e29-b883-2b6e152ed6ab + SourceState: ! 17ffe289-b64f-4277-950c-36b921043b9a +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! d50f4720-9e55-4a7b-a3dd-e30441a17269 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0c754414-42a9-4905-90e2-eb9d2199415e + - ! d2986312-30ce-414e-858c-ef9f13ea934d + - ! cef8097a-6f4f-4811-85ff-cf754bc9b631 + - ! 3d4816b2-26f1-493b-8c42-521f6a14debb + - ! 6d6e8699-ce24-45c7-8271-2675588a0867 + Components: + - ! ebda812c-31c0-4510-855b-aff6c41c2c33 + - ! 6a5042d9-eed1-4eaf-8d17-183b69fd366b +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f257f4e2-e586-45f9-941d-05721055bd54 + - ! 74bdf545-8972-42a8-b36e-2ba455f9f5d0 + - ! 97d89735-4c36-4df6-86d8-b4902514d226 + - ! 5ebc3e80-41f0-45b8-b781-0073e56d60e4 + - ! f7452aaf-1ba9-479a-9664-5cbfe99580e3 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Fins + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d4cd6434-45f9-4501-ba64-f4ba9a747f14 + - ! cf636233-b03a-4629-8b07-7ee9da5ad3e1 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Nose Cone.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Nose Cone.prefab new file mode 100644 index 00000000..8120f089 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Nose Cone.prefab @@ -0,0 +1,786 @@ +- ! + PackagePath: "" + objects: + - ! 4d4da0cf-a555-42d9-bbc1-f5bc3758fcaa + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 93612313-0a90-4121-b188-7ebcc75ddd2d + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9c93e4a9-3790-4103-8715-27046ef5f42e + - ! b110ab89-5867-4681-8b4a-f959e671ca7a +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e2156f96-1820-4cf4-9df2-e2b2400e2cdf + Components: + - ! 4b50c70a-f479-469d-8f4a-726628abfd23 + - ! 010e9264-693e-400f-92c4-c30913554812 + - ! bc081610-c6fe-45b4-aec3-79859aad0825 + - ! fa0706a2-cf1b-4a7f-b44c-09fc89c24b93 + - ! 6ce4fdb6-d8cc-41e1-b4ac-33a2f0f3c80b + - ! 2c2e2d2d-f4da-43bd-acdb-8e4287972b67 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Nose Cone + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c2e85530-895c-4b66-97ae-4c01f14cbd99 + - ! eb5043f0-0485-4778-a5cf-2dfed2fe2901 + - ! a61fef93-912d-45bb-9ce9-e80e83834289 + - ! 2ca0522f-111e-4c27-9acc-fa46a30c1250 + - ! 326760f6-d0fe-41e9-a4c6-8225931a2e42 + Components: + - ! 9eca1883-1781-41d7-84fe-5d7ea848e6d6 + - ! e2ee7e85-6f76-4f18-aa35-a71c5d9067fb +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 350d011f-f256-477d-a8d3-32c2f075d507 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1d5a5d8f-0c8d-491a-9df3-cb41482c90ec + - ! 76753906-bd29-4161-b9d5-82f2bb28fd29 + - ! 407d5ee7-c02b-4578-a66e-3b388cfcba04 + - ! 7e1047c9-2bd3-4c57-ada6-2fa85a869bc5 + - ! 17113f09-a9f1-485b-9347-8cc1431cde43 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6ce5ff74-215f-405c-9fe4-4c15457e96fb + - ! e630fb6a-8edf-458c-b080-9c57d97defa1 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 93612313-0a90-4121-b188-7ebcc75ddd2d + - ! 38e135a7-146b-4185-960f-9afb9367e177 +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! e630fb6a-8edf-458c-b080-9c57d97defa1 + item: ! 4023788c-4052-4612-88ff-0ee51ad4a6af + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Modern + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 848760c4-1b41-4478-923f-ddef2fd75dee + - ! 4023788c-4052-4612-88ff-0ee51ad4a6af +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Nose Cone.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Nose Cone.prefab.meta new file mode 100644 index 00000000..ab13bd9d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Modern Nose Cone.prefab.meta @@ -0,0 +1,833 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! e56db565-cd60-4e54-9dc1-b211e729b73b + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! e56db565-cd60-4e54-9dc1-b211e729b73b + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! 2aefb3e3-2735-4c2d-af36-ad922e4e4379 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 203c0c44-285c-4262-9061-dbbede15ee93 + item: ! b1beb072-2b6a-40d1-a71b-a26832e85349 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Modern + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + SourceRemaps: + - 010e9264-693e-400f-92c4-c30913554812: bc6bb6b2-a4e6-4b3f-aac4-7a3ce71ccb0b + - 17113f09-a9f1-485b-9347-8cc1431cde43: 0803b576-eaff-48de-beeb-04a1571de902 + - 1d5a5d8f-0c8d-491a-9df3-cb41482c90ec: 6abf68c1-7a3d-4ef7-b704-9fc28c6e8990 + - 2c2e2d2d-f4da-43bd-acdb-8e4287972b67: b862062f-a2c9-43c9-aad1-ee7f252864f1 + - 2ca0522f-111e-4c27-9acc-fa46a30c1250: e3ff957b-b6eb-4c85-840f-5501be349568 + - 326760f6-d0fe-41e9-a4c6-8225931a2e42: ded9979d-13d0-40c3-bf97-79bbb9db645f + - 38e135a7-146b-4185-960f-9afb9367e177: 0a40c47b-3723-49f6-816c-16b03e53e9d5 + - 4023788c-4052-4612-88ff-0ee51ad4a6af: b1beb072-2b6a-40d1-a71b-a26832e85349 + - 407d5ee7-c02b-4578-a66e-3b388cfcba04: 2e0d3da4-1be1-497b-a111-0e20a439bf75 + - 4b50c70a-f479-469d-8f4a-726628abfd23: 0695d7f5-918d-49f5-aae9-3d256b41e47b + - 4d4da0cf-a555-42d9-bbc1-f5bc3758fcaa: d0b1b74f-31b3-4187-a713-0f7902606aa0 + - 6ce4fdb6-d8cc-41e1-b4ac-33a2f0f3c80b: 0d75f936-b6d7-4929-8eea-a1a5167289dc + - 6ce5ff74-215f-405c-9fe4-4c15457e96fb: 4e9dcdf9-9a48-4e7d-9b08-3a2fedd97dd1 + - 76753906-bd29-4161-b9d5-82f2bb28fd29: 53e5cd6c-414d-4523-b64c-9b9d850288ed + - 7e1047c9-2bd3-4c57-ada6-2fa85a869bc5: 3508ee4a-94aa-4bb5-be67-93a29d4fc244 + - 848760c4-1b41-4478-923f-ddef2fd75dee: 3f7d6a7b-7b18-4441-9b3b-d169852e2ff0 + - 93612313-0a90-4121-b188-7ebcc75ddd2d: a1486918-3e86-4a67-9a5f-fd79e30c4c18 + - 9c93e4a9-3790-4103-8715-27046ef5f42e: 4fe60f56-ae56-48c4-bf09-d860888acdf5 + - 9eca1883-1781-41d7-84fe-5d7ea848e6d6: a9c3ff20-a944-4cda-92e3-db55b41a02b6 + - a61fef93-912d-45bb-9ce9-e80e83834289: 92b3aaf2-5dbf-4403-8f99-7bd65bbf35c5 + - b110ab89-5867-4681-8b4a-f959e671ca7a: 68832b60-68e5-4923-b5e1-2f1373cf6040 + - bc081610-c6fe-45b4-aec3-79859aad0825: da39f12d-6647-41e7-945f-b96276c8f32e + - c2e85530-895c-4b66-97ae-4c01f14cbd99: 69f9e2c1-16d7-4913-b1e8-602c3fa19000 + - e2156f96-1820-4cf4-9df2-e2b2400e2cdf: 6bab6732-b0a7-439b-93de-7fda09820e79 + - e2ee7e85-6f76-4f18-aa35-a71c5d9067fb: 1c75c3d4-ec49-4356-b21a-f4ce09a0ca06 + - e630fb6a-8edf-458c-b080-9c57d97defa1: 203c0c44-285c-4262-9061-dbbede15ee93 + - eb5043f0-0485-4778-a5cf-2dfed2fe2901: e0c2294b-0157-4ab6-b3cc-2933de8a01f3 + - fa0706a2-cf1b-4a7f-b44c-09fc89c24b93: 17ec9f5a-a184-4d8a-b13a-d8d5ccd4f62b + SourceState: ! 62883499-5fc4-42d6-96bd-f0a435d32983 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 350d011f-f256-477d-a8d3-32c2f075d507 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PackagePath: "" + objects: + - ! d0b1b74f-31b3-4187-a713-0f7902606aa0 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4e9dcdf9-9a48-4e7d-9b08-3a2fedd97dd1 + - ! 203c0c44-285c-4262-9061-dbbede15ee93 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a1486918-3e86-4a67-9a5f-fd79e30c4c18 + - ! 0a40c47b-3723-49f6-816c-16b03e53e9d5 +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6abf68c1-7a3d-4ef7-b704-9fc28c6e8990 + - ! 53e5cd6c-414d-4523-b64c-9b9d850288ed + - ! 2e0d3da4-1be1-497b-a111-0e20a439bf75 + - ! 3508ee4a-94aa-4bb5-be67-93a29d4fc244 + - ! 0803b576-eaff-48de-beeb-04a1571de902 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Nose Cone + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! a1486918-3e86-4a67-9a5f-fd79e30c4c18 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 69f9e2c1-16d7-4913-b1e8-602c3fa19000 + - ! e0c2294b-0157-4ab6-b3cc-2933de8a01f3 + - ! 92b3aaf2-5dbf-4403-8f99-7bd65bbf35c5 + - ! e3ff957b-b6eb-4c85-840f-5501be349568 + - ! ded9979d-13d0-40c3-bf97-79bbb9db645f + Components: + - ! a9c3ff20-a944-4cda-92e3-db55b41a02b6 + - ! 1c75c3d4-ec49-4356-b21a-f4ce09a0ca06 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6bab6732-b0a7-439b-93de-7fda09820e79 + Components: + - ! 0695d7f5-918d-49f5-aae9-3d256b41e47b + - ! bc6bb6b2-a4e6-4b3f-aac4-7a3ce71ccb0b + - ! da39f12d-6647-41e7-945f-b96276c8f32e + - ! 17ec9f5a-a184-4d8a-b13a-d8d5ccd4f62b + - ! 0d75f936-b6d7-4929-8eea-a1a5167289dc + - ! b862062f-a2c9-43c9-aad1-ee7f252864f1 +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3f7d6a7b-7b18-4441-9b3b-d169852e2ff0 + - ! b1beb072-2b6a-40d1-a71b-a26832e85349 +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4fe60f56-ae56-48c4-bf09-d860888acdf5 + - ! 68832b60-68e5-4923-b5e1-2f1373cf6040 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Nose Cone Category.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Nose Cone Category.prefab new file mode 100644 index 00000000..34016d06 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Nose Cone Category.prefab @@ -0,0 +1,180 @@ +- ! + PackagePath: "" + objects: + - ! e4d87800-e482-451f-9b11-6760655c1786 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Nose Cone + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 70 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.000000 + right: 0.665100 + top: 0.000000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: ContactName + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9cbba2be-7100-4203-923d-228c8bb83d95 + - ! 3eb71fa2-6477-4fff-802b-71eff302be4f +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d8a7dff6-f3ec-4f77-aacd-10ce1fd11f4d + Components: + - ! 0bdcf70d-ee8f-430c-a43a-7b8a2c2bf998 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Nose Cone Category.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Nose Cone Category.prefab.meta new file mode 100644 index 00000000..fd8253b4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Nose Cone Category.prefab.meta @@ -0,0 +1,204 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! 8104e815-4316-48be-ad1a-2021666f989f + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 8104e815-4316-48be-ad1a-2021666f989f + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! 81ce5b2e-196a-495d-81ad-ae1265f186cf + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: ContactName + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e33e2aa5-3b69-4043-9c54-d299d0a2de33 + - ! bd82e01d-8d57-4135-bd51-8c2b40cd00ed +- ! + SourceRemaps: + - 0bdcf70d-ee8f-430c-a43a-7b8a2c2bf998: 93953084-50d8-4b67-b469-60c6db9e419b + - 3eb71fa2-6477-4fff-802b-71eff302be4f: bd82e01d-8d57-4135-bd51-8c2b40cd00ed + - 9cbba2be-7100-4203-923d-228c8bb83d95: e33e2aa5-3b69-4043-9c54-d299d0a2de33 + - d8a7dff6-f3ec-4f77-aacd-10ce1fd11f4d: 2f18ed29-84d9-4078-8f94-3f5ce94a679d + - e4d87800-e482-451f-9b11-6760655c1786: 9ea91039-f999-4878-8e05-ec017017cd70 + SourceState: ! add4d468-52fb-4673-8299-7455e9cb7dc9 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2f18ed29-84d9-4078-8f94-3f5ce94a679d + Components: + - ! 93953084-50d8-4b67-b469-60c6db9e419b +- ! + PackagePath: "" + objects: + - ! 9ea91039-f999-4878-8e05-ec017017cd70 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Nose Cone + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 70 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.000000 + right: 0.665100 + top: 0.000000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Body Tube.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Body Tube.prefab new file mode 100644 index 00000000..8046e8fe --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Body Tube.prefab @@ -0,0 +1,786 @@ +- ! + PackagePath: "" + objects: + - ! c59556e4-4b99-43ff-ae26-201383875418 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 60c75191-41d7-4d40-a8e5-cba46df89805 + - ! e2831ccf-3bdf-4059-a3c3-963b91aea017 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 744d0ebf-a38c-4ea1-86f5-7e6d5aeea8c0 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 60c75191-41d7-4d40-a8e5-cba46df89805 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Sleek + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Body Tube + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 569bea8c-7173-4e3d-bbcd-139a079c61c8 + - ! b8b06e72-e48e-4363-ac90-2a8914e77eec +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f30bde82-12d8-4bd1-a826-937e5e3ebf94 + - ! 88f08dee-ba2c-470f-81bd-07e13aa3c6bc +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 8d161af3-a5a7-4524-824f-117bf8706557 + - ! 90d4e6e4-0714-479a-9118-aeeb05d3bb0b +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 97c8db06-2847-49b6-8b99-d8efcda537b1 + - ! bca393ea-daaa-47fe-9c8c-ce5366e76fa9 + - ! eb066e26-8167-48e5-95ba-01abcaeddda2 + - ! 94084e15-0897-4dcb-8df4-e1f1e89cff7c + - ! cd590b3f-a211-4bc2-ba77-2eac24e74290 + Components: + - ! 50c16700-38d1-4618-89a6-0580a1ab8a86 + - ! f0e8a853-2cd4-4ed8-bcc4-f92bc8bf7e88 +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 23ca54e1-0825-4ea6-adb6-695b63866dc5 + Components: + - ! b460dca1-e257-4432-9ead-f7307792c15d + - ! a05ecd97-aa6a-4b52-9283-6549e2d3fd94 + - ! 7d25a5af-f035-4657-9557-95101ff4fe6e + - ! 17eb10ea-72bf-4e21-8879-4ae631d8016c + - ! fcd33af4-c74a-4ade-9aa7-3068da098576 + - ! 6cc0500f-27e5-4770-bcbc-468b6d5442e2 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! dbb8237b-873d-489a-bc2f-c0059766e5db + - ! c4dc5835-f7d0-4eb6-ac69-ede31f56b04f + - ! 09425142-e3fa-48a2-b086-25187917173a + - ! 28633d2d-853f-4b56-9122-28967c0e1cb8 + - ! c2f26cf7-f83a-48c3-9590-059d8a296eaf +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 88f08dee-ba2c-470f-81bd-07e13aa3c6bc + item: ! 90d4e6e4-0714-479a-9118-aeeb05d3bb0b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Body Tube.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Body Tube.prefab.meta new file mode 100644 index 00000000..b2de45cf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Body Tube.prefab.meta @@ -0,0 +1,833 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! 32671acc-9b4d-4487-ac10-3af976d942d7 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 32671acc-9b4d-4487-ac10-3af976d942d7 + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! a29727c7-f35e-4c4c-b28b-1089f8485177 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3db0e386-2fe6-4ac0-8f72-bcf7fef9cc2d + - ! 9fb255e7-b980-4860-9fd4-02c0647cb380 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f5040287-3b09-40b1-b1af-82054c347a63 + - ! b7c471b6-efd7-4349-a3a5-b503c178df5a + - ! 6b52870a-62ba-4c33-a0ad-3902d04da2f1 + - ! 92ab2fbb-679b-4321-81e2-3ac3117adb92 + - ! 998ed490-fab9-4e90-965f-7a069aada02d + Components: + - ! 7142af12-b99a-472d-acd8-e5d087b977f6 + - ! b1b2e433-741a-4953-8ebd-bb48cf693664 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Sleek + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 28762f22-f3ee-4a6d-b132-d1efa2e5c32e + - ! e6e1c168-0880-4817-a001-7fa2cdbfd602 + - ! 5c7d5100-701d-4780-916b-3cc889098595 + - ! 0e446cd1-f302-41e8-8e05-77bb13ba4a4d + - ! 2af4d4c0-21e7-4c9f-befa-a33f058e933e +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d402173f-565c-4b35-853a-ca9267ce1054 + - ! b9d51376-6542-47ca-b709-9cb014960aaa +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 3db0e386-2fe6-4ac0-8f72-bcf7fef9cc2d + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 123776b5-f235-404d-b6d4-c40e7574cd2e + Components: + - ! 83740d9b-d8c0-4c13-9a30-8d6757adbff5 + - ! 8c4e6328-cdd2-429d-a89a-ee9bc3f4de0b + - ! 621309ab-f8ec-458f-a997-8a552ebf3c11 + - ! 213b617d-4da5-47a8-af5d-b9786b9e5af2 + - ! 4e495714-ea95-4dbd-a15c-adb5e9c2665a + - ! 935ff43c-7d0c-4b76-8db2-7756c8c794e0 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + SourceRemaps: + - 09425142-e3fa-48a2-b086-25187917173a: 5c7d5100-701d-4780-916b-3cc889098595 + - 17eb10ea-72bf-4e21-8879-4ae631d8016c: 213b617d-4da5-47a8-af5d-b9786b9e5af2 + - 23ca54e1-0825-4ea6-adb6-695b63866dc5: 123776b5-f235-404d-b6d4-c40e7574cd2e + - 28633d2d-853f-4b56-9122-28967c0e1cb8: 0e446cd1-f302-41e8-8e05-77bb13ba4a4d + - 50c16700-38d1-4618-89a6-0580a1ab8a86: 7142af12-b99a-472d-acd8-e5d087b977f6 + - 569bea8c-7173-4e3d-bbcd-139a079c61c8: d402173f-565c-4b35-853a-ca9267ce1054 + - 60c75191-41d7-4d40-a8e5-cba46df89805: 3db0e386-2fe6-4ac0-8f72-bcf7fef9cc2d + - 6cc0500f-27e5-4770-bcbc-468b6d5442e2: 935ff43c-7d0c-4b76-8db2-7756c8c794e0 + - 7d25a5af-f035-4657-9557-95101ff4fe6e: 621309ab-f8ec-458f-a997-8a552ebf3c11 + - 88f08dee-ba2c-470f-81bd-07e13aa3c6bc: 3e72ed45-a1e1-43d7-9a2f-de7fadfa77ef + - 8d161af3-a5a7-4524-824f-117bf8706557: 6e129307-da56-4636-a437-b37e6666be20 + - 90d4e6e4-0714-479a-9118-aeeb05d3bb0b: bb9e0dc3-b1ea-468d-857e-c65c3b0b2923 + - 94084e15-0897-4dcb-8df4-e1f1e89cff7c: 92ab2fbb-679b-4321-81e2-3ac3117adb92 + - 97c8db06-2847-49b6-8b99-d8efcda537b1: f5040287-3b09-40b1-b1af-82054c347a63 + - a05ecd97-aa6a-4b52-9283-6549e2d3fd94: 8c4e6328-cdd2-429d-a89a-ee9bc3f4de0b + - b460dca1-e257-4432-9ead-f7307792c15d: 83740d9b-d8c0-4c13-9a30-8d6757adbff5 + - b8b06e72-e48e-4363-ac90-2a8914e77eec: b9d51376-6542-47ca-b709-9cb014960aaa + - bca393ea-daaa-47fe-9c8c-ce5366e76fa9: b7c471b6-efd7-4349-a3a5-b503c178df5a + - c2f26cf7-f83a-48c3-9590-059d8a296eaf: 2af4d4c0-21e7-4c9f-befa-a33f058e933e + - c4dc5835-f7d0-4eb6-ac69-ede31f56b04f: e6e1c168-0880-4817-a001-7fa2cdbfd602 + - c59556e4-4b99-43ff-ae26-201383875418: 352b9977-e0ec-483e-a166-4da6b2c5885b + - cd590b3f-a211-4bc2-ba77-2eac24e74290: 998ed490-fab9-4e90-965f-7a069aada02d + - dbb8237b-873d-489a-bc2f-c0059766e5db: 28762f22-f3ee-4a6d-b132-d1efa2e5c32e + - e2831ccf-3bdf-4059-a3c3-963b91aea017: 9fb255e7-b980-4860-9fd4-02c0647cb380 + - eb066e26-8167-48e5-95ba-01abcaeddda2: 6b52870a-62ba-4c33-a0ad-3902d04da2f1 + - f0e8a853-2cd4-4ed8-bcc4-f92bc8bf7e88: b1b2e433-741a-4953-8ebd-bb48cf693664 + - f30bde82-12d8-4bd1-a826-937e5e3ebf94: 1376f688-27af-4347-bbca-58716ce3559c + - fcd33af4-c74a-4ade-9aa7-3068da098576: 4e495714-ea95-4dbd-a15c-adb5e9c2665a + SourceState: ! f8a2a099-ca65-49b6-977a-7c4bccbe827a +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 3e72ed45-a1e1-43d7-9a2f-de7fadfa77ef + item: ! bb9e0dc3-b1ea-468d-857e-c65c3b0b2923 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6e129307-da56-4636-a437-b37e6666be20 + - ! bb9e0dc3-b1ea-468d-857e-c65c3b0b2923 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Body Tube + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 744d0ebf-a38c-4ea1-86f5-7e6d5aeea8c0 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1376f688-27af-4347-bbca-58716ce3559c + - ! 3e72ed45-a1e1-43d7-9a2f-de7fadfa77ef +- ! + PackagePath: "" + objects: + - ! 352b9977-e0ec-483e-a166-4da6b2c5885b + LazyLoading: false + RetainAssets: true diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Fins.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Fins.prefab new file mode 100644 index 00000000..8cd19e1f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Fins.prefab @@ -0,0 +1,786 @@ +- ! + PackagePath: "" + objects: + - ! 1c8c4401-b2ee-40d9-8929-9b60b758a820 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 579aae54-bde4-4c08-bb3b-2e0ee792deae + item: ! f4b04982-4e38-418c-9ddd-eafc6af3fc05 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2b0734c8-4ae9-4f3a-8174-0e4b74b9fe0d + - ! 2fde45c9-c843-4c25-9809-9c9b8848bdb1 + - ! adcfaef5-5245-4ac2-be16-7e0846c355d8 + - ! 8ec41ead-730a-40ac-9fb6-0f60730ceded + - ! d5dd58bd-fa83-4e95-a4a2-e3839bedd412 + Components: + - ! e689eba4-46a5-40eb-9e20-eb7450c87bb9 + - ! 042d361b-7ee8-4153-a97f-e246d8677189 +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 35cf5bd3-079b-4aa2-8438-f16e02f859f2 + - ! 579aae54-bde4-4c08-bb3b-2e0ee792deae +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 322e67b1-862c-4cc7-a701-0585ac48b250 + - ! f4b04982-4e38-418c-9ddd-eafc6af3fc05 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Sleek + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! bda8e560-94dc-41db-ac44-05ac24037f5c + - ! 365e6e56-b19f-40a3-8408-646fa2dc04df +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 393a8689-9c61-457c-96ed-f4ae7500245f + - ! fec79b87-c89f-4a6a-ae99-b71bd563fbf3 +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f71710e7-a63a-4a58-beab-10fba9f2f3d9 + - ! 6c57049b-cec8-4460-8880-c34cf8a7083c + - ! 129c37e4-7829-415c-85a3-e8e9eb65097a + - ! 75c526fd-6bef-4a4f-8e41-1587741b259e + - ! 5056be82-9321-486f-a992-0e98da97ee1d +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 393a8689-9c61-457c-96ed-f4ae7500245f + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 8e124aaf-dd81-4f54-b216-064a0ce92c6f + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! aaf946b9-8dcc-479c-8537-d1d6569f0776 + Components: + - ! d0f23fc8-73d8-433b-88bd-aee687593b79 + - ! 5ae8741a-7b68-4227-8557-7f5a036285bd + - ! 54fab8c4-906d-4e71-8f98-1726ccc6c962 + - ! 3bb2c129-2cff-4080-97aa-c40a2c1b549c + - ! 0034101e-bebb-43f3-a088-0a56e5fe7de8 + - ! bd10a54b-c8dd-417c-b008-fe12dc04e230 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Fins + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Fins.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Fins.prefab.meta new file mode 100644 index 00000000..8abcdf96 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Fins.prefab.meta @@ -0,0 +1,833 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! f2f3ca41-1bd5-4136-a5db-f3edb882b464 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! f2f3ca41-1bd5-4136-a5db-f3edb882b464 + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! c7540764-dda8-46ef-af52-4f23c9e433c6 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Fins + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Sleek + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 1f227ab5-08a2-485b-bd81-23a17b65cb07 + item: ! 1b0dce03-9abd-4fd8-a75d-3e31de64267c + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! eb53d0c0-a08f-41a1-85f2-c161fac86999 + - ! f02ce2f7-bb56-401f-9f5b-69adeaf1e0a9 + - ! 77a71968-4c4f-4c0c-bf3a-e80f0f7ac8bf + - ! dbb42706-50e3-4297-b123-a285d186b088 + - ! 24b0f651-0cf4-4fb3-ab69-e148ac03c1f6 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2ee83184-8b05-4c6b-a03e-4650cd54839b + - ! 1f227ab5-08a2-485b-bd81-23a17b65cb07 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9321d236-8fe2-4dd4-9e22-9d2044ae5090 + - ! f5108a5e-af80-4be9-bd4f-544a81a8650c + - ! 3a6004b8-193d-4351-9a77-18e38c508e86 + - ! f75320c8-61c4-4d02-a7a1-9a74b0528a09 + - ! ac679c1d-21aa-4e2c-b6e1-523cc95b8266 + Components: + - ! a371067c-b8a3-4d7a-9f9f-ad917716b4d2 + - ! 21b3a612-20b0-4d1f-bd81-7164efd67247 +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! da7abb17-ae2b-4ff1-adc6-6983eb0275b1 + Components: + - ! 7d7681de-8be5-4ef5-b60b-52f8e0fde19b + - ! 5a9a9699-0c3a-422a-9b42-76f4d06f4c84 + - ! 5aa0fd63-5c41-4e91-8279-3e9b0eb67171 + - ! 2053501b-dd37-45ed-97e2-7a67d55d243f + - ! 3d03c550-6376-4e95-8c49-adcc29dda225 + - ! cf3641b7-12bd-4d68-b015-5c41be404cc3 +- ! + PackagePath: "" + objects: + - ! a55f72a6-368a-4f30-b790-268f2dc7a4cc + LazyLoading: false + RetainAssets: true +- ! + SourceRemaps: + - 0034101e-bebb-43f3-a088-0a56e5fe7de8: 3d03c550-6376-4e95-8c49-adcc29dda225 + - 042d361b-7ee8-4153-a97f-e246d8677189: 21b3a612-20b0-4d1f-bd81-7164efd67247 + - 129c37e4-7829-415c-85a3-e8e9eb65097a: 77a71968-4c4f-4c0c-bf3a-e80f0f7ac8bf + - 1c8c4401-b2ee-40d9-8929-9b60b758a820: a55f72a6-368a-4f30-b790-268f2dc7a4cc + - 2b0734c8-4ae9-4f3a-8174-0e4b74b9fe0d: 9321d236-8fe2-4dd4-9e22-9d2044ae5090 + - 2fde45c9-c843-4c25-9809-9c9b8848bdb1: f5108a5e-af80-4be9-bd4f-544a81a8650c + - 322e67b1-862c-4cc7-a701-0585ac48b250: 4a345723-2d06-4fd9-9081-f48d6e88d456 + - 35cf5bd3-079b-4aa2-8438-f16e02f859f2: 2ee83184-8b05-4c6b-a03e-4650cd54839b + - 365e6e56-b19f-40a3-8408-646fa2dc04df: 5ebd35ea-52c8-4f31-9371-b2067790173a + - 393a8689-9c61-457c-96ed-f4ae7500245f: 3968eecc-5e5a-4808-ab69-25c6db277ca8 + - 3bb2c129-2cff-4080-97aa-c40a2c1b549c: 2053501b-dd37-45ed-97e2-7a67d55d243f + - 5056be82-9321-486f-a992-0e98da97ee1d: 24b0f651-0cf4-4fb3-ab69-e148ac03c1f6 + - 54fab8c4-906d-4e71-8f98-1726ccc6c962: 5aa0fd63-5c41-4e91-8279-3e9b0eb67171 + - 579aae54-bde4-4c08-bb3b-2e0ee792deae: 1f227ab5-08a2-485b-bd81-23a17b65cb07 + - 5ae8741a-7b68-4227-8557-7f5a036285bd: 5a9a9699-0c3a-422a-9b42-76f4d06f4c84 + - 6c57049b-cec8-4460-8880-c34cf8a7083c: f02ce2f7-bb56-401f-9f5b-69adeaf1e0a9 + - 75c526fd-6bef-4a4f-8e41-1587741b259e: dbb42706-50e3-4297-b123-a285d186b088 + - 8ec41ead-730a-40ac-9fb6-0f60730ceded: f75320c8-61c4-4d02-a7a1-9a74b0528a09 + - aaf946b9-8dcc-479c-8537-d1d6569f0776: da7abb17-ae2b-4ff1-adc6-6983eb0275b1 + - adcfaef5-5245-4ac2-be16-7e0846c355d8: 3a6004b8-193d-4351-9a77-18e38c508e86 + - bd10a54b-c8dd-417c-b008-fe12dc04e230: cf3641b7-12bd-4d68-b015-5c41be404cc3 + - bda8e560-94dc-41db-ac44-05ac24037f5c: dc324e02-ff33-4249-80fc-4c018405af23 + - d0f23fc8-73d8-433b-88bd-aee687593b79: 7d7681de-8be5-4ef5-b60b-52f8e0fde19b + - d5dd58bd-fa83-4e95-a4a2-e3839bedd412: ac679c1d-21aa-4e2c-b6e1-523cc95b8266 + - e689eba4-46a5-40eb-9e20-eb7450c87bb9: a371067c-b8a3-4d7a-9f9f-ad917716b4d2 + - f4b04982-4e38-418c-9ddd-eafc6af3fc05: 1b0dce03-9abd-4fd8-a75d-3e31de64267c + - f71710e7-a63a-4a58-beab-10fba9f2f3d9: eb53d0c0-a08f-41a1-85f2-c161fac86999 + - fec79b87-c89f-4a6a-ae99-b71bd563fbf3: 038da1e1-cdff-4199-a0da-77346435e66d + SourceState: ! bb9aecbb-d191-438c-b9f1-c3ca8c9bab62 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 3968eecc-5e5a-4808-ab69-25c6db277ca8 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3968eecc-5e5a-4808-ab69-25c6db277ca8 + - ! 038da1e1-cdff-4199-a0da-77346435e66d +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 8e124aaf-dd81-4f54-b216-064a0ce92c6f + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4a345723-2d06-4fd9-9081-f48d6e88d456 + - ! 1b0dce03-9abd-4fd8-a75d-3e31de64267c +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! dc324e02-ff33-4249-80fc-4c018405af23 + - ! 5ebd35ea-52c8-4f31-9371-b2067790173a diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Nose Cone.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Nose Cone.prefab new file mode 100644 index 00000000..86a93335 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Nose Cone.prefab @@ -0,0 +1,786 @@ +- ! + PackagePath: "" + objects: + - ! 838d302d-72a7-4b6c-bd0c-22a5dbf6e9bb + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Nose Cone + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! dc9152aa-4140-4a25-9691-65ddffeedca0 + - ! ecb334b3-1077-478b-8b70-940d78f1bc76 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2b52aaf7-f19b-41d4-865a-a58e1774437d + Components: + - ! 59c0e234-d5af-44ec-834e-214def3398dd + - ! 8b57bc6e-fd67-4260-af52-26583636ad4b + - ! 1b52430b-0fda-44b3-8b94-009c5ac38efa + - ! f6f666e3-9051-497f-9dc1-94c40f2b4a6c + - ! f9c66bd4-e86f-4292-8e71-83fccde56ecf + - ! e6a50691-0604-498a-9dc8-b686f9bda8ae +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! bdbb4168-3122-4a6d-86b0-fcec475567f7 + item: ! 14808660-282a-44cb-bf0c-00d0f2b1af66 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a6c732eb-9782-4524-a5a4-c28df6b52032 + - ! 14808660-282a-44cb-bf0c-00d0f2b1af66 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9083824c-4ff4-4c08-9a2f-da15e986de3a + - ! 48eeaa89-164d-4f21-b2c6-a1d2a4caba26 + - ! e814623b-bc9b-44aa-a0d4-b54942c93aa9 + - ! 95988d17-31c2-465c-b963-fa32991a55e1 + - ! 38219481-05cc-4e39-9096-6e675c4407e0 + Components: + - ! af8a7e8c-6e83-4777-ab39-a74b86b9d1d8 + - ! 3c9f8095-088f-4f4a-83c7-6456e688367a +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b38110aa-74f3-40fa-a633-8b9dac7f0c7f + - ! bdbb4168-3122-4a6d-86b0-fcec475567f7 +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e65ea222-4aa6-47de-899e-39f4692dbaa2 + - ! 364e1d19-e2ce-49a4-8f8c-076db8fe89f6 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Sleek + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 31e11660-d89a-4744-a17f-4fe8c63d9ac2 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! dc9152aa-4140-4a25-9691-65ddffeedca0 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5155a1c9-cd5a-45f9-9943-196e2bec9820 + - ! 4945c3cd-4c9c-48fe-8f7e-eb336ecd8136 + - ! 29ee179a-5781-4180-9d2c-b172b1b67bf9 + - ! 596042d2-6df2-447e-b3ec-83cdae70bfdc + - ! 843ecdf5-77dd-4519-bb8d-1cbde8abf14f +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Nose Cone.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Nose Cone.prefab.meta new file mode 100644 index 00000000..8f2666f2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Sleek Nose Cone.prefab.meta @@ -0,0 +1,833 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! e7254ab7-df28-44a9-9252-05d53fbdc7da + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! e7254ab7-df28-44a9-9252-05d53fbdc7da + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! 54fef43d-08b8-4f49-904d-31bb51cf078c + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6dee0020-bf37-491b-9aa8-9d3775507d62 + - ! 8f409e14-fe2e-4e94-9566-93da63cfccca + - ! 6c821be6-2305-4534-93fc-0f65c0eb81b1 + - ! 24f792e6-09cd-4fde-ba30-d386352313bd + - ! 948f4d75-84a6-4f49-ad2a-dff3b6a37cc5 + Components: + - ! 8a060b1e-9252-4617-ac6d-b3a40f90f8ba + - ! 1c1f5939-47ba-440d-9b58-8fc0002e91d7 +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 4096038b-f4c9-469b-b822-e258c4b9daca + item: ! 61d97af7-db2a-4be2-a143-73a83c0eb604 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5bbf2f09-249e-41aa-89b3-17a0cb1fe768 + - ! f546044d-4e9a-4773-a05a-336c2e015f34 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 975d3f07-8446-4fc8-a2c0-1bb89390be55 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Sleek + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + SourceRemaps: + - 14808660-282a-44cb-bf0c-00d0f2b1af66: 61d97af7-db2a-4be2-a143-73a83c0eb604 + - 1b52430b-0fda-44b3-8b94-009c5ac38efa: ff941da2-10b8-4c89-af58-88a963aa3e0b + - 29ee179a-5781-4180-9d2c-b172b1b67bf9: fbb2f2e4-8d93-4966-9b2a-5529e8591d09 + - 2b52aaf7-f19b-41d4-865a-a58e1774437d: a5239480-a59c-4669-a59f-981dd2afd0b4 + - 364e1d19-e2ce-49a4-8f8c-076db8fe89f6: f546044d-4e9a-4773-a05a-336c2e015f34 + - 38219481-05cc-4e39-9096-6e675c4407e0: 948f4d75-84a6-4f49-ad2a-dff3b6a37cc5 + - 3c9f8095-088f-4f4a-83c7-6456e688367a: 1c1f5939-47ba-440d-9b58-8fc0002e91d7 + - 48eeaa89-164d-4f21-b2c6-a1d2a4caba26: 8f409e14-fe2e-4e94-9566-93da63cfccca + - 4945c3cd-4c9c-48fe-8f7e-eb336ecd8136: 84861551-5313-44aa-9842-5eb6071610f8 + - 5155a1c9-cd5a-45f9-9943-196e2bec9820: 7d956625-b739-4c77-b7d5-70884bbb567a + - 596042d2-6df2-447e-b3ec-83cdae70bfdc: 7550b83d-95ce-4c99-a682-85b439307132 + - 59c0e234-d5af-44ec-834e-214def3398dd: 239259ca-6774-4c40-adbe-68cbfee9acc3 + - 838d302d-72a7-4b6c-bd0c-22a5dbf6e9bb: 19d40f35-db70-4cab-b831-ffa38c50f8f2 + - 843ecdf5-77dd-4519-bb8d-1cbde8abf14f: 5fb89456-8d4e-466b-b1fb-dcfb25790642 + - 8b57bc6e-fd67-4260-af52-26583636ad4b: 79d0747f-7294-4b98-9adf-17a501c4a27c + - 9083824c-4ff4-4c08-9a2f-da15e986de3a: 6dee0020-bf37-491b-9aa8-9d3775507d62 + - 95988d17-31c2-465c-b963-fa32991a55e1: 24f792e6-09cd-4fde-ba30-d386352313bd + - a6c732eb-9782-4524-a5a4-c28df6b52032: c157e0d9-38cf-499f-aa55-509693364da3 + - af8a7e8c-6e83-4777-ab39-a74b86b9d1d8: 8a060b1e-9252-4617-ac6d-b3a40f90f8ba + - b38110aa-74f3-40fa-a633-8b9dac7f0c7f: 64990fac-c4f8-467a-a92d-174a21046ff8 + - bdbb4168-3122-4a6d-86b0-fcec475567f7: 4096038b-f4c9-469b-b822-e258c4b9daca + - dc9152aa-4140-4a25-9691-65ddffeedca0: 975d3f07-8446-4fc8-a2c0-1bb89390be55 + - e65ea222-4aa6-47de-899e-39f4692dbaa2: 5bbf2f09-249e-41aa-89b3-17a0cb1fe768 + - e6a50691-0604-498a-9dc8-b686f9bda8ae: 3d73e7b9-7644-467f-b1d2-6252062723c4 + - e814623b-bc9b-44aa-a0d4-b54942c93aa9: 6c821be6-2305-4534-93fc-0f65c0eb81b1 + - ecb334b3-1077-478b-8b70-940d78f1bc76: 08a6b8f0-92eb-4a5d-9695-f4e3203a871b + - f6f666e3-9051-497f-9dc1-94c40f2b4a6c: e90e2fba-40b3-4219-a4a3-2fea74aa2c22 + - f9c66bd4-e86f-4292-8e71-83fccde56ecf: 3d269535-f096-4c8a-b3c4-f464d75f9b3c + SourceState: ! dea200b8-7ec2-47c8-8be5-8f9bbeb9f837 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 31e11660-d89a-4744-a17f-4fe8c63d9ac2 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Nose Cone + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7d956625-b739-4c77-b7d5-70884bbb567a + - ! 84861551-5313-44aa-9842-5eb6071610f8 + - ! fbb2f2e4-8d93-4966-9b2a-5529e8591d09 + - ! 7550b83d-95ce-4c99-a682-85b439307132 + - ! 5fb89456-8d4e-466b-b1fb-dcfb25790642 +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 64990fac-c4f8-467a-a92d-174a21046ff8 + - ! 4096038b-f4c9-469b-b822-e258c4b9daca +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c157e0d9-38cf-499f-aa55-509693364da3 + - ! 61d97af7-db2a-4be2-a143-73a83c0eb604 +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a5239480-a59c-4669-a59f-981dd2afd0b4 + Components: + - ! 239259ca-6774-4c40-adbe-68cbfee9acc3 + - ! 79d0747f-7294-4b98-9adf-17a501c4a27c + - ! ff941da2-10b8-4c89-af58-88a963aa3e0b + - ! e90e2fba-40b3-4219-a4a3-2fea74aa2c22 + - ! 3d269535-f096-4c8a-b3c4-f464d75f9b3c + - ! 3d73e7b9-7644-467f-b1d2-6252062723c4 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 975d3f07-8446-4fc8-a2c0-1bb89390be55 + - ! 08a6b8f0-92eb-4a5d-9695-f4e3203a871b +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PackagePath: "" + objects: + - ! 19d40f35-db70-4cab-b831-ffa38c50f8f2 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Body Tube.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Body Tube.prefab new file mode 100644 index 00000000..de7f7c73 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Body Tube.prefab @@ -0,0 +1,786 @@ +- ! + PackagePath: "" + objects: + - ! 1fcf9edf-78dc-439d-93ee-74a6ac9cbcb3 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Body Tube + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8c5e9ab6-5e70-4009-9759-0c343738e279 + - ! adaa24a6-c3ee-4a17-8de6-6c9cab6bb851 + - ! f6b9415d-c4b7-4a5e-80c0-7dc25a204a79 + - ! 6cd58e74-24ad-437e-8024-0d457b7efea8 + - ! f9f2fa41-ac29-4db8-b1dd-9697a1759bef + Components: + - ! 58677331-c7df-4d38-b175-f2269b16d1ea + - ! e32542bc-44d2-4827-b3d3-69e490223732 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! bbbccf8e-d1a1-4580-8348-cc52637c5249 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4cbd4886-abe1-4394-ad4a-3a92c38c9728 + - ! 05370453-887c-4780-bd2a-652e029a6bc4 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ba4df891-a304-454b-b8b7-2ab9a9e881c1 + - ! 99bf7aab-739e-49d1-a677-82f775e914d3 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Space Age + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 0a42a8e7-4d05-46d8-be51-2f1138e6b2d8 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9975a68e-de62-48a7-8cfb-422203bb0b17 + - ! 0c3029ed-16e2-4f28-9d0a-b6aa6229dea1 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0a42a8e7-4d05-46d8-be51-2f1138e6b2d8 + - ! b3960da4-6872-4df6-96ab-f498718c6a6c +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 99bf7aab-739e-49d1-a677-82f775e914d3 + item: ! 0c3029ed-16e2-4f28-9d0a-b6aa6229dea1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d724ed3e-6cc5-4f8c-abbd-2da39d7095af + - ! 168a905a-77fb-45ed-b0c2-4c500056a714 + - ! 5bb9dcb7-09b0-44f3-82f2-8f2ea45f031e + - ! bd26bace-9ff2-49e3-a2e0-0431619379de + - ! c650310f-f81b-43be-a423-8df04a60c8fd +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! aeafd3b4-05bc-4fe4-9e10-e93cd0a2a0bd + Components: + - ! 6344c490-29f5-415b-9a18-63c17d256977 + - ! df0de1b8-0ac7-4584-b110-31ea4831e57e + - ! 9b87ecb1-7e81-4a0a-b083-459ad16ab883 + - ! 0de6af8b-a7bf-478c-9c71-2a96a823b4f0 + - ! 81b9f874-d48f-4362-985b-79f35eae5ae1 + - ! a31b0884-cc96-4248-94bd-0700633a0e4b diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Body Tube.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Body Tube.prefab.meta new file mode 100644 index 00000000..55f603f2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Body Tube.prefab.meta @@ -0,0 +1,833 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! 76789411-9f7c-4352-84bb-6a762a706580 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 76789411-9f7c-4352-84bb-6a762a706580 + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! e16d868b-888d-4476-95d0-4d79ff900fde + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9c49ce7a-a583-460f-a6bd-182ab42f56ca + - ! 24345ca2-d96b-4993-89b5-96b9d59f9674 +- ! + PackagePath: "" + objects: + - ! de26d101-d8b7-4488-9afb-7205776c6c92 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! f0e7808d-9b61-45e5-80f8-26eb683d7cff + item: ! 554b4583-90c5-4491-878c-f86a2ac41cae + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! fe61bbe8-404b-45cc-a905-c515b4e280d6 + - ! 554b4583-90c5-4491-878c-f86a2ac41cae +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 63eaa0f7-6d6e-4e07-9e84-023f9e44e58c + - ! b1af347f-8f97-4acb-9fe6-849dd4d0054e + - ! 41943458-ca53-43d7-b290-2b2c0222b769 + - ! c101c1fa-21b1-4e0b-922f-3d6199007513 + - ! 7024b348-9a84-4a46-a19f-287183c0a3a7 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Body Tube + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0e127245-bbb7-4430-9b23-a12c83a7a0bd + Components: + - ! 3723d6fa-2f9a-4921-bc10-66bad4b64500 + - ! d7e435af-2a20-4e04-bb9e-44f2876febf0 + - ! e4e7334b-992f-413f-bba1-613f2537ad1e + - ! b5f95568-677a-4ac4-b1f2-fd6adf727e1a + - ! b9df867f-daec-4065-a472-c9a3bae7496c + - ! ddb5f368-b2d6-4067-b42e-3d69f3025b47 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 58c447aa-2486-4f1e-97cf-a9a35362709c + - ! f0e7808d-9b61-45e5-80f8-26eb683d7cff +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b93ef8ba-822e-40b8-923b-6769d7cf3b38 + - ! cbb5d64d-86ce-42ab-8285-b5478d581f9f +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! bbbccf8e-d1a1-4580-8348-cc52637c5249 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 9c49ce7a-a583-460f-a6bd-182ab42f56ca + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8ed46411-797f-4a87-82c1-dd12448eb91c + - ! 457ce9e1-8a40-417b-9252-e0e03a409ff4 + - ! 47bd2cdf-bf0e-47a9-909f-7fbe29fd3413 + - ! ad3f7812-238e-4571-9be2-01ec326c6582 + - ! 64d6c337-9a6e-4e5d-8026-36706e419f0f + Components: + - ! 6dfb6929-e066-4d78-b210-b186be0da2e1 + - ! 1707310e-d56e-435a-831c-bf4d59e5360f +- ! + SourceRemaps: + - 05370453-887c-4780-bd2a-652e029a6bc4: cbb5d64d-86ce-42ab-8285-b5478d581f9f + - 0a42a8e7-4d05-46d8-be51-2f1138e6b2d8: 9c49ce7a-a583-460f-a6bd-182ab42f56ca + - 0c3029ed-16e2-4f28-9d0a-b6aa6229dea1: 554b4583-90c5-4491-878c-f86a2ac41cae + - 0de6af8b-a7bf-478c-9c71-2a96a823b4f0: b5f95568-677a-4ac4-b1f2-fd6adf727e1a + - 168a905a-77fb-45ed-b0c2-4c500056a714: b1af347f-8f97-4acb-9fe6-849dd4d0054e + - 1fcf9edf-78dc-439d-93ee-74a6ac9cbcb3: de26d101-d8b7-4488-9afb-7205776c6c92 + - 4cbd4886-abe1-4394-ad4a-3a92c38c9728: b93ef8ba-822e-40b8-923b-6769d7cf3b38 + - 58677331-c7df-4d38-b175-f2269b16d1ea: 6dfb6929-e066-4d78-b210-b186be0da2e1 + - 5bb9dcb7-09b0-44f3-82f2-8f2ea45f031e: 41943458-ca53-43d7-b290-2b2c0222b769 + - 6344c490-29f5-415b-9a18-63c17d256977: 3723d6fa-2f9a-4921-bc10-66bad4b64500 + - 6cd58e74-24ad-437e-8024-0d457b7efea8: ad3f7812-238e-4571-9be2-01ec326c6582 + - 81b9f874-d48f-4362-985b-79f35eae5ae1: b9df867f-daec-4065-a472-c9a3bae7496c + - 8c5e9ab6-5e70-4009-9759-0c343738e279: 8ed46411-797f-4a87-82c1-dd12448eb91c + - 9975a68e-de62-48a7-8cfb-422203bb0b17: fe61bbe8-404b-45cc-a905-c515b4e280d6 + - 99bf7aab-739e-49d1-a677-82f775e914d3: f0e7808d-9b61-45e5-80f8-26eb683d7cff + - 9b87ecb1-7e81-4a0a-b083-459ad16ab883: e4e7334b-992f-413f-bba1-613f2537ad1e + - a31b0884-cc96-4248-94bd-0700633a0e4b: ddb5f368-b2d6-4067-b42e-3d69f3025b47 + - adaa24a6-c3ee-4a17-8de6-6c9cab6bb851: 457ce9e1-8a40-417b-9252-e0e03a409ff4 + - aeafd3b4-05bc-4fe4-9e10-e93cd0a2a0bd: 0e127245-bbb7-4430-9b23-a12c83a7a0bd + - b3960da4-6872-4df6-96ab-f498718c6a6c: 24345ca2-d96b-4993-89b5-96b9d59f9674 + - ba4df891-a304-454b-b8b7-2ab9a9e881c1: 58c447aa-2486-4f1e-97cf-a9a35362709c + - bd26bace-9ff2-49e3-a2e0-0431619379de: c101c1fa-21b1-4e0b-922f-3d6199007513 + - c650310f-f81b-43be-a423-8df04a60c8fd: 7024b348-9a84-4a46-a19f-287183c0a3a7 + - d724ed3e-6cc5-4f8c-abbd-2da39d7095af: 63eaa0f7-6d6e-4e07-9e84-023f9e44e58c + - df0de1b8-0ac7-4584-b110-31ea4831e57e: d7e435af-2a20-4e04-bb9e-44f2876febf0 + - e32542bc-44d2-4827-b3d3-69e490223732: 1707310e-d56e-435a-831c-bf4d59e5360f + - f6b9415d-c4b7-4a5e-80c0-7dc25a204a79: 47bd2cdf-bf0e-47a9-909f-7fbe29fd3413 + - f9f2fa41-ac29-4db8-b1dd-9697a1759bef: 64d6c337-9a6e-4e5d-8026-36706e419f0f + SourceState: ! 15f52481-54a6-4b19-9590-5a958cff37fb +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Space Age + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Fins.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Fins.prefab new file mode 100644 index 00000000..850dba2e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Fins.prefab @@ -0,0 +1,786 @@ +- ! + PackagePath: "" + objects: + - ! e09b71f2-5f32-4004-874b-54d4f26cc318 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Fins + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9228366b-7f28-4dcb-b005-ced91bac69fa + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 43b72f08-2a0a-421c-b6fc-b19b95fadb70 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 43b72f08-2a0a-421c-b6fc-b19b95fadb70 + - ! 470262bf-17d8-449f-b53b-3f092269ab2b +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 15fb381e-cfa7-4be5-831b-1c676795aefe + - ! 558eb459-8dee-474c-8737-06422ad6b595 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! cbee2579-9985-4e56-85dc-42e0b48c6766 + - ! 4bc3b60b-a413-497a-b4a3-fb07e581d864 + - ! 82c0db81-8d98-42fb-937f-c080e4e4d3a3 + - ! a3f04b8a-a86a-46b4-9f0c-cb773961fe84 + - ! d7fea74f-1186-43c5-8dbb-ac58b700fab8 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6f94f9bb-d653-47f8-99cf-f9160c3bd15e + - ! 05cacbcd-9606-45fc-a20c-afb83bfe9b44 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Space Age + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! b2a49e7b-0a36-4f33-9aec-61b64f7b102b + item: ! 05cacbcd-9606-45fc-a20c-afb83bfe9b44 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 735b595c-d969-4e6e-8639-b682d3125b76 + - ! b2a49e7b-0a36-4f33-9aec-61b64f7b102b +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5fa6acc1-03c0-479b-8726-dfe0bdda8ecf + Components: + - ! 6448affb-da05-41d2-8a13-6b2d1a336928 + - ! 140babf0-e430-4545-997b-729090701be1 + - ! 3ba56ed9-e5c4-4213-b65d-e4bbd373c471 + - ! 673126e1-84ab-4775-bf70-58b2af909e69 + - ! 1e3c6186-36ca-4645-8adf-0d1b4104a167 + - ! 45ba3b27-56c6-42b4-a517-7c6a2be63cfd +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c9b677f0-2717-40f3-94f7-e1585e33b58d + - ! a6a6e977-d01e-416c-bb9b-26b50f509e4c + - ! 8a8b93a7-4515-4482-9083-823ad1371cb8 + - ! 5fec9439-23d0-4226-bc19-19192cb8df6a + - ! dc4c272c-7e15-43cd-a031-833d17dc3b99 + Components: + - ! 3a767734-c217-45f4-83fe-dc9211ec302c + - ! bf378d61-4f97-43c6-99cc-50d029227192 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Fins.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Fins.prefab.meta new file mode 100644 index 00000000..76758c65 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Fins.prefab.meta @@ -0,0 +1,833 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! dbb1f943-cd3e-4b20-89e5-0ce41c98a705 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! dbb1f943-cd3e-4b20-89e5-0ce41c98a705 + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! 1b3f8a90-88cd-4e26-81ff-27976c9f1a40 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PackagePath: "" + objects: + - ! 87030612-0d4c-40c3-be2a-669c76e65d10 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 38582ba4-28f2-477e-8149-8ca7c5892d20 + - ! f55dda3b-a03e-472f-9b80-a8e502617b64 +- ! + SourceRemaps: + - 05cacbcd-9606-45fc-a20c-afb83bfe9b44: ade48859-b464-4f80-97c7-8dbee07b65c5 + - 140babf0-e430-4545-997b-729090701be1: ed3a4eb9-09d1-4750-9390-02ddd68b69d5 + - 15fb381e-cfa7-4be5-831b-1c676795aefe: 7eb656dd-74c7-49d4-8f51-6b3251da76e1 + - 1e3c6186-36ca-4645-8adf-0d1b4104a167: 80309eb4-229b-4832-afc4-199ff90ea9f2 + - 3a767734-c217-45f4-83fe-dc9211ec302c: d8d24895-4796-476a-be81-8c65882f42df + - 3ba56ed9-e5c4-4213-b65d-e4bbd373c471: 2ca1d369-ab4e-423a-b385-3e360c757cb2 + - 43b72f08-2a0a-421c-b6fc-b19b95fadb70: 38582ba4-28f2-477e-8149-8ca7c5892d20 + - 45ba3b27-56c6-42b4-a517-7c6a2be63cfd: 82bc5e39-feb5-4d48-b40d-5b9a965af91e + - 470262bf-17d8-449f-b53b-3f092269ab2b: f55dda3b-a03e-472f-9b80-a8e502617b64 + - 4bc3b60b-a413-497a-b4a3-fb07e581d864: d64864de-b7d8-4446-a2d9-3ec2f7b91321 + - 558eb459-8dee-474c-8737-06422ad6b595: 55fda77f-9a41-45b7-a6a4-2fd33f00b9fd + - 5fa6acc1-03c0-479b-8726-dfe0bdda8ecf: 1239e419-dcbe-4a5f-9bbd-8f7390a6cc65 + - 5fec9439-23d0-4226-bc19-19192cb8df6a: b9c7dddd-d3fa-4c8b-85be-f8135839fb88 + - 6448affb-da05-41d2-8a13-6b2d1a336928: 00cc2e56-2408-4dbd-a827-5d090db347eb + - 673126e1-84ab-4775-bf70-58b2af909e69: 6060e174-5684-4713-9519-2be5508cc2c2 + - 6f94f9bb-d653-47f8-99cf-f9160c3bd15e: 6ca772b3-c48b-4508-ae47-0ef8f0a636b1 + - 735b595c-d969-4e6e-8639-b682d3125b76: 9d3fdc2e-dd57-4b14-af93-c608c71ba695 + - 82c0db81-8d98-42fb-937f-c080e4e4d3a3: 664a13ee-3eb7-4427-99c6-703f390ec14e + - 8a8b93a7-4515-4482-9083-823ad1371cb8: 1e931a1e-b177-4a3d-8052-302119eed464 + - a3f04b8a-a86a-46b4-9f0c-cb773961fe84: 5cd7e0bf-ce21-49c9-a2ca-7aa271ffcddf + - a6a6e977-d01e-416c-bb9b-26b50f509e4c: ef703494-3d41-4e14-b4c8-8ce8207ad97e + - b2a49e7b-0a36-4f33-9aec-61b64f7b102b: 42b09e09-d567-4abc-a440-664556874b3f + - bf378d61-4f97-43c6-99cc-50d029227192: 8ac092a9-27cf-4e67-a40c-aa3a620f7b52 + - c9b677f0-2717-40f3-94f7-e1585e33b58d: 6d7bbd15-c318-4470-8691-d8f42f2dd162 + - cbee2579-9985-4e56-85dc-42e0b48c6766: 750d1fae-f585-480d-9bb4-71d0c6aa30fa + - d7fea74f-1186-43c5-8dbb-ac58b700fab8: 6cb62b8f-7dcc-4c6d-9621-5e0ae9213a3e + - dc4c272c-7e15-43cd-a031-833d17dc3b99: 2430b21b-4f92-4653-8730-c30b7db1146f + - e09b71f2-5f32-4004-874b-54d4f26cc318: 87030612-0d4c-40c3-be2a-669c76e65d10 + SourceState: ! 05816baf-e150-46f9-a3cb-4f460167b5c1 +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 750d1fae-f585-480d-9bb4-71d0c6aa30fa + - ! d64864de-b7d8-4446-a2d9-3ec2f7b91321 + - ! 664a13ee-3eb7-4427-99c6-703f390ec14e + - ! 5cd7e0bf-ce21-49c9-a2ca-7aa271ffcddf + - ! 6cb62b8f-7dcc-4c6d-9621-5e0ae9213a3e +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1239e419-dcbe-4a5f-9bbd-8f7390a6cc65 + Components: + - ! 00cc2e56-2408-4dbd-a827-5d090db347eb + - ! ed3a4eb9-09d1-4750-9390-02ddd68b69d5 + - ! 2ca1d369-ab4e-423a-b385-3e360c757cb2 + - ! 6060e174-5684-4713-9519-2be5508cc2c2 + - ! 80309eb4-229b-4832-afc4-199ff90ea9f2 + - ! 82bc5e39-feb5-4d48-b40d-5b9a965af91e +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Space Age + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9d3fdc2e-dd57-4b14-af93-c608c71ba695 + - ! 42b09e09-d567-4abc-a440-664556874b3f +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9228366b-7f28-4dcb-b005-ced91bac69fa + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 38582ba4-28f2-477e-8149-8ca7c5892d20 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6d7bbd15-c318-4470-8691-d8f42f2dd162 + - ! ef703494-3d41-4e14-b4c8-8ce8207ad97e + - ! 1e931a1e-b177-4a3d-8052-302119eed464 + - ! b9c7dddd-d3fa-4c8b-85be-f8135839fb88 + - ! 2430b21b-4f92-4653-8730-c30b7db1146f + Components: + - ! d8d24895-4796-476a-be81-8c65882f42df + - ! 8ac092a9-27cf-4e67-a40c-aa3a620f7b52 +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 42b09e09-d567-4abc-a440-664556874b3f + item: ! ade48859-b464-4f80-97c7-8dbee07b65c5 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Fins + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7eb656dd-74c7-49d4-8f51-6b3251da76e1 + - ! 55fda77f-9a41-45b7-a6a4-2fd33f00b9fd +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6ca772b3-c48b-4508-ae47-0ef8f0a636b1 + - ! ade48859-b464-4f80-97c7-8dbee07b65c5 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Nose Cone.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Nose Cone.prefab new file mode 100644 index 00000000..26aca359 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Nose Cone.prefab @@ -0,0 +1,786 @@ +- ! + PackagePath: "" + objects: + - ! b4f3e188-3f1c-46c5-b12c-455564156d64 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0b4805ca-d62d-4827-a007-8e843fa6dc8a + - ! 7162e67b-0cba-4d63-bdb1-da461439a8ef +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0f52906a-b05b-4cd3-a6d5-2fd73fc4ff00 + Components: + - ! 14b94969-b60e-4c40-ae13-e6f1456b9c26 + - ! 2aa2112d-0e68-4d5c-b5f6-1c42b81d6272 + - ! 12708647-078a-4a90-89e8-60bbe601703e + - ! b72b1e75-2f31-475b-88d0-29d021a594be + - ! d891b297-70e7-47e3-b38f-67ae2a3c6574 + - ! f4f5e768-e9ef-44b9-9b4a-ad89499b475e +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9364e498-5ccc-4774-80c9-ddec2898c64d + - ! 19b63b05-7f5e-4172-947a-800d073764fa + - ! 7443b1ae-0675-4ebe-8c75-960b895954d5 + - ! 7d46e715-e40d-49d6-9a2b-6d94612de00e + - ! c2f380b6-a45c-4da0-92fa-79afe684e758 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b1d2a1ce-6a4b-4af4-aacc-92dc52332333 + - ! c09c9199-e181-4b24-b489-6e2dd11c2add +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b0a49a76-0593-4a5a-8365-72277252b6c5 + - ! b8e4112f-4dec-4d7f-93f2-a0e00a1150ba +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b276a23f-2e6f-44a9-999b-1e6c7d2be98b + - ! 9dcf7003-2543-4a01-963e-2a7b953d1552 + - ! 551233a2-bee8-4716-b5f7-b31054de7964 + - ! fc66bf23-584c-4e1d-a49f-6d4eb9e2c8d5 + - ! 4c8869ce-9e53-42a2-b579-120402a8faea + Components: + - ! 7763dcd2-ce6f-4f92-a285-b99f2d8e4b3f + - ! ba1eb7a5-d971-4c4d-911f-160f2fe2c5e6 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Space Age + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9f7bb172-544f-4eac-9bc1-cd471590c2d5 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! b8e4112f-4dec-4d7f-93f2-a0e00a1150ba + item: ! c09c9199-e181-4b24-b489-6e2dd11c2add + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Nose Cone + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 0b4805ca-d62d-4827-a007-8e843fa6dc8a + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b95bb3dd-cea5-48a7-b56a-cad2331956e1 + - ! 60054881-a8b4-4e10-beb6-349ec65f01d7 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Nose Cone.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Nose Cone.prefab.meta new file mode 100644 index 00000000..b9ded003 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Prefabs/ScrollViewListItems/Space Age Nose Cone.prefab.meta @@ -0,0 +1,833 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! b9b3aff4-658d-4c76-ab3d-b479d4a722c8 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! b9b3aff4-658d-4c76-ab3d-b479d4a722c8 + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! da95dbd8-a75e-42fb-a804-a6ac8dc1bcd4 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PackagePath: "" + objects: + - ! b9999559-b8a9-4d0a-9f1b-2251f98d77d7 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3fdfcbbf-be11-4497-83b0-31193acb55c0 + - ! b1e252ca-e085-402c-9c10-cb04f925fac7 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: ButtonSphere + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a91a2068-bf54-4a36-98b4-39b06dddcd74 + Components: + - ! 51a496bf-0aa8-417b-8e43-3d07f9bc95b1 + - ! 9cd9e284-e4a4-4ca7-9eba-7e4f19d5d19e + - ! 44a7031b-23de-465d-b59e-ed5e23f8510e + - ! 0f754e80-2d65-425f-916b-e70044d19904 + - ! 705eb273-8438-422e-b3ea-18126f36b3fb + - ! 91acd3c4-bf47-4dc7-8de9-d99cf1c0b052 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9f7bb172-544f-4eac-9bc1-cd471590c2d5 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketScrollViewItem + Enabled: true + ScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + style: ! 6e1842fc-85a8-42b9-bf22-2bae5a3d54c1 + item: ! cfc12ad9-7ee1-4af0-b5ac-9ca9e0875d11 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 3.000000, y: 3.000000, z: 3.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Space Age + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 30.000000, y: 5.000000, z: 1.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 12c97022-2b07-4d5b-b46d-2e0ad10a7a17 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.150000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Item + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 96a7b292-38b7-47d5-b0f3-d2f6aec5cad1 + - ! cfc12ad9-7ee1-4af0-b5ac-9ca9e0875d11 +- ! + PrefabRemaps: + [] + Name: ButtonSphere Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 12c97022-2b07-4d5b-b46d-2e0ad10a7a17 + - ! 5c421214-29bd-4abf-8d2e-e5c1cb6966de +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d1395b54-ec31-4f62-a77b-6fc082c923b7 + - ! 9e0f1f74-15b8-46a8-b650-1a00b0ce393c + - ! fc15efaf-cab1-4077-9e0e-9ce25eccd746 + - ! 1890c1d2-fd57-49e0-9b6e-a8f24a6d3702 + - ! 3eb6f4fb-572c-415a-a671-edf7127b33ce + Components: + - ! f5638e66-0e8d-4b3d-8e0b-09705eff093e + - ! 4dbc75e4-818a-40b0-9bfc-cb535edecd89 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Nose Cone + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Style + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1539de18-ca81-4d6c-be62-f11b60695f8a + - ! 6e1842fc-85a8-42b9-bf22-2bae5a3d54c1 +- ! + SourceRemaps: + - 0b4805ca-d62d-4827-a007-8e843fa6dc8a: 12c97022-2b07-4d5b-b46d-2e0ad10a7a17 + - 0f52906a-b05b-4cd3-a6d5-2fd73fc4ff00: a91a2068-bf54-4a36-98b4-39b06dddcd74 + - 12708647-078a-4a90-89e8-60bbe601703e: 44a7031b-23de-465d-b59e-ed5e23f8510e + - 14b94969-b60e-4c40-ae13-e6f1456b9c26: 51a496bf-0aa8-417b-8e43-3d07f9bc95b1 + - 19b63b05-7f5e-4172-947a-800d073764fa: eaa48624-9ecc-4c57-bb57-a41f0a30ba74 + - 2aa2112d-0e68-4d5c-b5f6-1c42b81d6272: 9cd9e284-e4a4-4ca7-9eba-7e4f19d5d19e + - 4c8869ce-9e53-42a2-b579-120402a8faea: 3eb6f4fb-572c-415a-a671-edf7127b33ce + - 551233a2-bee8-4716-b5f7-b31054de7964: fc15efaf-cab1-4077-9e0e-9ce25eccd746 + - 60054881-a8b4-4e10-beb6-349ec65f01d7: b1e252ca-e085-402c-9c10-cb04f925fac7 + - 7162e67b-0cba-4d63-bdb1-da461439a8ef: 5c421214-29bd-4abf-8d2e-e5c1cb6966de + - 7443b1ae-0675-4ebe-8c75-960b895954d5: 87e135a2-336d-41a9-bae4-c86cc5d2c19f + - 7763dcd2-ce6f-4f92-a285-b99f2d8e4b3f: f5638e66-0e8d-4b3d-8e0b-09705eff093e + - 7d46e715-e40d-49d6-9a2b-6d94612de00e: af0cbbab-6dc1-41a5-a50b-7694b79e0203 + - 9364e498-5ccc-4774-80c9-ddec2898c64d: 1b808e6c-93ea-47cb-a944-bbc7aa5cebf1 + - 9dcf7003-2543-4a01-963e-2a7b953d1552: 9e0f1f74-15b8-46a8-b650-1a00b0ce393c + - b0a49a76-0593-4a5a-8365-72277252b6c5: 1539de18-ca81-4d6c-be62-f11b60695f8a + - b1d2a1ce-6a4b-4af4-aacc-92dc52332333: 96a7b292-38b7-47d5-b0f3-d2f6aec5cad1 + - b276a23f-2e6f-44a9-999b-1e6c7d2be98b: d1395b54-ec31-4f62-a77b-6fc082c923b7 + - b4f3e188-3f1c-46c5-b12c-455564156d64: b9999559-b8a9-4d0a-9f1b-2251f98d77d7 + - b72b1e75-2f31-475b-88d0-29d021a594be: 0f754e80-2d65-425f-916b-e70044d19904 + - b8e4112f-4dec-4d7f-93f2-a0e00a1150ba: 6e1842fc-85a8-42b9-bf22-2bae5a3d54c1 + - b95bb3dd-cea5-48a7-b56a-cad2331956e1: 3fdfcbbf-be11-4497-83b0-31193acb55c0 + - ba1eb7a5-d971-4c4d-911f-160f2fe2c5e6: 4dbc75e4-818a-40b0-9bfc-cb535edecd89 + - c09c9199-e181-4b24-b489-6e2dd11c2add: cfc12ad9-7ee1-4af0-b5ac-9ca9e0875d11 + - c2f380b6-a45c-4da0-92fa-79afe684e758: bea0687c-c81e-4c5c-a2e4-b142097182a9 + - d891b297-70e7-47e3-b38f-67ae2a3c6574: 705eb273-8438-422e-b3ea-18126f36b3fb + - f4f5e768-e9ef-44b9-9b4a-ad89499b475e: 91acd3c4-bf47-4dc7-8de9-d99cf1c0b052 + - fc66bf23-584c-4e1d-a49f-6d4eb9e2c8d5: 1890c1d2-fd57-49e0-9b6e-a8f24a6d3702 + SourceState: ! 013f1cdc-62c6-4ef6-addc-080a36b920f4 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1b808e6c-93ea-47cb-a944-bbc7aa5cebf1 + - ! eaa48624-9ecc-4c57-bb57-a41f0a30ba74 + - ! 87e135a2-336d-41a9-bae4-c86cc5d2c19f + - ! af0cbbab-6dc1-41a5-a50b-7694b79e0203 + - ! bea0687c-c81e-4c5c-a2e4-b142097182a9 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/ExhaustControls.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/ExhaustControls.ts new file mode 100644 index 00000000..a1e3084a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/ExhaustControls.ts @@ -0,0 +1,88 @@ +/** + * This class manages the exhaust and smoke effects for a scene. It initializes the materials and VFX components for the exhausts and smokes, and provides methods to control their states. + * + */ +@component +export class ExhaustControls extends BaseScriptComponent { + @input + exhausts: SceneObject[] = [] + + @input + smokes: SceneObject[] = [] + + private exhaustFireMaterials: Material[] = [] + private exhaustGlowMaterials: Material[] = [] + private smokeVFXs: VFXComponent[] = [] + + onAwake(): void { + this.initExhaustMaterials() + this.initSmokeVFXs() + this.turnOffExhausts() + this.turnOffSmokes() + } + + initExhaustMaterials = (): void => { + for (let i = 0; i < this.exhausts.length; i++) { + this.exhaustFireMaterials.push( + this.exhausts[i].getChild(0).getComponent("RenderMeshVisual") + .mainMaterial, + ) + + this.exhaustGlowMaterials.push( + this.exhausts[i] + .getChild(0) + .getChild(0) + .getComponent("RenderMeshVisual").mainMaterial, + ) + } + } + + initSmokeVFXs = (): void => { + for (let i = 0; i < this.smokes.length; i++) { + this.smokeVFXs.push(this.smokes[i].getComponent("Component.VFXComponent")) + } + } + + engineReady = (): void => { + for (let i = 0; i < this.exhausts.length; i++) { + this.exhausts[i].enabled = true + this.exhaustFireMaterials[i].mainPass.fire_scale = 1.0 + this.exhaustGlowMaterials[i].mainPass.glow_scale = 1.0 + } + } + + turnOnExhausts = (): void => { + for (let i = 0; i < this.exhausts.length; i++) { + this.exhausts[i].enabled = true + this.exhaustFireMaterials[i].mainPass.fire_scale = 0.15 + this.exhaustGlowMaterials[i].mainPass.glow_scale = 0.15 + } + } + + turnOffExhausts = (): void => { + for (let i = 0; i < this.exhausts.length; i++) { + this.exhausts[i].enabled = false + this.exhaustFireMaterials[i].mainPass.fire_scale = 0.0 + this.exhaustGlowMaterials[i].mainPass.glow_scale = 0.0 + } + } + + turnOnSmokes = (): void => { + for (let i = 0; i < this.smokes.length; i++) { + this.smokes[i].enabled = true + } + } + + turnOffSmokes = (): void => { + for (let i = 0; i < this.smokes.length; i++) { + this.smokes[i].enabled = false + } + } + + setEngineSmokesValue = (value: any): void => { + for (let i = 0; i < this.smokes.length; i++) { + const particles: any = this.smokeVFXs[i].asset.properties + particles["particlesReduce"] = value + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/ExhaustControls.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/ExhaustControls.ts.meta new file mode 100644 index 00000000..e2f7d3a4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/ExhaustControls.ts.meta @@ -0,0 +1,43 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 8a960278-52eb-4a46-ab2a-38be6fcadb24 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 8a960278-52eb-4a46-ab2a-38be6fcadb24 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! e793fd47-3848-4621-aa8a-ecc13f95330e + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + exhausts: false + smokes: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - exhausts: ! + [] + smokes: ! + [] + ScriptTypes: + - + {} + InputLines: + - "// @input SceneObject[] exhausts" + - "// @input SceneObject[] smokes" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketConfigurator.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketConfigurator.ts new file mode 100644 index 00000000..f649a97c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketConfigurator.ts @@ -0,0 +1,146 @@ +import {ExhaustControls} from "./ExhaustControls" +import {validate} from "../../../Utils/validate" + +/** + * This class is responsible for configuring the rocket by setting up its parts and managing the exhaust controls. It initializes the rocket sections and provides methods to set rocket part sections. + * + */ +@component +export class RocketConfigurator extends BaseScriptComponent { + @input + rocket!: SceneObject + + @input + allRocketParts: ObjectPrefab[] = [] + + private topSection: SceneObject | null = null + private middleSection: SceneObject | null = null + private bottomSection: SceneObject | null = null + + exhaustControl: ExhaustControls | null = null + + private noseConeBackingImages: Map = new Map() + private bodyTubeBackingImages: Map = new Map() + private finsBackingImages: Map = new Map() + + private activeBackingTexture: Texture = requireAsset( + "../../../Assets/Textures/Rectangle-Active.png" + ) as Texture + private inactiveBackingTexture: Texture = requireAsset( + "../../../Assets/Textures/Rectangle-Inactive.png" + ) as Texture + + onAwake(): void { + this.setUpRocket() + } + + private setUpRocket = (): void => { + for (let i = 0; i < this.allRocketParts.length; i++) { + if (this.allRocketParts[i].name === "Space Age Nose Cone") { + this.topSection = this.allRocketParts[i].instantiate(this.rocket) + } + if (this.allRocketParts[i].name === "Space Age Body Tube") { + this.middleSection = this.allRocketParts[i].instantiate(this.rocket) + } + if (this.allRocketParts[i].name === "Space Age Fins") { + this.bottomSection = this.allRocketParts[i].instantiate(this.rocket) + } + } + } + + setRocketPartSection = (style: string, item: string): void => { + if (isNull(this.topSection)) throw new Error("Top section is null!") + if (isNull(this.middleSection)) throw new Error("Middle section is null!") + if (isNull(this.bottomSection)) throw new Error("Bottom section is null!") + + const combinedName = style + " " + item + let rocketPart + + if (item === "Nose Cone") { + if (this.topSection !== null) this.topSection.destroy() + for (let i = 0; i < this.allRocketParts.length; i++) { + if (combinedName === this.allRocketParts[i].name) { + rocketPart = this.allRocketParts[i].instantiate(this.rocket) + } + } + if (rocketPart !== undefined) { + this.topSection = rocketPart + } else { + throw new Error("Rocket part is undefined!") + } + } else if (item === "Body Tube") { + if (this.middleSection !== null) this.middleSection.destroy() + for (let i = 0; i < this.allRocketParts.length; i++) { + if (combinedName === this.allRocketParts[i].name) { + rocketPart = this.allRocketParts[i].instantiate(this.rocket) + } + } + if (rocketPart !== undefined) { + this.middleSection = rocketPart + } else { + throw new Error("Rocket part is undefined!") + } + } else if (item === "Fins") { + if (this.bottomSection !== null) this.bottomSection.destroy() + for (let i = 0; i < this.allRocketParts.length; i++) { + if (combinedName === this.allRocketParts[i].name) { + rocketPart = this.allRocketParts[i].instantiate(this.rocket) + } + } + if (rocketPart !== undefined) { + this.bottomSection = rocketPart + } else { + throw new Error("Rocket part is undefined!") + } + } + + this.setBackingColorsByPartType(style, item) + } + + registerRocketListItemBacking = ( + style: string, + item: string, + backing: Image, + ): void => { + if (item === "Nose Cone") { + this.noseConeBackingImages.set(style, backing) + } else if (item === "Body Tube") { + this.bodyTubeBackingImages.set(style, backing) + } else if (item === "Fins") { + this.finsBackingImages.set(style, backing) + } + + if (style === "Space Age") { + backing.mainMaterial.mainPass.baseTex = this.activeBackingTexture + } + } + + private setBackingColorsByPartType = (style: string, item: string): void => { + if (item === "Nose Cone") { + this.setBackingColors(this.noseConeBackingImages, style) + } else if (item === "Body Tube") { + this.setBackingColors(this.bodyTubeBackingImages, style) + } else if (item === "Fins") { + this.setBackingColors(this.finsBackingImages, style) + } + } + + private setBackingColors(map: Map, style: string): void { + map.forEach((image, key) => { + if (key === style) { + // active + image.mainMaterial.mainPass.baseTex = this.activeBackingTexture + } else { + // inactive + image.mainMaterial.mainPass.baseTex = this.inactiveBackingTexture + } + }) + } + + getExhaustControl = (): void => { + validate(this.bottomSection) + this.exhaustControl = this.bottomSection.getComponent( + ExhaustControls.getTypeName(), + ) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketConfigurator.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketConfigurator.ts.meta new file mode 100644 index 00000000..f50aa363 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketConfigurator.ts.meta @@ -0,0 +1,42 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 85cb5de9-5fbb-4fbd-9775-2ac32bd619fe + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 85cb5de9-5fbb-4fbd-9775-2ac32bd619fe + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 300bdcd1-a24e-4e57-81bb-677b55ce8ccb + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + allRocketParts: false + rocket: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - allRocketParts: ! + [] + rocket: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - // @input SceneObject rocket + - "// @input Asset.ObjectPrefab[] allRocketParts" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketGridContentCreator.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketGridContentCreator.ts new file mode 100644 index 00000000..a8a0d44b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketGridContentCreator.ts @@ -0,0 +1,44 @@ +import {RocketConfigurator} from "./RocketConfigurator" +import {RocketScrollViewItem} from "./RocketScrollViewItem" + +const Y_START: number = 0 +const Y_OFFSET: number = -5.4 + +/** + * This class is responsible for creating and initializing the content of a rocket grid. It uses object prefabs to instantiate items and configure their positions and properties. + * + */ +@component +export class RocketGridContentCreator extends BaseScriptComponent { + @input + rocketConfigurator!: RocketConfigurator + + @input + objectPrefabs: ObjectPrefab[] = [] + + onAwake(): void { + if (isNull(this.rocketConfigurator)) { + throw new Error("RocketGridContentCreator: rocketConfigurator is null!") + } + if (this.objectPrefabs.length === 0) { + throw new Error("RocketGridContentCreator: objectPrefabs array is empty!") + } + + const sceneObj = this.getSceneObject() + const rocketScrollViewItemTypeName = RocketScrollViewItem.getTypeName() + + for (let i = 0; i < this.objectPrefabs.length; i++) { + const prefabIndex = i % this.objectPrefabs.length + const prefab = this.objectPrefabs[prefabIndex] + const item = prefab.instantiate(sceneObj) + const screenTransform = item.getComponent("Component.ScreenTransform") + screenTransform.offsets.setCenter(new vec2(0, Y_START + Y_OFFSET * i)) + item.enabled = true + let rocketScrollViewItem: RocketScrollViewItem | null = item.getComponent( + rocketScrollViewItemTypeName, + ) + if (rocketScrollViewItem !== null) + rocketScrollViewItem.init(this.rocketConfigurator) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketGridContentCreator.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketGridContentCreator.ts.meta new file mode 100644 index 00000000..4cc58ddc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketGridContentCreator.ts.meta @@ -0,0 +1,42 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 01cb4976-7110-49ff-ae27-dbb77153e547 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 01cb4976-7110-49ff-ae27-dbb77153e547 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! bab377e8-f1c4-49b7-85eb-435aae2220ff + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + objectPrefabs: false + rocketConfigurator: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - objectPrefabs: ! + [] + rocketConfigurator: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - // @input RocketConfigurator rocketConfigurator + - "// @input Asset.ObjectPrefab[] objectPrefabs" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketLaunchControl.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketLaunchControl.ts new file mode 100644 index 00000000..5b15663c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketLaunchControl.ts @@ -0,0 +1,288 @@ +import {Interactable} from "../../../Components/Interaction/Interactable/Interactable" +import {RocketConfigurator} from "./RocketConfigurator" +import {Slider} from "../../../Components/UI/Slider/Slider" +import {ToggleButton} from "../../../Components/UI/ToggleButton/ToggleButton" +import {validate} from "../../../Utils/validate" + +const FLIGHT_END_EVENT_NAME = "flightEnded" + +/** + * This class manages the rocket launch control interface, including the launch button, animation buttons, and slider. It interacts with the RocketConfigurator to configure and launch the rocket. + * + */ +@component +export class RocketLaunchControl extends BaseScriptComponent { + @input + slider!: Slider + + @input + animationAButton!: SceneObject + @input + animationBButton!: SceneObject + @input + animationCButton!: SceneObject + + @input + launchButton!: SceneObject + + @input + rocketConf!: RocketConfigurator + + @input + launchSparks!: SceneObject + + @input + rocketAnimationPlayer!: AnimationPlayer + + @input + flightPathText!: Text + + @input + launchPlatformToggleButton!: ToggleButton + + @input + launchPlatform!: SceneObject + + private launchButton_interactable: Interactable | null = null + private animationAButton_interactable: Interactable | null = null + private animationBButton_interactable: Interactable | null = null + private animationCButton_interactable: Interactable | null = null + private currentLaunchAnimationName: string = "Base Layer Rocket 1" + private flightEndEventRegistration: EventRegistration | null = null + private launchButtonText: Text | undefined + + private currentClip: AnimationClip | undefined + + private engineStartedEvent: DelayedCallbackEvent | null = null + private engineReadyEvent: DelayedCallbackEvent | null = null + private rocketTakeOffEvent: DelayedCallbackEvent | null = null + private takeOffCompleteEvent: DelayedCallbackEvent | null = null + private landingStartedEvent: DelayedCallbackEvent | null = null + private launchSparksDisableEvent: DelayedCallbackEvent | null = null + + onAwake(): void { + this.createEvent("OnStartEvent").bind(() => { + this.onStart() + }) + + this.launchSparksDisableEvent = this.createEvent("DelayedCallbackEvent") + this.launchSparksDisableEvent.bind(() => { + this.launchSparks.enabled = false + }) + + const interactableTypeName = Interactable.getTypeName() + + this.launchButton_interactable = + this.launchButton.getComponent(interactableTypeName) + if (isNull(this.launchButton_interactable)) { + throw new Error("Interactable component not found.") + } + this.animationAButton_interactable = + this.animationAButton.getComponent(interactableTypeName) + if (isNull(this.animationAButton_interactable)) { + throw new Error("Interactable component not found.") + } + this.animationBButton_interactable = + this.animationBButton.getComponent(interactableTypeName) + if (isNull(this.animationBButton_interactable)) { + throw new Error("Interactable component not found.") + } + this.animationCButton_interactable = + this.animationCButton.getComponent(interactableTypeName) + if (isNull(this.animationCButton_interactable)) { + throw new Error("Interactable component not found.") + } + + this.launchButtonText = this.launchButton.getChild(0).getComponent("Text") + + this.launchSparks.enabled = false + + this.engineStartedEvent = this.createEvent("DelayedCallbackEvent") + this.engineStartedEvent.bind(() => { + this.engineStarted() + }) + this.engineReadyEvent = this.createEvent("DelayedCallbackEvent") + this.engineReadyEvent.bind(() => { + this.engineReady() + }) + this.rocketTakeOffEvent = this.createEvent("DelayedCallbackEvent") + this.rocketTakeOffEvent.bind(() => { + this.rocketTakeOff() + }) + this.takeOffCompleteEvent = this.createEvent("DelayedCallbackEvent") + this.takeOffCompleteEvent.bind(() => { + this.takeOffCompleted() + }) + this.landingStartedEvent = this.createEvent("DelayedCallbackEvent") + this.landingStartedEvent.bind(() => { + this.landingStarted() + }) + + this.subscribeToCurrentLaunchAnimationEndEvent() + } + + onStart() { + this.setupLaunchButtonCallbacks() + this.setupAnimationAButtonCallbacks() + this.setupAnimationBButtonCallbacks() + this.setupAnimationCButtonCallbacks() + + this.launchPlatformToggleButton.onStateChanged.add( + (isToggledOn: boolean) => { + if (isToggledOn) { + this.launchPlatform.enabled = true + } else { + this.launchPlatform.enabled = false + } + }, + ) + } + + private setupLaunchButtonCallbacks = (): void => { + validate(this.launchButton_interactable) + this.launchButton_interactable.onTriggerEnd.add(this.onLaunchButton) + } + + private onLaunchButton = (): void => { + validate(this.engineStartedEvent) + validate(this.launchButton_interactable) + validate(this.launchButtonText) + + this.engineStartedEvent.reset(0) + this.launchButton_interactable.enabled = false + this.launchButtonText.text = "Flight in Progress" + this.launchButtonText.size = 40 + } + + private engineStarted(): void { + this.rocketConf.getExhaustControl() + validate(this.rocketConf.exhaustControl) + validate(this.engineReadyEvent) + + this.rocketConf.exhaustControl.setEngineSmokesValue(1.1) + this.rocketConf.exhaustControl.turnOnExhausts() + this.rocketConf.exhaustControl.turnOnSmokes() + + this.engineReadyEvent.reset(0.5) + } + + private engineReady(): void { + validate(this.rocketConf.exhaustControl) + validate(this.rocketTakeOffEvent) + + this.rocketConf.exhaustControl.engineReady() + this.rocketConf.exhaustControl.setEngineSmokesValue(0.8) + + this.rocketTakeOffEvent.reset(0.5) + } + + private rocketTakeOff(): void { + validate(this.rocketConf.exhaustControl) + this.rocketConf.exhaustControl.setEngineSmokesValue(0.0) + + this.rocketAnimationPlayer.playClipAt(this.currentLaunchAnimationName, 0.0) + + validate(this.slider) + + this.rocketAnimationPlayer.getClip( + this.currentLaunchAnimationName, + ).playbackSpeed = MathUtils.remap( + this.slider.currentValue ?? 0, + 0.0, + 1.0, + 1.0, + 5.0, + ) + this.launchSparks.enabled = true + + validate(this.launchSparksDisableEvent) + + this.launchSparksDisableEvent.reset(0.5) + + this.currentClip = this.rocketAnimationPlayer.getClip( + this.currentLaunchAnimationName, + ) + + validate(this.currentClip) + validate(this.landingStartedEvent) + validate(this.takeOffCompleteEvent) + + this.landingStartedEvent.reset( + (this.currentClip.duration / this.currentClip.playbackSpeed) * 0.9, + ) + + this.takeOffCompleteEvent.reset( + (this.currentClip.duration / this.currentClip.playbackSpeed) * 0.2, + ) + } + + private takeOffCompleted(): void { + print("Take Off Completed!") + } + + private landingStarted(): void { + print("Landing Started!") + validate(this.rocketConf.exhaustControl) + this.rocketConf.exhaustControl.turnOffExhausts() + } + + private setupAnimationAButtonCallbacks = (): void => { + validate(this.animationAButton_interactable) + this.animationAButton_interactable.onTriggerEnd.add(this.onAnimationAButton) + } + + private onAnimationAButton = (): void => { + this.currentLaunchAnimationName = "Base Layer Rocket 1" + this.subscribeToCurrentLaunchAnimationEndEvent() + this.flightPathText.text = "Flight Path : A" + } + + private setupAnimationBButtonCallbacks = (): void => { + validate(this.animationBButton_interactable) + this.animationBButton_interactable.onTriggerEnd.add(this.onAnimationBButton) + } + + private onAnimationBButton = (): void => { + this.currentLaunchAnimationName = "Base Layer Rocket 2" + this.subscribeToCurrentLaunchAnimationEndEvent() + this.flightPathText.text = "Flight Path : B" + } + + private setupAnimationCButtonCallbacks = (): void => { + validate(this.animationCButton_interactable) + this.animationCButton_interactable.onTriggerEnd.add(this.onAnimationCButton) + } + + private onAnimationCButton = (): void => { + this.currentLaunchAnimationName = "Base Layer Rocket 3" + this.subscribeToCurrentLaunchAnimationEndEvent() + this.flightPathText.text = "Flight Path : C" + } + + private subscribeToCurrentLaunchAnimationEndEvent = (): void => { + let currentAnimationClip = this.rocketAnimationPlayer.getClip( + this.currentLaunchAnimationName, + ) + let flightEndTimestamp = currentAnimationClip.duration + currentAnimationClip.animation.createEvent( + FLIGHT_END_EVENT_NAME, + flightEndTimestamp, + ) + + this.flightEndEventRegistration = this.rocketAnimationPlayer.onEvent.add( + this.onAnimationEnd.bind(this), + ) + } + + private onAnimationEnd = (eventData: AnimationPlayerOnEventArgs): void => { + if (eventData.eventName === FLIGHT_END_EVENT_NAME) { + validate(this.rocketConf.exhaustControl) + validate(this.launchButton_interactable) + validate(this.launchButtonText) + this.rocketConf.exhaustControl.turnOffSmokes() + this.launchButton_interactable.enabled = true + this.launchButtonText.text = "Launch!" + this.launchButtonText.size = 48 + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketLaunchControl.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketLaunchControl.ts.meta new file mode 100644 index 00000000..9a33bf0e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketLaunchControl.ts.meta @@ -0,0 +1,68 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! c0c12ffb-ecd8-43f8-8d68-f490810b1be0 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! c0c12ffb-ecd8-43f8-8d68-f490810b1be0 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! a932dc64-4f94-4c1c-8bf5-9d90428212dd + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + animationAButton: false + animationBButton: false + animationCButton: false + flightPathText: false + launchButton: false + launchPlatform: false + launchPlatformToggleButton: false + launchSparks: false + rocketAnimationPlayer: false + rocketConf: false + slider: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - slider: ! 00000000-0000-0000-0000-000000000000 + animationAButton: ! 00000000-0000-0000-0000-000000000000 + animationBButton: ! 00000000-0000-0000-0000-000000000000 + animationCButton: ! 00000000-0000-0000-0000-000000000000 + launchButton: ! 00000000-0000-0000-0000-000000000000 + rocketAnimationPlayer: ! 00000000-0000-0000-0000-000000000000 + launchSparks: ! 00000000-0000-0000-0000-000000000000 + rocketConf: ! 00000000-0000-0000-0000-000000000000 + flightPathText: ! 00000000-0000-0000-0000-000000000000 + launchPlatformToggleButton: ! 00000000-0000-0000-0000-000000000000 + launchPlatform: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - // @input Slider slider + - // @input SceneObject animationAButton + - // @input SceneObject animationBButton + - // @input SceneObject animationCButton + - // @input SceneObject launchButton + - // @input RocketConfigurator rocketConf + - // @input SceneObject launchSparks + - // @input Component.AnimationPlayer rocketAnimationPlayer + - // @input Component.Text flightPathText + - // @input ToggleButton launchPlatformToggleButton + - // @input SceneObject launchPlatform diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketScrollViewItem.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketScrollViewItem.ts new file mode 100644 index 00000000..3dde4704 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketScrollViewItem.ts @@ -0,0 +1,67 @@ +import {Interactable} from "../../../Components/Interaction/Interactable/Interactable" +import {findSceneObjectByName} from "../../../Utils/SceneObjectUtils" +import {validate} from "../../../Utils/validate" +import {RocketConfigurator} from "./RocketConfigurator" + +/** + * This class represents an item in the rocket scroll view. It handles interactions and communicates with the RocketConfigurator to update the rocket configuration. + * + */ +@component +export class RocketScrollViewItem extends BaseScriptComponent { + @input + style!: Text + + @input + item!: Text + + private interactable: Interactable | null = null + private backingImage: Image | undefined + private rocketConfigurator: RocketConfigurator | null = null + + onAwake(): void {} + + init(rocketConfigurator: RocketConfigurator): void { + this.rocketConfigurator = rocketConfigurator + this.registerRocketListItemBacking() + if (isNull(this.rocketConfigurator)) + throw new Error("RocketConfigurator is null!") + validate(this.backingImage) + this.interactable = this.backingImage.sceneObject.getComponent( + Interactable.getTypeName() + ) + if (isNull(this.interactable)) + throw new Error("Interactable component not found!") + this.setupCallbacks() + } + + private setupCallbacks = (): void => { + validate(this.interactable) + this.interactable.onTriggerEnd.add(this.onTriggerEndEvent) + } + + private onTriggerEndEvent = (): void => { + validate(this.rocketConfigurator) + this.rocketConfigurator.setRocketPartSection( + this.style.text, + this.item.text + ) + } + + private registerRocketListItemBacking = (): void => { + let backingObject: SceneObject | null = findSceneObjectByName( + this.sceneObject, + "Background" + ) + validate(backingObject) + this.backingImage = backingObject.getComponent("Image") + validate(this.backingImage, "Backing image is undefined!") + this.backingImage.mainMaterial = this.backingImage.mainMaterial.clone() + validate(this.rocketConfigurator) + this.rocketConfigurator.registerRocketListItemBacking( + this.style.text, + this.item.text, + this.backingImage + ) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketScrollViewItem.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketScrollViewItem.ts.meta new file mode 100644 index 00000000..f500f787 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Scripts/RocketScrollViewItem.ts.meta @@ -0,0 +1,41 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 23001127-75f4-4bf5-84aa-6972bf87d754 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 2072be5a-f51b-4a94-9fc1-26880d8d5d54 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + item: false + style: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - style: ! 00000000-0000-0000-0000-000000000000 + item: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - // @input Component.Text style + - // @input Component.Text item diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Glass.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Glass.ss_graph new file mode 100644 index 00000000..c74e950a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Glass.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d61af7299bac855c8414c74571ab0678a239f64b1bf6e73da9346131453ae8cc +size 318619 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Glass.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Glass.ss_graph.meta new file mode 100644 index 00000000..1a007bff --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Glass.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! f092ba3c-de20-41ce-90c7-0bda1f84a95e + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! f092ba3c-de20-41ce-90c7-0bda1f84a95e + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Meteor.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Meteor.ss_graph new file mode 100644 index 00000000..ed3901e6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Meteor.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52c3076960ca17b6a7d3b6bf56aa0a42f5c1dc6ce16429c569a7ff342c2310fd +size 28506 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Meteor.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Meteor.ss_graph.meta new file mode 100644 index 00000000..ed47768f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Meteor.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 3a248df4-730c-4a39-b4bd-b285a57eda14 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 3a248df4-730c-4a39-b4bd-b285a57eda14 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet.ss_graph new file mode 100644 index 00000000..43e9ff2f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:304a61c2bf3df4301ff470ec9a151744eead39b3068a4031cfe2209f9cd93b63 +size 112636 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet.ss_graph.meta new file mode 100644 index 00000000..99181819 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! c77ab7db-4342-48e5-aa2f-62bb7705b911 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! c77ab7db-4342-48e5-aa2f-62bb7705b911 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet_rings.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet_rings.ss_graph new file mode 100644 index 00000000..c575f13b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet_rings.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1b0a16f07711f9eeac2234688d02221e636746a1a4f550ffc5d20c81809a9b2 +size 71727 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet_rings.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet_rings.ss_graph.meta new file mode 100644 index 00000000..5b145ee2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Planet_rings.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 53b176a1-1797-414e-a644-318f89b62222 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 53b176a1-1797-414e-a644-318f89b62222 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Platform.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Platform.ss_graph new file mode 100644 index 00000000..942fb3a7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Platform.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6749f62a20365583641ca84c8c746ea3d4a5eb9e24dfee6b3023676e6384bd8 +size 163426 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Platform.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Platform.ss_graph.meta new file mode 100644 index 00000000..4611ad1c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Platform.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 3eba1ac9-5348-410d-8dfd-89f67dfd02d6 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 3eba1ac9-5348-410d-8dfd-89f67dfd02d6 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Rocket.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Rocket.ss_graph new file mode 100644 index 00000000..f36b09cf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Rocket.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abee57ec908c66aade274dc0e6be0cf47adfbaa3754453e8ea7ac69f5bfaca61 +size 503890 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Rocket.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Rocket.ss_graph.meta new file mode 100644 index 00000000..babf0072 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Shaders/Rocket.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! d60c4cee-2ba9-4b49-8ecb-be1d5277df11 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/A-icon.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/A-icon.png new file mode 100644 index 00000000..a0ef7481 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/A-icon.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93f8c081f1bd87ee10beef34b220bd87c44f7e66f5d09415de4f0aed2bb6b4db +size 936 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/A-icon.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/A-icon.png.meta new file mode 100644 index 00000000..f67cc7ec --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/A-icon.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 962fe96e-aa8d-4ea3-8a35-09c60ce3f4dc + ImporterName: FileTextureImporter + PrimaryAsset: ! 962fe96e-aa8d-4ea3-8a35-09c60ce3f4dc + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/B-icon.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/B-icon.png new file mode 100644 index 00000000..f8fe457f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/B-icon.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c343d7a706e0e3bd267e4375ef758990c8dae515ee4b445b3637364abaf24a51 +size 848 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/B-icon.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/B-icon.png.meta new file mode 100644 index 00000000..45441a29 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/B-icon.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 16323e0b-43a3-431f-b1f0-60029ae56ca5 + ImporterName: FileTextureImporter + PrimaryAsset: ! 16323e0b-43a3-431f-b1f0-60029ae56ca5 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/C-icon.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/C-icon.png new file mode 100644 index 00000000..bd05f9a8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/C-icon.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0666fd08d3ee92bf48035460d3c91e242b5cf0d15067ae831e518b8ec46510b +size 982 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/C-icon.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/C-icon.png.meta new file mode 100644 index 00000000..9d472e2c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/C-icon.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 8d858ff6-aa23-4863-b2df-a5af56b736da + ImporterName: FileTextureImporter + PrimaryAsset: ! 8d858ff6-aa23-4863-b2df-a5af56b736da + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Meteor_bc.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Meteor_bc.png new file mode 100644 index 00000000..9cab48a4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Meteor_bc.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a167f16891f1ab85af930d2700c775d33483a255d9cbba21a3241879da13a56a +size 923259 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Meteor_bc.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Meteor_bc.png.meta new file mode 100644 index 00000000..b2515baa --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Meteor_bc.png.meta @@ -0,0 +1,18 @@ +- ! + ImportedAssetIds: + Texture: ! 60085123-337c-4c07-a3bf-740172bd8632 + ImporterName: FileTextureImporter + PrimaryAsset: ! 60085123-337c-4c07-a3bf-740172bd8632 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Platforms_AO.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Platforms_AO.jpg new file mode 100644 index 00000000..8d99a051 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Platforms_AO.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5157f658fee5137881e12b708378ece6266f419e918f778b5d280c82a563479 +size 16711 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Platforms_AO.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Platforms_AO.jpg.meta new file mode 100644 index 00000000..90eea8c1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Platforms_AO.jpg.meta @@ -0,0 +1,18 @@ +- ! + ImportedAssetIds: + Texture: ! fd087204-9411-4134-a7ae-fc7d4cb32a14 + ImporterName: FileTextureImporter + PrimaryAsset: ! fd087204-9411-4134-a7ae-fc7d4cb32a14 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Rockets_AO.jpg b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Rockets_AO.jpg new file mode 100644 index 00000000..cfbb9689 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Rockets_AO.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9f072fa8ee347f8e3ca903087d7e8598317a844d25fe7934e3a5015a74ac2da +size 186690 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Rockets_AO.jpg.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Rockets_AO.jpg.meta new file mode 100644 index 00000000..353da9b0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Rockets_AO.jpg.meta @@ -0,0 +1,18 @@ +- ! + ImportedAssetIds: + Texture: ! 09760f3a-f73e-482b-a710-aeee74246f02 + ImporterName: FileTextureImporter + PrimaryAsset: ! 09760f3a-f73e-482b-a710-aeee74246f02 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Snap_logo.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Snap_logo.png new file mode 100644 index 00000000..d82b067f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Snap_logo.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cfc56b9e3ab59fdd0c8d98042c7663fdc2786cc2b52e94a724e699d5dfb9410 +size 102167 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Snap_logo.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Snap_logo.png.meta new file mode 100644 index 00000000..dd6d41b3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Snap_logo.png.meta @@ -0,0 +1,18 @@ +- ! + ImportedAssetIds: + Texture: ! f9cdd2df-a667-4be8-a3ca-a5b07c103b0e + ImporterName: FileTextureImporter + PrimaryAsset: ! f9cdd2df-a667-4be8-a3ca-a5b07c103b0e + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Space_logo_TEMP.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Space_logo_TEMP.png new file mode 100644 index 00000000..b06fb705 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Space_logo_TEMP.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95c3abe8b248d1f9703a49bd285ecfb9ca90f3093b6df5d9a58a49131c1b4dbf +size 46441 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Space_logo_TEMP.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Space_logo_TEMP.png.meta new file mode 100644 index 00000000..845f52c2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/SIK_Space_logo_TEMP.png.meta @@ -0,0 +1,18 @@ +- ! + ImportedAssetIds: + Texture: ! 4ce82aa3-8e78-4e2c-b693-4224248bba87 + ImporterName: FileTextureImporter + PrimaryAsset: ! 4ce82aa3-8e78-4e2c-b693-4224248bba87 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-A.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-A.png new file mode 100644 index 00000000..c7a85f12 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-A.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:852203e2d09839a9095a00d983654a5462f2c8d0544b094e370b5b8581a34536 +size 99084 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-A.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-A.png.meta new file mode 100644 index 00000000..2e6bf9ca --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-A.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! a177cbf2-7a2b-4bff-b9c9-8acc82442799 + ImporterName: FileTextureImporter + PrimaryAsset: ! a177cbf2-7a2b-4bff-b9c9-8acc82442799 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-B.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-B.png new file mode 100644 index 00000000..0d9839ae --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-B.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2c7e88d79d5b886b393435b31305b44fedc5b38e89fbfc812ab69673a372269 +size 53857 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-B.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-B.png.meta new file mode 100644 index 00000000..8b27f757 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-B.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! cc6a2658-c9c4-4200-955e-ea150374967c + ImporterName: FileTextureImporter + PrimaryAsset: ! cc6a2658-c9c4-4200-955e-ea150374967c + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-C.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-C.png new file mode 100644 index 00000000..cfb3fdd1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-C.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3023b35aeaf0b3ea65f5d594d69f7f7cf6e3fb19047b41771490e250d5cf00c4 +size 47375 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-C.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-C.png.meta new file mode 100644 index 00000000..86f6b496 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/body-tube_rocket-C.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! df3b9a95-4d7e-47b1-855a-3d47e21e26bc + ImporterName: FileTextureImporter + PrimaryAsset: ! df3b9a95-4d7e-47b1-855a-3d47e21e26bc + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-A.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-A.png new file mode 100644 index 00000000..c15d0924 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-A.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6689f4ced74de125939ac4e566355e0430dbb30aac2208c5f3521f0e050bdd04 +size 106941 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-A.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-A.png.meta new file mode 100644 index 00000000..4d5b550b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-A.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 30a613c8-8cfb-4744-8335-7059c3835e14 + ImporterName: FileTextureImporter + PrimaryAsset: ! 30a613c8-8cfb-4744-8335-7059c3835e14 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-B.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-B.png new file mode 100644 index 00000000..c91c9171 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-B.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6251657d63cb586d3d73cd0959295d3ea7ab1000c6f60cb8d55c48d66442d649 +size 117056 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-B.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-B.png.meta new file mode 100644 index 00000000..2fea99c7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-B.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! e5a16836-90b9-4686-894b-671a6e6c915e + ImporterName: FileTextureImporter + PrimaryAsset: ! e5a16836-90b9-4686-894b-671a6e6c915e + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-C.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-C.png new file mode 100644 index 00000000..341729f8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-C.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f984b2ff33df28f01e57e4c273fa648c03d954d5e3b1c89f13f7e2f7b57e0f64 +size 79401 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-C.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-C.png.meta new file mode 100644 index 00000000..99a4a5cd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/fins_rocket-C.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 2f896f95-a856-47d7-b5a0-5bd4e75787a6 + ImporterName: FileTextureImporter + PrimaryAsset: ! 2f896f95-a856-47d7-b5a0-5bd4e75787a6 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-A.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-A.png new file mode 100644 index 00000000..bb472166 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-A.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee7cb9eb86b3ba53218d7a397eabb8c8c33e8cdda3cc5ccef120858ffe8c67f1 +size 62513 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-A.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-A.png.meta new file mode 100644 index 00000000..66d62c1e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-A.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! a6dc5752-3f7b-4566-b621-26facc3ef93e + ImporterName: FileTextureImporter + PrimaryAsset: ! a6dc5752-3f7b-4566-b621-26facc3ef93e + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-B.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-B.png new file mode 100644 index 00000000..21042630 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-B.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0180ebd7507dabe26c3642218ea3131e201173c2f9cefb2f319a324517d6f478 +size 56147 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-B.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-B.png.meta new file mode 100644 index 00000000..441f7655 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-B.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 95f5ad88-bc78-42bc-8f9d-4772aa6fdaa0 + ImporterName: FileTextureImporter + PrimaryAsset: ! 95f5ad88-bc78-42bc-8f9d-4772aa6fdaa0 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-C.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-C.png new file mode 100644 index 00000000..89a4fd79 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-C.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:825479da37507eb733d50017da5324bd86b5c9092fee583580a39fe8da560d2e +size 56253 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-C.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-C.png.meta new file mode 100644 index 00000000..3eac7c41 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/Textures/ScrollViewThumbnails/nose-cone_rocket-C.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 0311aabc-2091-4424-a8e6-788f16414f71 + ImporterName: FileTextureImporter + PrimaryAsset: ! 0311aabc-2091-4424-a8e6-788f16414f71 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_ANIM_mat_landing.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_ANIM_mat_landing.mat new file mode 100644 index 00000000..b1bb71d0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_ANIM_mat_landing.mat @@ -0,0 +1,157 @@ +- ! + PackagePath: "" + PassesInfo: + - ! a47fdbb4-24c5-4148-9fc3-e800284747f2 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 10000.000000 + InstanceCount: 1 + Defines: + - NODE_7_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Amount_N080: + typeIdx: 1 + value: 1.000000 + Port_Default_N025: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Default_N038: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Default_N066: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Exponent_N014: + typeIdx: 1 + value: 7.000000 + Port_Input1_N017: + typeIdx: 1 + value: 2000.000000 + Port_Input1_N021: + typeIdx: 1 + value: 0.000000 + Port_Input1_N040: + typeIdx: 1 + value: 0.100000 + Port_Input1_N043: + typeIdx: 1 + value: 5.000000 + Port_Input1_N069: + typeIdx: 1 + value: 0.000000 + Port_Input1_N070: + typeIdx: 1 + value: 3.000000 + Port_Input1_N071: + typeIdx: 1 + value: 2.000000 + Port_Input1_N072: + typeIdx: 1 + value: 1.100000 + Port_Input1_N097: + typeIdx: 1 + value: 0.005000 + Port_Input2_N069: + typeIdx: 1 + value: 1.000000 + Port_Intensity_N014: + typeIdx: 1 + value: 1.000000 + Port_Normal_N014: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N068: + typeIdx: 1 + value: 0.500000 + Port_Position1_N077: + typeIdx: 1 + value: 0.140000 + Port_Position2_N077: + typeIdx: 1 + value: 0.270000 + Port_Position3_N077: + typeIdx: 1 + value: 0.500000 + Port_RangeMaxA_N103: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N103: + typeIdx: 1 + value: -1.000000 + Port_RangeMinA_N103: + typeIdx: 1 + value: 0.000000 + Port_RangeMinB_N103: + typeIdx: 1 + value: -100.000000 + Port_Value0_N068: + typeIdx: 5 + value: {x: 0.837415, y: 0.837430, z: 0.837430, w: 1.000000} + Port_Value0_N077: + typeIdx: 5 + value: {x: 1.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N025: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Value1_N038: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Value1_N068: + typeIdx: 5 + value: {x: 0.921431, y: 0.921447, z: 0.921447, w: 1.000000} + Port_Value1_N076: + typeIdx: 1 + value: 0.000000 + Port_Value1_N077: + typeIdx: 5 + value: {x: 1.000000, y: 0.578103, z: 0.000000, w: 1.000000} + Port_Value2_N068: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Value2_N077: + typeIdx: 5 + value: {x: 1.000000, y: 0.832349, z: 0.473213, w: 1.000000} + Port_Value3_N076: + typeIdx: 1 + value: 0.000000 + Port_Value3_N077: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Value4_N077: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + alpha: + typeIdx: 1 + value: 1.000000 + distance_gradient: + typeIdx: 1 + value: 1.000000 + height_gradient: + typeIdx: 1 + value: 1.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! d6c8efdc-40f2-4151-95aa-fad0146c77dd diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_ANIM_mat_landing.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_ANIM_mat_landing.mat.meta new file mode 100644 index 00000000..f04fec7a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_ANIM_mat_landing.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 92a5655b-77cb-46a7-b867-2581c0b629b2 + ImporterName: MaterialImporter + PrimaryAsset: ! 92a5655b-77cb-46a7-b867-2581c0b629b2 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_material_landing_.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_material_landing_.ss_graph new file mode 100644 index 00000000..ef3217d9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_material_landing_.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44356a6072934f52df2b7d6b97906e66f3e689ae0099126cb23978ea7d1cd5b0 +size 268460 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_material_landing_.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_material_landing_.ss_graph.meta new file mode 100644 index 00000000..19abf876 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/Bones_clouds_material_landing_.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! d6c8efdc-40f2-4151-95aa-fad0146c77dd + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! d6c8efdc-40f2-4151-95aa-fad0146c77dd + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/CloudsLanding.animationAsset b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/CloudsLanding.animationAsset new file mode 100644 index 00000000..6c9befcc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/CloudsLanding.animationAsset @@ -0,0 +1,7245 @@ +- ! + PackagePath: "" + AnimationPropertiesLayers: + point_0: + position: + - time: 0.000000 + value: {x: -0.011523, y: 2.511905, z: -0.159024} + - time: 0.033333 + value: {x: -0.011523, y: 2.511905, z: -0.159024} + - time: 0.066667 + value: {x: -0.059735, y: 1.579751, z: 0.043245} + - time: 0.100000 + value: {x: -0.253613, y: 0.674692, z: 0.151178} + - time: 0.133333 + value: {x: -0.871472, y: 0.255545, z: 0.243033} + - time: 0.166667 + value: {x: -1.578798, y: 0.245855, z: 0.250679} + - time: 0.200000 + value: {x: -2.080608, y: 0.319772, z: 0.246178} + - time: 0.233333 + value: {x: -2.331855, y: 0.426117, z: 0.271735} + - time: 0.266667 + value: {x: -2.412168, y: 0.499509, z: 0.308405} + - time: 0.300000 + value: {x: -2.433117, y: 0.553920, z: 0.343225} + - time: 0.333333 + value: {x: -2.426527, y: 0.585831, z: 0.363445} + - time: 0.366667 + value: {x: -2.416936, y: 0.589038, z: 0.359348} + - time: 0.400000 + value: {x: -2.428098, y: 0.565903, z: 0.331053} + - time: 0.433333 + value: {x: -2.478895, y: 0.528958, z: 0.285884} + - time: 0.466667 + value: {x: -2.571179, y: 0.493758, z: 0.237431} + - time: 0.500000 + value: {x: -2.691314, y: 0.464843, z: 0.192195} + - time: 0.533333 + value: {x: -2.830321, y: 0.442501, z: 0.150623} + - time: 0.566667 + value: {x: -2.982010, y: 0.426264, z: 0.113226} + - time: 0.600000 + value: {x: -3.142699, y: 0.415872, z: 0.081215} + - time: 0.633333 + value: {x: -3.308638, y: 0.410200, z: 0.054318} + - time: 0.666667 + value: {x: -3.477829, y: 0.408475, z: 0.031353} + - time: 0.700000 + value: {x: -3.649246, y: 0.410400, z: 0.011102} + - time: 0.733333 + value: {x: -3.821565, y: 0.414895, z: -0.008305} + - time: 0.766667 + value: {x: -3.994267, y: 0.421432, z: -0.027709} + - time: 0.800000 + value: {x: -4.166886, y: 0.429325, z: -0.047475} + - time: 0.833333 + value: {x: -4.339089, y: 0.437982, z: -0.068169} + - time: 0.866667 + value: {x: -4.510670, y: 0.446951, z: -0.089932} + - time: 0.900000 + value: {x: -4.681453, y: 0.455888, z: -0.112504} + - time: 0.933333 + value: {x: -4.851295, y: 0.464562, z: -0.135856} + - time: 0.966667 + value: {x: -5.020106, y: 0.472789, z: -0.159410} + - time: 1.000000 + value: {x: -5.187759, y: 0.480544, z: -0.182323} + - time: 1.033333 + value: {x: -5.354177, y: 0.487736, z: -0.204136} + - time: 1.066667 + value: {x: -5.519258, y: 0.494372, z: -0.224920} + - time: 1.100000 + value: {x: -5.682918, y: 0.500524, z: -0.244609} + - time: 1.133333 + value: {x: -5.845060, y: 0.506246, z: -0.262994} + - time: 1.166667 + value: {x: -6.005540, y: 0.511592, z: -0.279858} + - time: 1.200000 + value: {x: -6.164267, y: 0.516742, z: -0.295554} + - time: 1.233333 + value: {x: -6.321117, y: 0.521859, z: -0.310248} + - time: 1.266667 + value: {x: -6.475953, y: 0.527129, z: -0.324016} + - time: 1.300000 + value: {x: -6.628614, y: 0.532751, z: -0.336651} + - time: 1.333333 + value: {x: -6.778924, y: 0.538927, z: -0.347769} + - time: 1.366667 + value: {x: -6.926685, y: 0.545856, z: -0.357150} + - time: 1.400000 + value: {x: -7.071682, y: 0.553725, z: -0.364691} + - time: 1.433333 + value: {x: -7.213670, y: 0.562701, z: -0.370447} + - time: 1.466667 + value: {x: -7.352384, y: 0.572925, z: -0.374447} + - time: 1.500000 + value: {x: -7.487539, y: 0.584507, z: -0.376705} + - time: 1.533333 + value: {x: -7.618845, y: 0.597518, z: -0.377260} + - time: 1.566667 + value: {x: -7.745990, y: 0.611985, z: -0.376180} + - time: 1.600000 + value: {x: -7.868681, y: 0.627900, z: -0.373524} + - time: 1.633333 + value: {x: -7.986643, y: 0.645218, z: -0.369362} + - time: 1.666667 + value: {x: -8.099655, y: 0.663862, z: -0.363797} + - time: 1.700000 + value: {x: -8.207476, y: 0.683771, z: -0.356918} + - time: 1.733333 + value: {x: -8.308380, y: 0.705395, z: -0.348307} + - time: 1.766667 + value: {x: -8.403345, y: 0.728059, z: -0.338532} + - time: 1.800000 + value: {x: -8.492464, y: 0.751560, z: -0.327755} + - time: 1.833333 + value: {x: -8.575027, y: 0.775953, z: -0.315890} + - time: 1.866667 + value: {x: -8.648863, y: 0.801359, z: -0.302551} + - time: 1.900000 + value: {x: -8.716841, y: 0.826858, z: -0.288589} + - time: 1.933333 + value: {x: -8.777540, y: 0.852546, z: -0.273751} + - time: 1.966667 + value: {x: -8.829102, y: 0.877833, z: -0.258097} + - time: 2.000000 + value: {x: -8.876575, y: 0.902422, z: -0.242474} + - time: 2.033333 + value: {x: -8.913158, y: 0.925148, z: -0.226256} + - time: 2.066667 + value: {x: -8.946798, y: 0.946479, z: -0.210466} + - time: 2.100000 + value: {x: -8.972565, y: 0.964898, z: -0.194849} + - time: 2.133333 + value: {x: -8.996012, y: 0.981739, z: -0.179809} + - time: 2.166667 + value: {x: -9.013611, y: 0.995229, z: -0.165359} + - time: 2.200000 + value: {x: -9.030605, y: 1.007959, z: -0.151508} + - time: 2.233333 + value: {x: -9.042618, y: 1.016971, z: -0.138472} + - time: 2.266667 + value: {x: -9.054588, y: 1.025648, z: -0.126009} + - time: 2.300000 + value: {x: -9.064293, y: 1.032166, z: -0.114319} + - time: 2.333333 + value: {x: -9.072796, y: 1.037434, z: -0.103302} + - time: 2.366667 + value: {x: -9.081310, y: 1.042486, z: -0.092846} + - time: 2.400000 + value: {x: -9.088123, y: 1.045721, z: -0.083154} + - time: 2.433333 + value: {x: -9.094635, y: 1.048508, z: -0.074050} + - time: 2.466667 + value: {x: -9.101147, y: 1.051174, z: -0.065494} + - time: 2.500000 + value: {x: -9.107189, y: 1.053255, z: -0.057546} + - time: 2.533333 + value: {x: -9.112621, y: 1.054651, z: -0.050216} + - time: 2.566667 + value: {x: -9.118004, y: 1.055986, z: -0.043419} + - time: 2.600000 + value: {x: -9.123295, y: 1.057255, z: -0.037155} + - time: 2.633333 + value: {x: -9.128445, y: 1.058454, z: -0.031419} + - time: 2.666667 + value: {x: -9.133137, y: 1.059271, z: -0.026249} + - time: 2.700000 + value: {x: -9.137581, y: 1.059987, z: -0.021604} + - time: 2.733333 + value: {x: -9.141777, y: 1.060652, z: -0.017473} + - time: 2.766667 + value: {x: -9.145683, y: 1.061261, z: -0.013851} + - time: 2.800000 + value: {x: -9.149239, y: 1.061808, z: -0.010733} + - time: 2.833333 + value: {x: -9.152401, y: 1.062288, z: -0.008114} + - time: 2.866667 + value: {x: -9.155109, y: 1.062695, z: -0.005987} + - time: 2.900000 + value: {x: -9.157318, y: 1.063021, z: -0.004346} + - time: 2.933333 + value: {x: -9.158962, y: 1.063262, z: -0.003183} + - time: 2.966667 + value: {x: -9.159992, y: 1.063412, z: -0.002492} + - time: 3.000000 + value: {x: -9.160351, y: 1.063463, z: -0.002263} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.290601, y: 0.290601, z: 0.290601} + - time: 0.033333 + value: {x: 0.290869, y: 0.290869, z: 0.290869} + - time: 0.066667 + value: {x: 0.337311, y: 0.337311, z: 0.337311} + - time: 0.100000 + value: {x: 0.392842, y: 0.392842, z: 0.392842} + - time: 0.133333 + value: {x: 0.437588, y: 0.437588, z: 0.437588} + - time: 0.166667 + value: {x: 0.490083, y: 0.490083, z: 0.490083} + - time: 0.200000 + value: {x: 0.547642, y: 0.547642, z: 0.547642} + - time: 0.233333 + value: {x: 0.615463, y: 0.615463, z: 0.615463} + - time: 0.266667 + value: {x: 0.690222, y: 0.690222, z: 0.690222} + - time: 0.300000 + value: {x: 0.769252, y: 0.769252, z: 0.769252} + - time: 0.333333 + value: {x: 0.852007, y: 0.852007, z: 0.852007} + - time: 0.366667 + value: {x: 0.938220, y: 0.938220, z: 0.938220} + - time: 0.400000 + value: {x: 1.027548, y: 1.027548, z: 1.027548} + - time: 0.433333 + value: {x: 1.119255, y: 1.119255, z: 1.119255} + - time: 0.466667 + value: {x: 1.212191, y: 1.212191, z: 1.212191} + - time: 0.533333 + value: {x: 1.398693, y: 1.398693, z: 1.398693} + - time: 0.566667 + value: {x: 1.491664, y: 1.491664, z: 1.491664} + - time: 0.666667 + value: {x: 1.768867, y: 1.768867, z: 1.768867} + - time: 0.700000 + value: {x: 1.860662, y: 1.860662, z: 1.860662} + - time: 0.733333 + value: {x: 1.950026, y: 1.950026, z: 1.950026} + - time: 0.766667 + value: {x: 2.034589, y: 2.034589, z: 2.034589} + - time: 0.800000 + value: {x: 2.113467, y: 2.113467, z: 2.113467} + - time: 0.833333 + value: {x: 2.187388, y: 2.187388, z: 2.187388} + - time: 0.866667 + value: {x: 2.258213, y: 2.258213, z: 2.258213} + - time: 0.900000 + value: {x: 2.327457, y: 2.327457, z: 2.327457} + - time: 0.933333 + value: {x: 2.395755, y: 2.395755, z: 2.395755} + - time: 0.966667 + value: {x: 2.462806, y: 2.462806, z: 2.462806} + - time: 1.000000 + value: {x: 2.528174, y: 2.528174, z: 2.528174} + - time: 1.033333 + value: {x: 2.592602, y: 2.592602, z: 2.592602} + - time: 1.066667 + value: {x: 2.656326, y: 2.656326, z: 2.656326} + - time: 1.100000 + value: {x: 2.718682, y: 2.718682, z: 2.718682} + - time: 1.133333 + value: {x: 2.779336, y: 2.779336, z: 2.779336} + - time: 1.166667 + value: {x: 2.839591, y: 2.839591, z: 2.839591} + - time: 1.200000 + value: {x: 2.901814, y: 2.901814, z: 2.901814} + - time: 1.233333 + value: {x: 2.968027, y: 2.968027, z: 2.968027} + - time: 1.266667 + value: {x: 3.038712, y: 3.038712, z: 3.038712} + - time: 1.300000 + value: {x: 3.111833, y: 3.111833, z: 3.111833} + - time: 1.333333 + value: {x: 3.184121, y: 3.184121, z: 3.184121} + - time: 1.366667 + value: {x: 3.253218, y: 3.253218, z: 3.253218} + - time: 1.400000 + value: {x: 3.317868, y: 3.317868, z: 3.317868} + - time: 1.433333 + value: {x: 3.377827, y: 3.377827, z: 3.377827} + - time: 1.466667 + value: {x: 3.434397, y: 3.434397, z: 3.434397} + - time: 1.500000 + value: {x: 3.490060, y: 3.490060, z: 3.490060} + - time: 1.533333 + value: {x: 3.546874, y: 3.546874, z: 3.546874} + - time: 1.566667 + value: {x: 3.605288, y: 3.605288, z: 3.605288} + - time: 1.600000 + value: {x: 3.664199, y: 3.664199, z: 3.664199} + - time: 1.633333 + value: {x: 3.722171, y: 3.722171, z: 3.722171} + - time: 1.666667 + value: {x: 3.778257, y: 3.778257, z: 3.778257} + - time: 1.700000 + value: {x: 3.831827, y: 3.831827, z: 3.831827} + - time: 1.733333 + value: {x: 3.882404, y: 3.882404, z: 3.882404} + - time: 1.766667 + value: {x: 3.930131, y: 3.930131, z: 3.930131} + - time: 1.800000 + value: {x: 3.975334, y: 3.975334, z: 3.975334} + - time: 1.833333 + value: {x: 4.018619, y: 4.018619, z: 4.018619} + - time: 1.866667 + value: {x: 4.060783, y: 4.060783, z: 4.060783} + - time: 1.933333 + value: {x: 4.144221, y: 4.144221, z: 4.144221} + - time: 1.966667 + value: {x: 4.186174, y: 4.186174, z: 4.186174} + - time: 2.000000 + value: {x: 4.228712, y: 4.228712, z: 4.228712} + - time: 2.033333 + value: {x: 4.272261, y: 4.272261, z: 4.272261} + - time: 2.066667 + value: {x: 4.317227, y: 4.317227, z: 4.317227} + - time: 2.100000 + value: {x: 4.363578, y: 4.363578, z: 4.363578} + - time: 2.133333 + value: {x: 4.410990, y: 4.410990, z: 4.410990} + - time: 2.233333 + value: {x: 4.554600, y: 4.554600, z: 4.554600} + - time: 2.333333 + value: {x: 4.699583, y: 4.699583, z: 4.699583} + - time: 2.366667 + value: {x: 4.746761, y: 4.746761, z: 4.746761} + - time: 2.400000 + value: {x: 4.792158, y: 4.792158, z: 4.792158} + - time: 2.433333 + value: {x: 4.835426, y: 4.835426, z: 4.835426} + - time: 2.466667 + value: {x: 4.876795, y: 4.876795, z: 4.876795} + - time: 2.500000 + value: {x: 4.916898, y: 4.916898, z: 4.916898} + - time: 2.533333 + value: {x: 4.955503, y: 4.955503, z: 4.955503} + - time: 2.566667 + value: {x: 4.992303, y: 4.992303, z: 4.992303} + - time: 2.600000 + value: {x: 5.027706, y: 5.027706, z: 5.027706} + - time: 2.633333 + value: {x: 5.061648, y: 5.061648, z: 5.061648} + - time: 2.666667 + value: {x: 5.093757, y: 5.093757, z: 5.093757} + - time: 2.700000 + value: {x: 5.123381, y: 5.123381, z: 5.123381} + - time: 2.733333 + value: {x: 5.149748, y: 5.149748, z: 5.149748} + - time: 2.766667 + value: {x: 5.172333, y: 5.172333, z: 5.172333} + - time: 2.800000 + value: {x: 5.191216, y: 5.191216, z: 5.191216} + - time: 2.833333 + value: {x: 5.207181, y: 5.207181, z: 5.207181} + - time: 2.900000 + value: {x: 5.236161, y: 5.236161, z: 5.236161} + - time: 2.933333 + value: {x: 5.253018, y: 5.253018, z: 5.253018} + - time: 2.966667 + value: {x: 5.273190, y: 5.273190, z: 5.273190} + - time: 3.000000 + value: {x: 5.296396, y: 5.296396, z: 5.296396} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_1: + position: + - time: 0.000000 + value: {x: -0.094892, y: 2.511905, z: -0.130644} + - time: 0.033333 + value: {x: -0.094892, y: 2.511905, z: -0.130644} + - time: 0.066667 + value: {x: -0.025422, y: 1.579751, z: 0.072199} + - time: 0.100000 + value: {x: -0.113882, y: 0.674692, z: 0.296971} + - time: 0.133333 + value: {x: -0.518852, y: 0.255545, z: 0.815574} + - time: 0.166667 + value: {x: -1.080610, y: 0.245855, z: 1.251593} + - time: 0.200000 + value: {x: -1.522922, y: 0.319772, z: 1.490599} + - time: 0.233333 + value: {x: -1.739615, y: 0.426117, z: 1.617920} + - time: 0.266667 + value: {x: -1.804568, y: 0.499509, z: 1.665550} + - time: 0.300000 + value: {x: -1.823876, y: 0.553920, z: 1.674174} + - time: 0.333333 + value: {x: -1.824087, y: 0.585831, z: 1.661364} + - time: 0.366667 + value: {x: -1.823844, y: 0.589038, z: 1.643604} + - time: 0.400000 + value: {x: -1.843236, y: 0.565903, z: 1.633572} + - time: 0.433333 + value: {x: -1.899666, y: 0.528958, z: 1.639040} + - time: 0.466667 + value: {x: -1.992329, y: 0.493758, z: 1.664807} + - time: 0.500000 + value: {x: -2.106094, y: 0.464843, z: 1.709376} + - time: 0.533333 + value: {x: -2.233778, y: 0.442501, z: 1.767295} + - time: 0.566667 + value: {x: -2.371899, y: 0.426264, z: 1.832448} + - time: 0.600000 + value: {x: -2.519600, y: 0.415872, z: 1.899238} + - time: 0.633333 + value: {x: -2.674097, y: 0.410200, z: 1.965046} + - time: 0.666667 + value: {x: -2.831828, y: 0.408475, z: 2.031812} + - time: 0.700000 + value: {x: -2.990877, y: 0.410400, z: 2.100675} + - time: 0.733333 + value: {x: -3.150239, y: 0.414894, z: 2.170740} + - time: 0.766667 + value: {x: -3.309539, y: 0.421432, z: 2.241630} + - time: 0.800000 + value: {x: -3.468881, y: 0.429325, z: 2.312293} + - time: 0.833333 + value: {x: -3.628636, y: 0.437982, z: 2.381508} + - time: 0.866667 + value: {x: -3.788388, y: 0.446951, z: 2.449551} + - time: 0.900000 + value: {x: -3.946417, y: 0.455888, z: 2.518849} + - time: 0.933333 + value: {x: -4.101688, y: 0.464562, z: 2.590801} + - time: 0.966667 + value: {x: -4.253996, y: 0.472790, z: 2.665560} + - time: 1.000000 + value: {x: -4.404099, y: 0.480544, z: 2.741671} + - time: 1.033333 + value: {x: -4.552117, y: 0.487736, z: 2.818791} + - time: 1.066667 + value: {x: -4.698435, y: 0.494372, z: 2.896117} + - time: 1.100000 + value: {x: -4.843275, y: 0.500524, z: 2.973127} + - time: 1.133333 + value: {x: -4.986373, y: 0.506246, z: 3.050063} + - time: 1.166667 + value: {x: -5.127496, y: 0.511592, z: 3.127024} + - time: 1.200000 + value: {x: -5.266870, y: 0.516741, z: 3.203480} + - time: 1.233333 + value: {x: -5.404512, y: 0.521859, z: 3.279170} + - time: 1.266667 + value: {x: -5.540438, y: 0.527129, z: 3.353803} + - time: 1.300000 + value: {x: -5.674586, y: 0.532751, z: 3.427176} + - time: 1.333333 + value: {x: -5.806709, y: 0.538927, z: 3.499354} + - time: 1.366667 + value: {x: -5.936544, y: 0.545856, z: 3.570384} + - time: 1.400000 + value: {x: -6.063779, y: 0.553725, z: 3.640358} + - time: 1.433333 + value: {x: -6.187931, y: 0.562701, z: 3.709592} + - time: 1.466667 + value: {x: -6.308665, y: 0.572925, z: 3.778124} + - time: 1.500000 + value: {x: -6.425828, y: 0.584507, z: 3.845659} + - time: 1.533333 + value: {x: -6.539395, y: 0.597518, z: 3.911682} + - time: 1.566667 + value: {x: -6.649104, y: 0.611985, z: 3.976032} + - time: 1.600000 + value: {x: -6.754647, y: 0.627900, z: 4.038646} + - time: 1.633333 + value: {x: -6.855676, y: 0.645218, z: 4.099565} + - time: 1.666667 + value: {x: -6.951949, y: 0.663862, z: 4.158756} + - time: 1.700000 + value: {x: -7.043286, y: 0.683771, z: 4.216054} + - time: 1.733333 + value: {x: -7.128032, y: 0.705395, z: 4.270853} + - time: 1.766667 + value: {x: -7.207203, y: 0.728059, z: 4.323369} + - time: 1.800000 + value: {x: -7.280933, y: 0.751560, z: 4.373559} + - time: 1.833333 + value: {x: -7.348585, y: 0.775953, z: 4.421111} + - time: 1.866667 + value: {x: -7.408209, y: 0.801359, z: 4.465050} + - time: 1.900000 + value: {x: -7.462589, y: 0.826858, z: 4.506318} + - time: 1.933333 + value: {x: -7.510452, y: 0.852546, z: 4.544291} + - time: 1.966667 + value: {x: -7.550289, y: 0.877833, z: 4.577865} + - time: 2.000000 + value: {x: -7.586651, y: 0.902422, z: 4.609288} + - time: 2.033333 + value: {x: -7.613689, y: 0.925148, z: 4.635073} + - time: 2.066667 + value: {x: -7.638382, y: 0.946479, z: 4.659067} + - time: 2.100000 + value: {x: -7.656563, y: 0.964898, z: 4.678613} + - time: 2.133333 + value: {x: -7.672968, y: 0.981739, z: 4.696627} + - time: 2.166667 + value: {x: -7.684710, y: 0.995229, z: 4.711071} + - time: 2.200000 + value: {x: -7.696081, y: 1.007958, z: 4.724959} + - time: 2.233333 + value: {x: -7.703564, y: 1.016971, z: 4.735665} + - time: 2.266667 + value: {x: -7.711130, y: 1.025648, z: 4.746160} + - time: 2.300000 + value: {x: -7.717018, y: 1.032166, z: 4.755074} + - time: 2.366667 + value: {x: -7.727224, y: 1.042486, z: 4.770879} + - time: 2.400000 + value: {x: -7.731152, y: 1.045721, z: 4.777463} + - time: 2.466667 + value: {x: -7.738850, y: 1.051174, z: 4.789749} + - time: 2.500000 + value: {x: -7.742474, y: 1.053255, z: 4.795357} + - time: 2.566667 + value: {x: -7.749008, y: 1.055986, z: 4.805313} + - time: 2.633333 + value: {x: -7.755632, y: 1.058453, z: 4.814440} + - time: 2.666667 + value: {x: -7.758654, y: 1.059271, z: 4.818464} + - time: 2.700000 + value: {x: -7.761560, y: 1.059987, z: 4.822199} + - time: 2.733333 + value: {x: -7.764357, y: 1.060652, z: 4.825649} + - time: 2.766667 + value: {x: -7.766994, y: 1.061261, z: 4.828793} + - time: 2.800000 + value: {x: -7.769438, y: 1.061808, z: 4.831604} + - time: 2.833333 + value: {x: -7.771635, y: 1.062288, z: 4.834057} + - time: 2.866667 + value: {x: -7.773542, y: 1.062694, z: 4.836124} + - time: 2.900000 + value: {x: -7.775108, y: 1.063021, z: 4.837780} + - time: 2.933333 + value: {x: -7.776293, y: 1.063262, z: 4.838997} + - time: 2.966667 + value: {x: -7.777037, y: 1.063412, z: 4.839748} + - time: 3.000000 + value: {x: -7.777298, y: 1.063463, z: 4.840006} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.244933, y: 0.244933, z: 0.244933} + - time: 0.033333 + value: {x: 0.245263, y: 0.245263, z: 0.245263} + - time: 0.066667 + value: {x: 0.279233, y: 0.279233, z: 0.279233} + - time: 0.100000 + value: {x: 0.320428, y: 0.320428, z: 0.320428} + - time: 0.133333 + value: {x: 0.357033, y: 0.357033, z: 0.357033} + - time: 0.166667 + value: {x: 0.392379, y: 0.392379, z: 0.392379} + - time: 0.200000 + value: {x: 0.434255, y: 0.434255, z: 0.434255} + - time: 0.233333 + value: {x: 0.482048, y: 0.482048, z: 0.482048} + - time: 0.266667 + value: {x: 0.536320, y: 0.536320, z: 0.536320} + - time: 0.300000 + value: {x: 0.594683, y: 0.594683, z: 0.594683} + - time: 0.333333 + value: {x: 0.656297, y: 0.656297, z: 0.656297} + - time: 0.366667 + value: {x: 0.720687, y: 0.720687, z: 0.720687} + - time: 0.400000 + value: {x: 0.787411, y: 0.787411, z: 0.787411} + - time: 0.433333 + value: {x: 0.856052, y: 0.856052, z: 0.856052} + - time: 0.466667 + value: {x: 0.926840, y: 0.926840, z: 0.926840} + - time: 0.500000 + value: {x: 1.000413, y: 1.000413, z: 1.000413} + - time: 0.533333 + value: {x: 1.076590, y: 1.076590, z: 1.076590} + - time: 0.566667 + value: {x: 1.153843, y: 1.153843, z: 1.153843} + - time: 0.600000 + value: {x: 1.229683, y: 1.229683, z: 1.229683} + - time: 0.633333 + value: {x: 1.301912, y: 1.301912, z: 1.301912} + - time: 0.666667 + value: {x: 1.369324, y: 1.369324, z: 1.369324} + - time: 0.700000 + value: {x: 1.432330, y: 1.432330, z: 1.432330} + - time: 0.733333 + value: {x: 1.492566, y: 1.492566, z: 1.492566} + - time: 0.833333 + value: {x: 1.668853, y: 1.668853, z: 1.668853} + - time: 0.866667 + value: {x: 1.728495, y: 1.728495, z: 1.728495} + - time: 0.900000 + value: {x: 1.789446, y: 1.789446, z: 1.789446} + - time: 0.933333 + value: {x: 1.851040, y: 1.851040, z: 1.851040} + - time: 0.966667 + value: {x: 1.911067, y: 1.911067, z: 1.911067} + - time: 1.000000 + value: {x: 1.968660, y: 1.968660, z: 1.968660} + - time: 1.033333 + value: {x: 2.025847, y: 2.025847, z: 2.025847} + - time: 1.066667 + value: {x: 2.085494, y: 2.085494, z: 2.085494} + - time: 1.100000 + value: {x: 2.148988, y: 2.148988, z: 2.148988} + - time: 1.133333 + value: {x: 2.215290, y: 2.215290, z: 2.215290} + - time: 1.166667 + value: {x: 2.281256, y: 2.281256, z: 2.281256} + - time: 1.200000 + value: {x: 2.344746, y: 2.344746, z: 2.344746} + - time: 1.233333 + value: {x: 2.405287, y: 2.405287, z: 2.405287} + - time: 1.266667 + value: {x: 2.463369, y: 2.463369, z: 2.463369} + - time: 1.300000 + value: {x: 2.520044, y: 2.520044, z: 2.520044} + - time: 1.366667 + value: {x: 2.632392, y: 2.632392, z: 2.632392} + - time: 1.400000 + value: {x: 2.687693, y: 2.687693, z: 2.687693} + - time: 1.433333 + value: {x: 2.741573, y: 2.741573, z: 2.741573} + - time: 1.466667 + value: {x: 2.794012, y: 2.794012, z: 2.794012} + - time: 1.500000 + value: {x: 2.845397, y: 2.845397, z: 2.845397} + - time: 1.533333 + value: {x: 2.895890, y: 2.895890, z: 2.895890} + - time: 1.566667 + value: {x: 2.945124, y: 2.945124, z: 2.945124} + - time: 1.600000 + value: {x: 2.992091, y: 2.992091, z: 2.992091} + - time: 1.633333 + value: {x: 3.035951, y: 3.035951, z: 3.035951} + - time: 1.666667 + value: {x: 3.076870, y: 3.076870, z: 3.076870} + - time: 1.700000 + value: {x: 3.116152, y: 3.116152, z: 3.116152} + - time: 1.733333 + value: {x: 3.156011, y: 3.156011, z: 3.156011} + - time: 1.766667 + value: {x: 3.198385, y: 3.198385, z: 3.198385} + - time: 1.800000 + value: {x: 3.244514, y: 3.244514, z: 3.244514} + - time: 1.833333 + value: {x: 3.294814, y: 3.294814, z: 3.294814} + - time: 1.866667 + value: {x: 3.348882, y: 3.348882, z: 3.348882} + - time: 1.900000 + value: {x: 3.405600, y: 3.405600, z: 3.405600} + - time: 1.933333 + value: {x: 3.463953, y: 3.463953, z: 3.463953} + - time: 1.966667 + value: {x: 3.522716, y: 3.522716, z: 3.522716} + - time: 2.000000 + value: {x: 3.580580, y: 3.580580, z: 3.580580} + - time: 2.033333 + value: {x: 3.636954, y: 3.636954, z: 3.636954} + - time: 2.066667 + value: {x: 3.691490, y: 3.691490, z: 3.691490} + - time: 2.100000 + value: {x: 3.744536, y: 3.744536, z: 3.744536} + - time: 2.133333 + value: {x: 3.796613, y: 3.796613, z: 3.796613} + - time: 2.166667 + value: {x: 3.848183, y: 3.848183, z: 3.848183} + - time: 2.200000 + value: {x: 3.899479, y: 3.899479, z: 3.899479} + - time: 2.233333 + value: {x: 3.949863, y: 3.949863, z: 3.949863} + - time: 2.266667 + value: {x: 3.998956, y: 3.998956, z: 3.998956} + - time: 2.300000 + value: {x: 4.046057, y: 4.046057, z: 4.046057} + - time: 2.333333 + value: {x: 4.090646, y: 4.090646, z: 4.090646} + - time: 2.366667 + value: {x: 4.132399, y: 4.132399, z: 4.132399} + - time: 2.400000 + value: {x: 4.171298, y: 4.171298, z: 4.171298} + - time: 2.433333 + value: {x: 4.208197, y: 4.208197, z: 4.208197} + - time: 2.533333 + value: {x: 4.316267, y: 4.316267, z: 4.316267} + - time: 2.566667 + value: {x: 4.351515, y: 4.351515, z: 4.351515} + - time: 2.600000 + value: {x: 4.385841, y: 4.385841, z: 4.385841} + - time: 2.633333 + value: {x: 4.418590, y: 4.418590, z: 4.418590} + - time: 2.666667 + value: {x: 4.448858, y: 4.448858, z: 4.448858} + - time: 2.700000 + value: {x: 4.475917, y: 4.475917, z: 4.475917} + - time: 2.733333 + value: {x: 4.499378, y: 4.499378, z: 4.499378} + - time: 2.766667 + value: {x: 4.519242, y: 4.519242, z: 4.519242} + - time: 2.800000 + value: {x: 4.535820, y: 4.535820, z: 4.535820} + - time: 2.833333 + value: {x: 4.549440, y: 4.549440, z: 4.549440} + - time: 2.866667 + value: {x: 4.560048, y: 4.560048, z: 4.560048} + - time: 2.900000 + value: {x: 4.567444, y: 4.567444, z: 4.567444} + - time: 2.933333 + value: {x: 4.572215, y: 4.572215, z: 4.572215} + - time: 2.966667 + value: {x: 4.575368, y: 4.575368, z: 4.575368} + - time: 3.000000 + value: {x: 4.577739, y: 4.577739, z: 4.577739} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_10: + position: + - time: 0.000000 + value: {x: 0.095356, y: 2.511905, z: -0.127258} + - time: 0.033333 + value: {x: 0.095356, y: 2.511905, z: -0.127258} + - time: 0.066667 + value: {x: -0.060175, y: 1.579751, z: -0.021829} + - time: 0.100000 + value: {x: -0.224112, y: 0.674692, z: -0.128760} + - time: 0.133333 + value: {x: -0.673908, y: 0.255545, z: -0.553101} + - time: 0.166667 + value: {x: -1.242187, y: 0.245855, z: -0.977513} + - time: 0.200000 + value: {x: -1.650661, y: 0.319772, z: -1.272504} + - time: 0.233333 + value: {x: -1.865823, y: 0.426117, z: -1.407952} + - time: 0.266667 + value: {x: -1.930530, y: 0.499509, z: -1.455933} + - time: 0.300000 + value: {x: -1.943814, y: 0.553920, z: -1.472584} + - time: 0.333333 + value: {x: -1.931783, y: 0.585831, z: -1.476378} + - time: 0.366667 + value: {x: -1.916268, y: 0.589038, z: -1.479607} + - time: 0.400000 + value: {x: -1.918704, y: 0.565903, z: -1.493819} + - time: 0.433333 + value: {x: -1.957248, y: 0.528958, z: -1.526906} + - time: 0.466667 + value: {x: -2.032502, y: 0.493758, z: -1.581001} + - time: 0.500000 + value: {x: -2.131249, y: 0.464843, z: -1.650523} + - time: 0.533333 + value: {x: -2.244061, y: 0.442501, z: -1.732629} + - time: 0.566667 + value: {x: -2.366106, y: 0.426264, z: -1.823446} + - time: 0.600000 + value: {x: -2.493788, y: 0.415872, z: -1.921496} + - time: 0.633333 + value: {x: -2.623774, y: 0.410200, z: -2.024896} + - time: 0.666667 + value: {x: -2.754773, y: 0.408475, z: -2.132089} + - time: 0.700000 + value: {x: -2.884961, y: 0.410400, z: -2.243608} + - time: 0.733333 + value: {x: -3.014924, y: 0.414894, z: -2.356760} + - time: 0.766667 + value: {x: -3.144724, y: 0.421432, z: -2.470683} + - time: 0.800000 + value: {x: -3.275768, y: 0.429325, z: -2.583050} + - time: 0.833333 + value: {x: -3.409401, y: 0.437982, z: -2.691803} + - time: 0.866667 + value: {x: -3.546051, y: 0.446951, z: -2.796140} + - time: 0.900000 + value: {x: -3.685622, y: 0.455889, z: -2.895896} + - time: 0.933333 + value: {x: -3.827030, y: 0.464562, z: -2.992108} + - time: 0.966667 + value: {x: -3.968830, y: 0.472789, z: -3.086296} + - time: 1.000000 + value: {x: -4.108942, y: 0.480544, z: -3.180663} + - time: 1.033333 + value: {x: -4.246368, y: 0.487736, z: -3.276231} + - time: 1.066667 + value: {x: -4.380904, y: 0.494372, z: -3.373092} + - time: 1.100000 + value: {x: -4.512758, y: 0.500524, z: -3.470872} + - time: 1.133333 + value: {x: -4.642355, y: 0.506246, z: -3.568933} + - time: 1.166667 + value: {x: -4.769558, y: 0.511592, z: -3.667212} + - time: 1.200000 + value: {x: -4.894515, y: 0.516742, z: -3.765406} + - time: 1.233333 + value: {x: -5.016200, y: 0.521859, z: -3.864505} + - time: 1.266667 + value: {x: -5.133858, y: 0.527129, z: -3.965163} + - time: 1.300000 + value: {x: -5.247929, y: 0.532751, z: -4.066634} + - time: 1.333333 + value: {x: -5.359151, y: 0.538927, z: -4.167797} + - time: 1.366667 + value: {x: -5.467442, y: 0.545856, z: -4.268449} + - time: 1.400000 + value: {x: -5.572544, y: 0.553725, z: -4.368555} + - time: 1.433333 + value: {x: -5.674623, y: 0.562701, z: -4.467550} + - time: 1.466667 + value: {x: -5.773708, y: 0.572925, z: -4.565002} + - time: 1.500000 + value: {x: -5.869337, y: 0.584507, z: -4.661005} + - time: 1.533333 + value: {x: -5.961237, y: 0.597518, z: -4.755426} + - time: 1.566667 + value: {x: -6.049238, y: 0.611985, z: -4.847996} + - time: 1.600000 + value: {x: -6.133165, y: 0.627900, z: -4.938461} + - time: 1.633333 + value: {x: -6.213173, y: 0.645218, z: -5.026226} + - time: 1.666667 + value: {x: -6.289539, y: 0.663862, z: -5.110634} + - time: 1.700000 + value: {x: -6.362450, y: 0.683771, z: -5.191109} + - time: 1.733333 + value: {x: -6.430628, y: 0.705395, z: -5.266481} + - time: 1.766667 + value: {x: -6.494589, y: 0.728059, z: -5.337654} + - time: 1.800000 + value: {x: -6.554388, y: 0.751560, z: -5.404701} + - time: 1.833333 + value: {x: -6.609488, y: 0.775953, z: -5.467159} + - time: 1.866667 + value: {x: -6.658279, y: 0.801359, z: -5.523581} + - time: 1.900000 + value: {x: -6.702827, y: 0.826858, z: -5.575949} + - time: 1.933333 + value: {x: -6.742033, y: 0.852546, z: -5.623369} + - time: 1.966667 + value: {x: -6.774370, y: 0.877833, z: -5.664764} + - time: 2.000000 + value: {x: -6.803747, y: 0.902422, z: -5.703331} + - time: 2.033333 + value: {x: -6.824724, y: 0.925148, z: -5.734959} + - time: 2.066667 + value: {x: -6.843674, y: 0.946479, z: -5.764441} + - time: 2.100000 + value: {x: -6.856796, y: 0.964898, z: -5.788616} + - time: 2.133333 + value: {x: -6.868372, y: 0.981739, z: -5.811035} + - time: 2.166667 + value: {x: -6.875694, y: 0.995229, z: -5.829441} + - time: 2.200000 + value: {x: -6.882792, y: 1.007958, z: -5.847176} + - time: 2.233333 + value: {x: -6.886332, y: 1.016971, z: -5.861414} + - time: 2.266667 + value: {x: -6.890085, y: 1.025648, z: -5.875343} + - time: 2.300000 + value: {x: -6.892361, y: 1.032166, z: -5.887524} + - time: 2.333333 + value: {x: -6.893961, y: 1.037434, z: -5.898643} + - time: 2.366667 + value: {x: -6.895815, y: 1.042486, z: -5.909487} + - time: 2.400000 + value: {x: -6.896639, y: 1.045722, z: -5.918922} + - time: 2.433333 + value: {x: -6.897482, y: 1.048508, z: -5.927877} + - time: 2.466667 + value: {x: -6.898575, y: 1.051174, z: -5.936554} + - time: 2.500000 + value: {x: -6.899555, y: 1.053255, z: -5.944633} + - time: 2.533333 + value: {x: -6.900322, y: 1.054651, z: -5.952028} + - time: 2.566667 + value: {x: -6.901295, y: 1.055986, z: -5.959114} + - time: 2.600000 + value: {x: -6.902437, y: 1.057256, z: -5.965858} + - time: 2.633333 + value: {x: -6.903723, y: 1.058454, z: -5.972240} + - time: 2.666667 + value: {x: -6.904896, y: 1.059271, z: -5.978041} + - time: 2.700000 + value: {x: -6.906120, y: 1.059987, z: -5.983402} + - time: 2.733333 + value: {x: -6.907394, y: 1.060652, z: -5.988335} + - time: 2.766667 + value: {x: -6.908680, y: 1.061261, z: -5.992804} + - time: 2.800000 + value: {x: -6.909939, y: 1.061808, z: -5.996782} + - time: 2.833333 + value: {x: -6.911119, y: 1.062288, z: -6.000237} + - time: 2.866667 + value: {x: -6.912191, y: 1.062694, z: -6.003136} + - time: 2.900000 + value: {x: -6.913107, y: 1.063021, z: -6.005447} + - time: 2.933333 + value: {x: -6.913815, y: 1.063262, z: -6.007141} + - time: 2.966667 + value: {x: -6.914276, y: 1.063412, z: -6.008183} + - time: 3.000000 + value: {x: -6.914444, y: 1.063463, z: -6.008537} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.249408, y: 0.249408, z: 0.249408} + - time: 0.033333 + value: {x: 0.249527, y: 0.249527, z: 0.249527} + - time: 0.066667 + value: {x: 0.298856, y: 0.298856, z: 0.298856} + - time: 0.100000 + value: {x: 0.362755, y: 0.362755, z: 0.362755} + - time: 0.133333 + value: {x: 0.423816, y: 0.423816, z: 0.423816} + - time: 0.166667 + value: {x: 0.489779, y: 0.489779, z: 0.489779} + - time: 0.200000 + value: {x: 0.569325, y: 0.569325, z: 0.569325} + - time: 0.233333 + value: {x: 0.658105, y: 0.658105, z: 0.658105} + - time: 0.266667 + value: {x: 0.754703, y: 0.754703, z: 0.754703} + - time: 0.300000 + value: {x: 0.857224, y: 0.857224, z: 0.857224} + - time: 0.333333 + value: {x: 0.964939, y: 0.964939, z: 0.964939} + - time: 0.366667 + value: {x: 1.077346, y: 1.077346, z: 1.077346} + - time: 0.400000 + value: {x: 1.193767, y: 1.193767, z: 1.193767} + - time: 0.433333 + value: {x: 1.313351, y: 1.313351, z: 1.313351} + - time: 0.466667 + value: {x: 1.435878, y: 1.435878, z: 1.435878} + - time: 0.500000 + value: {x: 1.561714, y: 1.561714, z: 1.561714} + - time: 0.533333 + value: {x: 1.690996, y: 1.690996, z: 1.690996} + - time: 0.566667 + value: {x: 1.823179, y: 1.823179, z: 1.823179} + - time: 0.600000 + value: {x: 1.957230, y: 1.957230, z: 1.957230} + - time: 0.633333 + value: {x: 2.091713, y: 2.091713, z: 2.091713} + - time: 0.666667 + value: {x: 2.225637, y: 2.225637, z: 2.225637} + - time: 0.700000 + value: {x: 2.357964, y: 2.357964, z: 2.357964} + - time: 0.733333 + value: {x: 2.486784, y: 2.486784, z: 2.486784} + - time: 0.766667 + value: {x: 2.609775, y: 2.609775, z: 2.609775} + - time: 0.800000 + value: {x: 2.726475, y: 2.726475, z: 2.726475} + - time: 0.833333 + value: {x: 2.837840, y: 2.837840, z: 2.837840} + - time: 0.866667 + value: {x: 2.945358, y: 2.945358, z: 2.945358} + - time: 0.900000 + value: {x: 3.050697, y: 3.050697, z: 3.050697} + - time: 0.933333 + value: {x: 3.154260, y: 3.154260, z: 3.154260} + - time: 0.966667 + value: {x: 3.254884, y: 3.254884, z: 3.254884} + - time: 1.000000 + value: {x: 3.351579, y: 3.351579, z: 3.351579} + - time: 1.033333 + value: {x: 3.443656, y: 3.443656, z: 3.443656} + - time: 1.066667 + value: {x: 3.531393, y: 3.531393, z: 3.531393} + - time: 1.100000 + value: {x: 3.617000, y: 3.617000, z: 3.617000} + - time: 1.133333 + value: {x: 3.703827, y: 3.703827, z: 3.703827} + - time: 1.166667 + value: {x: 3.794201, y: 3.794201, z: 3.794201} + - time: 1.200000 + value: {x: 3.887074, y: 3.887074, z: 3.887074} + - time: 1.233333 + value: {x: 3.979653, y: 3.979653, z: 3.979653} + - time: 1.266667 + value: {x: 4.069108, y: 4.069108, z: 4.069108} + - time: 1.300000 + value: {x: 4.154336, y: 4.154336, z: 4.154336} + - time: 1.333333 + value: {x: 4.236311, y: 4.236311, z: 4.236311} + - time: 1.366667 + value: {x: 4.316163, y: 4.316163, z: 4.316163} + - time: 1.400000 + value: {x: 4.394127, y: 4.394127, z: 4.394127} + - time: 1.433333 + value: {x: 4.469040, y: 4.469040, z: 4.469040} + - time: 1.466667 + value: {x: 4.538295, y: 4.538295, z: 4.538295} + - time: 1.500000 + value: {x: 4.599576, y: 4.599576, z: 4.599576} + - time: 1.533333 + value: {x: 4.652151, y: 4.652151, z: 4.652151} + - time: 1.566667 + value: {x: 4.696580, y: 4.696580, z: 4.696580} + - time: 1.600000 + value: {x: 4.733267, y: 4.733267, z: 4.733267} + - time: 1.633333 + value: {x: 4.762767, y: 4.762767, z: 4.762767} + - time: 1.666667 + value: {x: 4.786262, y: 4.786262, z: 4.786262} + - time: 1.700000 + value: {x: 4.805147, y: 4.805147, z: 4.805147} + - time: 1.733333 + value: {x: 4.820886, y: 4.820886, z: 4.820886} + - time: 1.766667 + value: {x: 4.834214, y: 4.834214, z: 4.834214} + - time: 1.800000 + value: {x: 4.845605, y: 4.845605, z: 4.845605} + - time: 1.833333 + value: {x: 4.855381, y: 4.855381, z: 4.855381} + - time: 1.866667 + value: {x: 4.863792, y: 4.863792, z: 4.863792} + - time: 1.900000 + value: {x: 4.870935, y: 4.870935, z: 4.870935} + - time: 1.966667 + value: {x: 4.883805, y: 4.883805, z: 4.883805} + - time: 2.000000 + value: {x: 4.890525, y: 4.890525, z: 4.890525} + - time: 2.033333 + value: {x: 4.898110, y: 4.898110, z: 4.898110} + - time: 2.066667 + value: {x: 4.906025, y: 4.906025, z: 4.906025} + - time: 2.100000 + value: {x: 4.914194, y: 4.914194, z: 4.914194} + - time: 2.133333 + value: {x: 4.922004, y: 4.922004, z: 4.922004} + - time: 2.166667 + value: {x: 4.929551, y: 4.929551, z: 4.929551} + - time: 2.200000 + value: {x: 4.936505, y: 4.936505, z: 4.936505} + - time: 2.233333 + value: {x: 4.942852, y: 4.942852, z: 4.942852} + - time: 2.266667 + value: {x: 4.948186, y: 4.948186, z: 4.948186} + - time: 2.300000 + value: {x: 4.952359, y: 4.952359, z: 4.952359} + - time: 2.333333 + value: {x: 4.955348, y: 4.955348, z: 4.955348} + - time: 2.400000 + value: {x: 4.959371, y: 4.959371, z: 4.959371} + - time: 2.433333 + value: {x: 4.961841, y: 4.961841, z: 4.961841} + - time: 2.466667 + value: {x: 4.965467, y: 4.965467, z: 4.965467} + - time: 2.500000 + value: {x: 4.970246, y: 4.970246, z: 4.970246} + - time: 2.533333 + value: {x: 4.973794, y: 4.973794, z: 4.973794} + - time: 2.566667 + value: {x: 4.973976, y: 4.973976, z: 4.973976} + - time: 2.600000 + value: {x: 4.971313, y: 4.971313, z: 4.971313} + - time: 2.666667 + value: {x: 4.962656, y: 4.962656, z: 4.962656} + - time: 2.700000 + value: {x: 4.959600, y: 4.959600, z: 4.959600} + - time: 2.733333 + value: {x: 4.958642, y: 4.958642, z: 4.958642} + - time: 2.766667 + value: {x: 4.959811, y: 4.959811, z: 4.959811} + - time: 2.800000 + value: {x: 4.962654, y: 4.962654, z: 4.962654} + - time: 2.866667 + value: {x: 4.969464, y: 4.969464, z: 4.969464} + - time: 2.900000 + value: {x: 4.972389, y: 4.972389, z: 4.972389} + - time: 2.933333 + value: {x: 4.975994, y: 4.975994, z: 4.975994} + - time: 2.966667 + value: {x: 4.981713, y: 4.981713, z: 4.981713} + - time: 3.000000 + value: {x: 4.990914, y: 4.990914, z: 4.990914} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_11: + position: + - time: 0.000000 + value: {x: -0.011523, y: 2.511905, z: -0.159024} + - time: 0.033333 + value: {x: -0.011523, y: 2.511905, z: -0.159024} + - time: 0.066667 + value: {x: -0.036591, y: 1.915579, z: -0.006631} + - time: 0.100000 + value: {x: -0.095040, y: 1.296275, z: 0.070882} + - time: 0.133333 + value: {x: -0.230021, y: 0.768014, z: 0.134907} + - time: 0.166667 + value: {x: -0.485157, y: 0.439974, z: 0.194595} + - time: 0.200000 + value: {x: -0.780397, y: 0.309933, z: 0.216261} + - time: 0.233333 + value: {x: -1.006779, y: 0.265766, z: 0.213531} + - time: 0.266667 + value: {x: -1.144169, y: 0.252168, z: 0.207180} + - time: 0.300000 + value: {x: -1.263304, y: 0.245856, z: 0.200360} + - time: 0.333333 + value: {x: -1.382975, y: 0.243893, z: 0.192655} + - time: 0.366667 + value: {x: -1.502825, y: 0.245021, z: 0.184439} + - time: 0.400000 + value: {x: -1.622544, y: 0.248143, z: 0.176239} + - time: 0.433333 + value: {x: -1.741962, y: 0.252903, z: 0.168028} + - time: 0.466667 + value: {x: -1.860955, y: 0.258992, z: 0.159490} + - time: 0.500000 + value: {x: -1.979456, y: 0.265887, z: 0.150451} + - time: 0.533333 + value: {x: -2.097457, y: 0.273091, z: 0.140400} + - time: 0.566667 + value: {x: -2.214877, y: 0.280259, z: 0.129367} + - time: 0.600000 + value: {x: -2.331671, y: 0.287259, z: 0.117648} + - time: 0.633333 + value: {x: -2.447796, y: 0.294042, z: 0.105641} + - time: 0.666667 + value: {x: -2.563221, y: 0.300609, z: 0.093769} + - time: 0.700000 + value: {x: -2.677910, y: 0.306992, z: 0.082073} + - time: 0.733333 + value: {x: -2.791824, y: 0.313243, z: 0.070659} + - time: 0.766667 + value: {x: -2.904925, y: 0.319432, z: 0.059630} + - time: 0.800000 + value: {x: -3.017171, y: 0.325636, z: 0.049045} + - time: 0.833333 + value: {x: -3.128516, y: 0.331942, z: 0.039117} + - time: 0.866667 + value: {x: -3.238908, y: 0.338437, z: 0.030015} + - time: 0.900000 + value: {x: -3.348295, y: 0.345206, z: 0.021766} + - time: 0.933333 + value: {x: -3.456620, y: 0.352324, z: 0.014271} + - time: 0.966667 + value: {x: -3.563818, y: 0.359858, z: 0.007404} + - time: 1.000000 + value: {x: -3.669740, y: 0.367957, z: 0.001094} + - time: 1.033333 + value: {x: -3.774331, y: 0.376643, z: -0.004905} + - time: 1.066667 + value: {x: -3.877525, y: 0.385936, z: -0.010666} + - time: 1.100000 + value: {x: -3.979244, y: 0.395860, z: -0.016248} + - time: 1.133333 + value: {x: -4.079412, y: 0.406424, z: -0.021710} + - time: 1.166667 + value: {x: -4.177873, y: 0.417702, z: -0.027114} + - time: 1.200000 + value: {x: -4.274238, y: 0.429906, z: -0.032332} + - time: 1.233333 + value: {x: -4.368692, y: 0.442784, z: -0.037342} + - time: 1.266667 + value: {x: -4.461205, y: 0.456295, z: -0.042164} + - time: 1.300000 + value: {x: -4.551379, y: 0.470620, z: -0.046812} + - time: 1.333333 + value: {x: -4.638805, y: 0.485859, z: -0.051165} + - time: 1.366667 + value: {x: -4.723994, y: 0.501639, z: -0.055250} + - time: 1.400000 + value: {x: -4.806555, y: 0.518109, z: -0.058992} + - time: 1.433333 + value: {x: -4.885585, y: 0.535538, z: -0.062287} + - time: 1.466667 + value: {x: -4.962296, y: 0.553320, z: -0.065294} + - time: 1.500000 + value: {x: -5.035295, y: 0.571938, z: -0.067762} + - time: 1.533333 + value: {x: -5.104873, y: 0.591119, z: -0.069689} + - time: 1.566667 + value: {x: -5.171801, y: 0.610591, z: -0.071232} + - time: 1.600000 + value: {x: -5.233592, y: 0.630914, z: -0.071809} + - time: 1.633333 + value: {x: -5.293728, y: 0.651115, z: -0.072191} + - time: 1.666667 + value: {x: -5.347325, y: 0.672148, z: -0.071295} + - time: 1.700000 + value: {x: -5.399689, y: 0.692855, z: -0.070321} + - time: 1.733333 + value: {x: -5.445229, y: 0.713950, z: -0.068168} + - time: 1.766667 + value: {x: -5.490042, y: 0.734617, z: -0.066055} + - time: 1.800000 + value: {x: -5.527027, y: 0.755057, z: -0.062918} + - time: 1.833333 + value: {x: -5.563494, y: 0.775045, z: -0.059863} + - time: 1.866667 + value: {x: -5.593435, y: 0.793886, z: -0.056351} + - time: 1.900000 + value: {x: -5.621443, y: 0.812103, z: -0.052801} + - time: 1.933333 + value: {x: -5.646345, y: 0.829032, z: -0.049280} + - time: 1.966667 + value: {x: -5.666725, y: 0.844237, z: -0.045752} + - time: 2.000000 + value: {x: -5.686850, y: 0.859037, z: -0.042333} + - time: 2.033333 + value: {x: -5.702738, y: 0.871322, z: -0.039125} + - time: 2.066667 + value: {x: -5.717117, y: 0.882546, z: -0.036060} + - time: 2.100000 + value: {x: -5.731344, y: 0.893439, z: -0.033102} + - time: 2.133333 + value: {x: -5.742643, y: 0.901977, z: -0.030411} + - time: 2.166667 + value: {x: -5.753086, y: 0.909690, z: -0.027867} + - time: 2.200000 + value: {x: -5.763437, y: 0.917150, z: -0.025425} + - time: 2.233333 + value: {x: -5.772915, y: 0.923670, z: -0.023141} + - time: 2.266667 + value: {x: -5.780972, y: 0.928774, z: -0.021057} + - time: 2.333333 + value: {x: -5.796852, y: 0.938425, z: -0.017177} + - time: 2.366667 + value: {x: -5.804396, y: 0.942728, z: -0.015402} + - time: 2.400000 + value: {x: -5.811005, y: 0.946029, z: -0.013796} + - time: 2.466667 + value: {x: -5.823866, y: 0.952199, z: -0.010856} + - time: 2.533333 + value: {x: -5.836084, y: 0.957761, z: -0.008280} + - time: 2.566667 + value: {x: -5.841663, y: 0.960066, z: -0.007153} + - time: 2.600000 + value: {x: -5.846897, y: 0.962100, z: -0.006128} + - time: 2.633333 + value: {x: -5.851892, y: 0.963995, z: -0.005189} + - time: 2.666667 + value: {x: -5.856615, y: 0.965747, z: -0.004336} + - time: 2.700000 + value: {x: -5.861034, y: 0.967352, z: -0.003569} + - time: 2.733333 + value: {x: -5.865124, y: 0.968806, z: -0.002886} + - time: 2.766667 + value: {x: -5.868855, y: 0.970104, z: -0.002288} + - time: 2.800000 + value: {x: -5.872190, y: 0.971242, z: -0.001773} + - time: 2.833333 + value: {x: -5.875103, y: 0.972217, z: -0.001340} + - time: 2.866667 + value: {x: -5.877563, y: 0.973024, z: -0.000989} + - time: 2.900000 + value: {x: -5.879534, y: 0.973660, z: -0.000718} + - time: 2.933333 + value: {x: -5.880983, y: 0.974118, z: -0.000526} + - time: 2.966667 + value: {x: -5.881880, y: 0.974396, z: -0.000412} + - time: 3.000000 + value: {x: -5.882187, y: 0.974490, z: -0.000374} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.375750, y: 0.375750, z: 0.375750} + - time: 0.033333 + value: {x: 0.376019, y: 0.376019, z: 0.376019} + - time: 0.066667 + value: {x: 0.394196, y: 0.394196, z: 0.394196} + - time: 0.100000 + value: {x: 0.419722, y: 0.419722, z: 0.419722} + - time: 0.133333 + value: {x: 0.450325, y: 0.450325, z: 0.450325} + - time: 0.200000 + value: {x: 0.512030, y: 0.512030, z: 0.512030} + - time: 0.233333 + value: {x: 0.550128, y: 0.550128, z: 0.550128} + - time: 0.266667 + value: {x: 0.595540, y: 0.595540, z: 0.595540} + - time: 0.300000 + value: {x: 0.645659, y: 0.645659, z: 0.645659} + - time: 0.333333 + value: {x: 0.699647, y: 0.699647, z: 0.699647} + - time: 0.366667 + value: {x: 0.757211, y: 0.757211, z: 0.757211} + - time: 0.400000 + value: {x: 0.818313, y: 0.818313, z: 0.818313} + - time: 0.433333 + value: {x: 0.883140, y: 0.883140, z: 0.883140} + - time: 0.466667 + value: {x: 0.951778, y: 0.951778, z: 0.951778} + - time: 0.500000 + value: {x: 1.023902, y: 1.023902, z: 1.023902} + - time: 0.533333 + value: {x: 1.098866, y: 1.098866, z: 1.098866} + - time: 0.566667 + value: {x: 1.176050, y: 1.176050, z: 1.176050} + - time: 0.600000 + value: {x: 1.255243, y: 1.255243, z: 1.255243} + - time: 0.633333 + value: {x: 1.336615, y: 1.336615, z: 1.336615} + - time: 0.666667 + value: {x: 1.420372, y: 1.420372, z: 1.420372} + - time: 0.700000 + value: {x: 1.506397, y: 1.506397, z: 1.506397} + - time: 0.733333 + value: {x: 1.594220, y: 1.594220, z: 1.594220} + - time: 0.766667 + value: {x: 1.683232, y: 1.683232, z: 1.683232} + - time: 0.833333 + value: {x: 1.862539, y: 1.862539, z: 1.862539} + - time: 0.866667 + value: {x: 1.951850, y: 1.951850, z: 1.951850} + - time: 0.900000 + value: {x: 2.039842, y: 2.039842, z: 2.039842} + - time: 0.933333 + value: {x: 2.125801, y: 2.125801, z: 2.125801} + - time: 0.966667 + value: {x: 2.209970, y: 2.209970, z: 2.209970} + - time: 1.000000 + value: {x: 2.293713, y: 2.293713, z: 2.293713} + - time: 1.033333 + value: {x: 2.378569, y: 2.378569, z: 2.378569} + - time: 1.066667 + value: {x: 2.465280, y: 2.465280, z: 2.465280} + - time: 1.100000 + value: {x: 2.553709, y: 2.553709, z: 2.553709} + - time: 1.133333 + value: {x: 2.643261, y: 2.643261, z: 2.643261} + - time: 1.200000 + value: {x: 2.822981, y: 2.822981, z: 2.822981} + - time: 1.233333 + value: {x: 2.912148, y: 2.912148, z: 2.912148} + - time: 1.266667 + value: {x: 2.999584, y: 2.999584, z: 2.999584} + - time: 1.300000 + value: {x: 3.084217, y: 3.084217, z: 3.084217} + - time: 1.333333 + value: {x: 3.165332, y: 3.165332, z: 3.165332} + - time: 1.366667 + value: {x: 3.242898, y: 3.242898, z: 3.242898} + - time: 1.400000 + value: {x: 3.317530, y: 3.317530, z: 3.317530} + - time: 1.433333 + value: {x: 3.389924, y: 3.389924, z: 3.389924} + - time: 1.466667 + value: {x: 3.460561, y: 3.460561, z: 3.460561} + - time: 1.500000 + value: {x: 3.530210, y: 3.530210, z: 3.530210} + - time: 1.566667 + value: {x: 3.668766, y: 3.668766, z: 3.668766} + - time: 1.600000 + value: {x: 3.737576, y: 3.737576, z: 3.737576} + - time: 1.633333 + value: {x: 3.805277, y: 3.805277, z: 3.805277} + - time: 1.666667 + value: {x: 3.871431, y: 3.871431, z: 3.871431} + - time: 1.700000 + value: {x: 3.935205, y: 3.935205, z: 3.935205} + - time: 1.733333 + value: {x: 3.996821, y: 3.996821, z: 3.996821} + - time: 1.766667 + value: {x: 4.056955, y: 4.056955, z: 4.056955} + - time: 1.800000 + value: {x: 4.116819, y: 4.116819, z: 4.116819} + - time: 1.866667 + value: {x: 4.235766, y: 4.235766, z: 4.235766} + - time: 1.900000 + value: {x: 4.294019, y: 4.294019, z: 4.294019} + - time: 1.933333 + value: {x: 4.350286, y: 4.350286, z: 4.350286} + - time: 1.966667 + value: {x: 4.403585, y: 4.403585, z: 4.403585} + - time: 2.000000 + value: {x: 4.453082, y: 4.453082, z: 4.453082} + - time: 2.033333 + value: {x: 4.498715, y: 4.498715, z: 4.498715} + - time: 2.066667 + value: {x: 4.541206, y: 4.541206, z: 4.541206} + - time: 2.100000 + value: {x: 4.581676, y: 4.581676, z: 4.581676} + - time: 2.133333 + value: {x: 4.620902, y: 4.620902, z: 4.620902} + - time: 2.233333 + value: {x: 4.737112, y: 4.737112, z: 4.737112} + - time: 2.266667 + value: {x: 4.776396, y: 4.776396, z: 4.776396} + - time: 2.300000 + value: {x: 4.816492, y: 4.816492, z: 4.816492} + - time: 2.333333 + value: {x: 4.857601, y: 4.857601, z: 4.857601} + - time: 2.366667 + value: {x: 4.899617, y: 4.899617, z: 4.899617} + - time: 2.433333 + value: {x: 4.985028, y: 4.985028, z: 4.985028} + - time: 2.466667 + value: {x: 5.027256, y: 5.027256, z: 5.027256} + - time: 2.500000 + value: {x: 5.068354, y: 5.068354, z: 5.068354} + - time: 2.533333 + value: {x: 5.106805, y: 5.106805, z: 5.106805} + - time: 2.566667 + value: {x: 5.141529, y: 5.141529, z: 5.141529} + - time: 2.600000 + value: {x: 5.173072, y: 5.173072, z: 5.173072} + - time: 2.633333 + value: {x: 5.202189, y: 5.202189, z: 5.202189} + - time: 2.666667 + value: {x: 5.229535, y: 5.229535, z: 5.229535} + - time: 2.700000 + value: {x: 5.255357, y: 5.255357, z: 5.255357} + - time: 2.733333 + value: {x: 5.279293, y: 5.279293, z: 5.279293} + - time: 2.766667 + value: {x: 5.300613, y: 5.300613, z: 5.300613} + - time: 2.800000 + value: {x: 5.319296, y: 5.319296, z: 5.319296} + - time: 2.833333 + value: {x: 5.336347, y: 5.336347, z: 5.336347} + - time: 2.866667 + value: {x: 5.353141, y: 5.353141, z: 5.353141} + - time: 2.900000 + value: {x: 5.370738, y: 5.370738, z: 5.370738} + - time: 2.933333 + value: {x: 5.389923, y: 5.389923, z: 5.389923} + - time: 2.966667 + value: {x: 5.410670, y: 5.410670, z: 5.410670} + - time: 3.000000 + value: {x: 5.432114, y: 5.432114, z: 5.432114} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_12: + position: + - time: 0.000000 + value: {x: -0.110479, y: 2.511905, z: -0.118569} + - time: 0.033333 + value: {x: -0.110479, y: 2.511905, z: -0.118569} + - time: 0.066667 + value: {x: -0.032726, y: 1.915579, z: 0.017713} + - time: 0.100000 + value: {x: -0.024505, y: 1.296275, z: 0.120978} + - time: 0.133333 + value: {x: -0.074238, y: 0.768014, z: 0.274292} + - time: 0.166667 + value: {x: -0.199644, y: 0.439974, z: 0.525164} + - time: 0.200000 + value: {x: -0.373164, y: 0.309932, z: 0.780275} + - time: 0.233333 + value: {x: -0.527539, y: 0.265766, z: 0.949460} + - time: 0.266667 + value: {x: -0.626505, y: 0.252168, z: 1.045597} + - time: 0.300000 + value: {x: -0.714137, y: 0.245856, z: 1.126711} + - time: 0.333333 + value: {x: -0.804686, y: 0.243893, z: 1.205064} + - time: 0.366667 + value: {x: -0.899379, y: 0.245021, z: 1.278565} + - time: 0.400000 + value: {x: -0.996407, y: 0.248143, z: 1.348964} + - time: 0.433333 + value: {x: -1.093992, y: 0.252903, z: 1.418194} + - time: 0.466667 + value: {x: -1.191614, y: 0.258992, z: 1.486701} + - time: 0.500000 + value: {x: -1.289371, y: 0.265887, z: 1.554257} + - time: 0.533333 + value: {x: -1.386507, y: 0.273090, z: 1.621785} + - time: 0.566667 + value: {x: -1.483250, y: 0.280259, z: 1.688875} + - time: 0.600000 + value: {x: -1.579527, y: 0.287259, z: 1.755545} + - time: 0.633333 + value: {x: -1.674594, y: 0.294042, z: 1.822652} + - time: 0.666667 + value: {x: -1.768269, y: 0.300609, z: 1.890368} + - time: 0.700000 + value: {x: -1.861097, y: 0.306992, z: 1.957959} + - time: 0.733333 + value: {x: -1.953682, y: 0.313243, z: 2.024620} + - time: 0.766667 + value: {x: -2.046619, y: 0.319432, z: 2.089550} + - time: 0.800000 + value: {x: -2.140295, y: 0.325636, z: 2.152201} + - time: 0.833333 + value: {x: -2.234442, y: 0.331942, z: 2.212834} + - time: 0.866667 + value: {x: -2.328256, y: 0.338437, z: 2.272362} + - time: 0.900000 + value: {x: -2.420977, y: 0.345206, z: 2.331646} + - time: 0.933333 + value: {x: -2.512181, y: 0.352324, z: 2.391116} + - time: 0.966667 + value: {x: -2.601703, y: 0.359858, z: 2.450878} + - time: 1.000000 + value: {x: -2.689321, y: 0.367957, z: 2.510965} + - time: 1.033333 + value: {x: -2.775343, y: 0.376643, z: 2.570915} + - time: 1.066667 + value: {x: -2.859999, y: 0.385936, z: 2.630331} + - time: 1.100000 + value: {x: -2.943464, y: 0.395860, z: 2.688872} + - time: 1.133333 + value: {x: -3.025794, y: 0.406424, z: 2.746353} + - time: 1.166667 + value: {x: -3.106865, y: 0.417702, z: 2.802675} + - time: 1.200000 + value: {x: -3.186398, y: 0.429905, z: 2.857565} + - time: 1.233333 + value: {x: -3.264297, y: 0.442785, z: 2.911437} + - time: 1.266667 + value: {x: -3.340585, y: 0.456295, z: 2.964216} + - time: 1.300000 + value: {x: -3.415073, y: 0.470620, z: 3.015500} + - time: 1.333333 + value: {x: -3.487674, y: 0.485859, z: 3.064745} + - time: 1.366667 + value: {x: -3.558651, y: 0.501639, z: 3.112442} + - time: 1.400000 + value: {x: -3.627727, y: 0.518109, z: 3.158308} + - time: 1.433333 + value: {x: -3.694196, y: 0.535538, z: 3.201783} + - time: 1.466667 + value: {x: -3.758886, y: 0.553320, z: 3.243771} + - time: 1.500000 + value: {x: -3.820811, y: 0.571938, z: 3.283274} + - time: 1.533333 + value: {x: -3.879892, y: 0.591119, z: 3.320852} + - time: 1.566667 + value: {x: -3.936757, y: 0.610591, z: 3.356959} + - time: 1.600000 + value: {x: -3.989213, y: 0.630913, z: 3.390347} + - time: 1.633333 + value: {x: -4.040227, y: 0.651115, z: 3.422891} + - time: 1.666667 + value: {x: -4.085672, y: 0.672148, z: 3.451921} + - time: 1.700000 + value: {x: -4.130051, y: 0.692854, z: 3.480308} + - time: 1.733333 + value: {x: -4.168796, y: 0.713950, z: 3.504811} + - time: 1.766667 + value: {x: -4.206893, y: 0.734617, z: 3.528957} + - time: 1.800000 + value: {x: -4.238790, y: 0.755057, z: 3.548325} + - time: 1.833333 + value: {x: -4.270203, y: 0.775045, z: 3.567467} + - time: 1.866667 + value: {x: -4.296588, y: 0.793886, z: 3.582447} + - time: 1.900000 + value: {x: -4.321419, y: 0.812103, z: 3.596278} + - time: 1.933333 + value: {x: -4.343815, y: 0.829032, z: 3.608177} + - time: 1.966667 + value: {x: -4.362712, y: 0.844237, z: 3.617209} + - time: 2.000000 + value: {x: -4.381317, y: 0.859037, z: 3.626200} + - time: 2.033333 + value: {x: -4.396596, y: 0.871322, z: 3.632565} + - time: 2.066667 + value: {x: -4.410625, y: 0.882546, z: 3.638079} + - time: 2.100000 + value: {x: -4.424435, y: 0.893438, z: 3.643620} + - time: 2.133333 + value: {x: -4.435882, y: 0.901977, z: 3.647426} + - time: 2.166667 + value: {x: -4.446566, y: 0.909690, z: 3.650815} + - time: 2.200000 + value: {x: -4.457076, y: 0.917150, z: 3.654272} + - time: 2.233333 + value: {x: -4.466800, y: 0.923670, z: 3.657313} + - time: 2.266667 + value: {x: -4.475313, y: 0.928774, z: 3.659593} + - time: 2.333333 + value: {x: -4.491848, y: 0.938425, z: 3.664392} + - time: 2.366667 + value: {x: -4.499647, y: 0.942728, z: 3.666739} + - time: 2.433333 + value: {x: -4.513361, y: 0.949188, z: 3.670615} + - time: 2.500000 + value: {x: -4.526245, y: 0.955058, z: 3.674660} + - time: 2.533333 + value: {x: -4.532324, y: 0.957761, z: 3.676703} + - time: 2.566667 + value: {x: -4.537956, y: 0.960066, z: 3.678607} + - time: 2.600000 + value: {x: -4.543219, y: 0.962100, z: 3.680424} + - time: 2.633333 + value: {x: -4.548191, y: 0.963995, z: 3.682213} + - time: 2.666667 + value: {x: -4.552851, y: 0.965747, z: 3.683956} + - time: 2.700000 + value: {x: -4.557180, y: 0.967352, z: 3.685631} + - time: 2.733333 + value: {x: -4.561153, y: 0.968805, z: 3.687222} + - time: 2.766667 + value: {x: -4.564747, y: 0.970104, z: 3.688704} + - time: 2.800000 + value: {x: -4.567940, y: 0.971243, z: 3.690063} + - time: 2.833333 + value: {x: -4.570709, y: 0.972217, z: 3.691270} + - time: 2.866667 + value: {x: -4.573030, y: 0.973025, z: 3.692311} + - time: 2.900000 + value: {x: -4.574877, y: 0.973660, z: 3.693161} + - time: 2.933333 + value: {x: -4.576227, y: 0.974118, z: 3.693795} + - time: 2.966667 + value: {x: -4.577055, y: 0.974396, z: 3.694193} + - time: 3.000000 + value: {x: -4.577337, y: 0.974490, z: 3.694332} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.391086, y: 0.391086, z: 0.391086} + - time: 0.033333 + value: {x: 0.391425, y: 0.391425, z: 0.391425} + - time: 0.066667 + value: {x: 0.405901, y: 0.405901, z: 0.405901} + - time: 0.100000 + value: {x: 0.425891, y: 0.425891, z: 0.425891} + - time: 0.133333 + value: {x: 0.450249, y: 0.450249, z: 0.450249} + - time: 0.200000 + value: {x: 0.503794, y: 0.503794, z: 0.503794} + - time: 0.233333 + value: {x: 0.533696, y: 0.533696, z: 0.533696} + - time: 0.266667 + value: {x: 0.569198, y: 0.569198, z: 0.569198} + - time: 0.300000 + value: {x: 0.609298, y: 0.609298, z: 0.609298} + - time: 0.333333 + value: {x: 0.653205, y: 0.653205, z: 0.653205} + - time: 0.366667 + value: {x: 0.700113, y: 0.700113, z: 0.700113} + - time: 0.400000 + value: {x: 0.749374, y: 0.749374, z: 0.749374} + - time: 0.433333 + value: {x: 0.800771, y: 0.800771, z: 0.800771} + - time: 0.466667 + value: {x: 0.854269, y: 0.854269, z: 0.854269} + - time: 0.500000 + value: {x: 0.910042, y: 0.910042, z: 0.910042} + - time: 0.533333 + value: {x: 0.968580, y: 0.968580, z: 0.968580} + - time: 0.566667 + value: {x: 1.030096, y: 1.030096, z: 1.030096} + - time: 0.600000 + value: {x: 1.094549, y: 1.094549, z: 1.094549} + - time: 0.633333 + value: {x: 1.161921, y: 1.161921, z: 1.161921} + - time: 0.666667 + value: {x: 1.232144, y: 1.232144, z: 1.232144} + - time: 0.700000 + value: {x: 1.304931, y: 1.304931, z: 1.304931} + - time: 0.733333 + value: {x: 1.379617, y: 1.379617, z: 1.379617} + - time: 0.766667 + value: {x: 1.455405, y: 1.455405, z: 1.455405} + - time: 0.833333 + value: {x: 1.607614, y: 1.607614, z: 1.607614} + - time: 0.866667 + value: {x: 1.683397, y: 1.683397, z: 1.683397} + - time: 0.900000 + value: {x: 1.758908, y: 1.758908, z: 1.758908} + - time: 0.933333 + value: {x: 1.833939, y: 1.833939, z: 1.833939} + - time: 0.966667 + value: {x: 1.908270, y: 1.908270, z: 1.908270} + - time: 1.000000 + value: {x: 1.982111, y: 1.982111, z: 1.982111} + - time: 1.033333 + value: {x: 2.056400, y: 2.056400, z: 2.056400} + - time: 1.066667 + value: {x: 2.132306, y: 2.132306, z: 2.132306} + - time: 1.100000 + value: {x: 2.210643, y: 2.210643, z: 2.210643} + - time: 1.133333 + value: {x: 2.291439, y: 2.291439, z: 2.291439} + - time: 1.166667 + value: {x: 2.373947, y: 2.373947, z: 2.373947} + - time: 1.200000 + value: {x: 2.457258, y: 2.457258, z: 2.457258} + - time: 1.233333 + value: {x: 2.540808, y: 2.540808, z: 2.540808} + - time: 1.266667 + value: {x: 2.623879, y: 2.623879, z: 2.623879} + - time: 1.300000 + value: {x: 2.705452, y: 2.705452, z: 2.705452} + - time: 1.333333 + value: {x: 2.784760, y: 2.784760, z: 2.784760} + - time: 1.366667 + value: {x: 2.861610, y: 2.861610, z: 2.861610} + - time: 1.400000 + value: {x: 2.936006, y: 2.936006, z: 2.936006} + - time: 1.433333 + value: {x: 3.008233, y: 3.008233, z: 3.008233} + - time: 1.466667 + value: {x: 3.078748, y: 3.078748, z: 3.078748} + - time: 1.500000 + value: {x: 3.148061, y: 3.148061, z: 3.148061} + - time: 1.533333 + value: {x: 3.216516, y: 3.216516, z: 3.216516} + - time: 1.566667 + value: {x: 3.284040, y: 3.284040, z: 3.284040} + - time: 1.600000 + value: {x: 3.350566, y: 3.350566, z: 3.350566} + - time: 1.633333 + value: {x: 3.415605, y: 3.415605, z: 3.415605} + - time: 1.666667 + value: {x: 3.479225, y: 3.479225, z: 3.479225} + - time: 1.700000 + value: {x: 3.541003, y: 3.541003, z: 3.541003} + - time: 1.733333 + value: {x: 3.601482, y: 3.601482, z: 3.601482} + - time: 1.833333 + value: {x: 3.779181, y: 3.779181, z: 3.779181} + - time: 1.866667 + value: {x: 3.839432, y: 3.839432, z: 3.839432} + - time: 1.900000 + value: {x: 3.900850, y: 3.900850, z: 3.900850} + - time: 1.933333 + value: {x: 3.964133, y: 3.964133, z: 3.964133} + - time: 1.966667 + value: {x: 4.029546, y: 4.029546, z: 4.029546} + - time: 2.000000 + value: {x: 4.096068, y: 4.096068, z: 4.096068} + - time: 2.033333 + value: {x: 4.162107, y: 4.162107, z: 4.162107} + - time: 2.066667 + value: {x: 4.225913, y: 4.225913, z: 4.225913} + - time: 2.100000 + value: {x: 4.286359, y: 4.286359, z: 4.286359} + - time: 2.133333 + value: {x: 4.343176, y: 4.343176, z: 4.343176} + - time: 2.166667 + value: {x: 4.396844, y: 4.396844, z: 4.396844} + - time: 2.200000 + value: {x: 4.448039, y: 4.448039, z: 4.448039} + - time: 2.233333 + value: {x: 4.497395, y: 4.497395, z: 4.497395} + - time: 2.266667 + value: {x: 4.545427, y: 4.545427, z: 4.545427} + - time: 2.333333 + value: {x: 4.639761, y: 4.639761, z: 4.639761} + - time: 2.366667 + value: {x: 4.687616, y: 4.687616, z: 4.687616} + - time: 2.400000 + value: {x: 4.736441, y: 4.736441, z: 4.736441} + - time: 2.466667 + value: {x: 4.835649, y: 4.835649, z: 4.835649} + - time: 2.500000 + value: {x: 4.884889, y: 4.884889, z: 4.884889} + - time: 2.533333 + value: {x: 4.932396, y: 4.932396, z: 4.932396} + - time: 2.566667 + value: {x: 4.976973, y: 4.976973, z: 4.976973} + - time: 2.600000 + value: {x: 5.018431, y: 5.018431, z: 5.018431} + - time: 2.633333 + value: {x: 5.056801, y: 5.056801, z: 5.056801} + - time: 2.666667 + value: {x: 5.092497, y: 5.092497, z: 5.092497} + - time: 2.700000 + value: {x: 5.126190, y: 5.126190, z: 5.126190} + - time: 2.733333 + value: {x: 5.158599, y: 5.158599, z: 5.158599} + - time: 2.766667 + value: {x: 5.190252, y: 5.190252, z: 5.190252} + - time: 2.800000 + value: {x: 5.221221, y: 5.221221, z: 5.221221} + - time: 2.833333 + value: {x: 5.251029, y: 5.251029, z: 5.251029} + - time: 2.866667 + value: {x: 5.278859, y: 5.278859, z: 5.278859} + - time: 2.900000 + value: {x: 5.303503, y: 5.303503, z: 5.303503} + - time: 2.933333 + value: {x: 5.324395, y: 5.324395, z: 5.324395} + - time: 2.966667 + value: {x: 5.341682, y: 5.341682, z: 5.341682} + - time: 3.000000 + value: {x: 5.355857, y: 5.355857, z: 5.355857} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_13: + position: + - time: 0.000000 + value: {x: -0.163947, y: 2.511905, z: -0.023657} + - time: 0.033333 + value: {x: -0.163947, y: 2.511905, z: -0.023657} + - time: 0.066667 + value: {x: -0.016448, y: 1.915579, z: 0.033880} + - time: 0.100000 + value: {x: 0.061367, y: 1.296275, z: 0.110501} + - time: 0.133333 + value: {x: 0.144002, y: 0.768014, z: 0.266464} + - time: 0.166667 + value: {x: 0.285413, y: 0.439974, z: 0.558068} + - time: 0.200000 + value: {x: 0.408132, y: 0.309932, z: 0.886665} + - time: 0.233333 + value: {x: 0.458394, y: 0.265766, z: 1.129148} + - time: 0.266667 + value: {x: 0.481094, y: 0.252168, z: 1.274621} + - time: 0.300000 + value: {x: 0.492045, y: 0.245856, z: 1.398878} + - time: 0.333333 + value: {x: 0.489915, y: 0.243893, z: 1.520855} + - time: 0.366667 + value: {x: 0.473150, y: 0.245021, z: 1.639851} + - time: 0.400000 + value: {x: 0.451481, y: 0.248143, z: 1.757652} + - time: 0.433333 + value: {x: 0.431744, y: 0.252903, z: 1.875563} + - time: 0.466667 + value: {x: 0.416894, y: 0.258992, z: 1.994095} + - time: 0.500000 + value: {x: 0.407527, y: 0.265887, z: 2.113310} + - time: 0.533333 + value: {x: 0.402323, y: 0.273090, z: 2.232912} + - time: 0.566667 + value: {x: 0.398408, y: 0.280259, z: 2.352199} + - time: 0.600000 + value: {x: 0.393175, y: 0.287259, z: 2.470559} + - time: 0.633333 + value: {x: 0.385014, y: 0.294042, z: 2.587602} + - time: 0.666667 + value: {x: 0.371663, y: 0.300609, z: 2.702807} + - time: 0.700000 + value: {x: 0.351757, y: 0.306992, z: 2.815841} + - time: 0.733333 + value: {x: 0.324955, y: 0.313243, z: 2.926591} + - time: 0.766667 + value: {x: 0.289877, y: 0.319432, z: 3.034721} + - time: 0.800000 + value: {x: 0.247218, y: 0.325636, z: 3.140336} + - time: 0.833333 + value: {x: 0.200456, y: 0.331942, z: 3.244143} + - time: 0.866667 + value: {x: 0.152473, y: 0.338437, z: 3.346710} + - time: 0.900000 + value: {x: 0.105646, y: 0.345206, z: 3.448501} + - time: 0.933333 + value: {x: 0.061279, y: 0.352324, z: 3.549735} + - time: 0.966667 + value: {x: 0.020032, y: 0.359858, z: 3.650492} + - time: 1.000000 + value: {x: -0.017279, y: 0.367957, z: 3.750793} + - time: 1.033333 + value: {x: -0.050891, y: 0.376643, z: 3.850533} + - time: 1.066667 + value: {x: -0.081069, y: 0.385936, z: 3.949588} + - time: 1.100000 + value: {x: -0.108089, y: 0.395860, z: 4.047814} + - time: 1.133333 + value: {x: -0.132287, y: 0.406424, z: 4.145065} + - time: 1.166667 + value: {x: -0.153850, y: 0.417702, z: 4.241139} + - time: 1.200000 + value: {x: -0.173145, y: 0.429905, z: 4.335559} + - time: 1.233333 + value: {x: -0.191271, y: 0.442785, z: 4.428276} + - time: 1.266667 + value: {x: -0.208627, y: 0.456295, z: 4.519175} + - time: 1.300000 + value: {x: -0.225655, y: 0.470620, z: 4.607751} + - time: 1.333333 + value: {x: -0.242793, y: 0.485859, z: 4.693492} + - time: 1.366667 + value: {x: -0.260108, y: 0.501639, z: 4.776905} + - time: 1.400000 + value: {x: -0.277793, y: 0.518109, z: 4.857550} + - time: 1.433333 + value: {x: -0.296463, y: 0.535538, z: 4.934370} + - time: 1.466667 + value: {x: -0.315554, y: 0.553320, z: 5.008726} + - time: 1.500000 + value: {x: -0.335743, y: 0.571938, z: 5.079046} + - time: 1.533333 + value: {x: -0.356985, y: 0.591119, z: 5.145639} + - time: 1.566667 + value: {x: -0.378841, y: 0.610591, z: 5.209388} + - time: 1.600000 + value: {x: -0.403004, y: 0.630913, z: 5.267385} + - time: 1.633333 + value: {x: -0.427270, y: 0.651115, z: 5.323664} + - time: 1.666667 + value: {x: -0.455056, y: 0.672148, z: 5.372491} + - time: 1.700000 + value: {x: -0.482624, y: 0.692855, z: 5.420104} + - time: 1.733333 + value: {x: -0.513587, y: 0.713950, z: 5.460003} + - time: 1.766667 + value: {x: -0.543927, y: 0.734617, z: 5.499290} + - time: 1.800000 + value: {x: -0.577291, y: 0.755057, z: 5.529918} + - time: 1.833333 + value: {x: -0.609870, y: 0.775045, z: 5.560182} + - time: 1.866667 + value: {x: -0.643738, y: 0.793886, z: 5.583494} + - time: 1.900000 + value: {x: -0.677272, y: 0.812103, z: 5.604899} + - time: 1.933333 + value: {x: -0.710359, y: 0.829032, z: 5.623224} + - time: 1.966667 + value: {x: -0.743216, y: 0.844238, z: 5.636968} + - time: 2.000000 + value: {x: -0.775126, y: 0.859037, z: 5.650661} + - time: 2.033333 + value: {x: -0.806174, y: 0.871322, z: 5.660202} + - time: 2.066667 + value: {x: -0.836281, y: 0.882547, z: 5.668406} + - time: 2.100000 + value: {x: -0.865403, y: 0.893439, z: 5.676664} + - time: 2.133333 + value: {x: -0.893239, y: 0.901977, z: 5.682206} + - time: 2.166667 + value: {x: -0.920001, y: 0.909690, z: 5.687102} + - time: 2.200000 + value: {x: -0.945761, y: 0.917150, z: 5.692124} + - time: 2.233333 + value: {x: -0.970321, y: 0.923670, z: 5.696511} + - time: 2.266667 + value: {x: -0.993541, y: 0.928774, z: 5.699732} + - time: 2.300000 + value: {x: -1.015755, y: 0.933694, z: 5.703101} + - time: 2.333333 + value: {x: -1.036959, y: 0.938425, z: 5.706594} + - time: 2.366667 + value: {x: -1.057066, y: 0.942728, z: 5.709965} + - time: 2.400000 + value: {x: -1.075880, y: 0.946029, z: 5.712658} + - time: 2.433333 + value: {x: -1.093683, y: 0.949188, z: 5.715460} + - time: 2.466667 + value: {x: -1.110470, y: 0.952198, z: 5.718340} + - time: 2.500000 + value: {x: -1.126236, y: 0.955058, z: 5.721277} + - time: 2.533333 + value: {x: -1.140980, y: 0.957761, z: 5.724243} + - time: 2.566667 + value: {x: -1.154607, y: 0.960066, z: 5.727005} + - time: 2.600000 + value: {x: -1.167165, y: 0.962100, z: 5.729647} + - time: 2.633333 + value: {x: -1.178705, y: 0.963995, z: 5.732262} + - time: 2.666667 + value: {x: -1.189226, y: 0.965747, z: 5.734816} + - time: 2.700000 + value: {x: -1.198729, y: 0.967352, z: 5.737286} + - time: 2.733333 + value: {x: -1.207214, y: 0.968806, z: 5.739635} + - time: 2.766667 + value: {x: -1.214683, y: 0.970104, z: 5.741835} + - time: 2.800000 + value: {x: -1.221141, y: 0.971243, z: 5.743853} + - time: 2.833333 + value: {x: -1.226588, y: 0.972218, z: 5.745655} + - time: 2.866667 + value: {x: -1.231031, y: 0.973024, z: 5.747211} + - time: 2.900000 + value: {x: -1.234475, y: 0.973659, z: 5.748484} + - time: 2.933333 + value: {x: -1.236925, y: 0.974118, z: 5.749437} + - time: 2.966667 + value: {x: -1.238390, y: 0.974396, z: 5.750036} + - time: 3.000000 + value: {x: -1.238877, y: 0.974490, z: 5.750244} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.321508, y: 0.321508, z: 0.321508} + - time: 0.033333 + value: {x: 0.321860, y: 0.321860, z: 0.321860} + - time: 0.066667 + value: {x: 0.339978, y: 0.339978, z: 0.339978} + - time: 0.100000 + value: {x: 0.365481, y: 0.365481, z: 0.365481} + - time: 0.133333 + value: {x: 0.396942, y: 0.396942, z: 0.396942} + - time: 0.166667 + value: {x: 0.433073, y: 0.433073, z: 0.433073} + - time: 0.200000 + value: {x: 0.471632, y: 0.471632, z: 0.471632} + - time: 0.233333 + value: {x: 0.513893, y: 0.513893, z: 0.513893} + - time: 0.266667 + value: {x: 0.561234, y: 0.561234, z: 0.561234} + - time: 0.300000 + value: {x: 0.614187, y: 0.614187, z: 0.614187} + - time: 0.333333 + value: {x: 0.672853, y: 0.672853, z: 0.672853} + - time: 0.366667 + value: {x: 0.736939, y: 0.736939, z: 0.736939} + - time: 0.400000 + value: {x: 0.805535, y: 0.805535, z: 0.805535} + - time: 0.433333 + value: {x: 0.877594, y: 0.877594, z: 0.877594} + - time: 0.466667 + value: {x: 0.952481, y: 0.952481, z: 0.952481} + - time: 0.500000 + value: {x: 1.030198, y: 1.030198, z: 1.030198} + - time: 0.533333 + value: {x: 1.110841, y: 1.110841, z: 1.110841} + - time: 0.566667 + value: {x: 1.194499, y: 1.194499, z: 1.194499} + - time: 0.600000 + value: {x: 1.281216, y: 1.281216, z: 1.281216} + - time: 0.633333 + value: {x: 1.370858, y: 1.370858, z: 1.370858} + - time: 0.666667 + value: {x: 1.463130, y: 1.463130, z: 1.463130} + - time: 0.700000 + value: {x: 1.557729, y: 1.557729, z: 1.557729} + - time: 0.733333 + value: {x: 1.654089, y: 1.654089, z: 1.654089} + - time: 0.766667 + value: {x: 1.751097, y: 1.751097, z: 1.751097} + - time: 0.800000 + value: {x: 1.847465, y: 1.847465, z: 1.847465} + - time: 0.833333 + value: {x: 1.942068, y: 1.942068, z: 1.942068} + - time: 0.866667 + value: {x: 2.034152, y: 2.034152, z: 2.034152} + - time: 0.900000 + value: {x: 2.123397, y: 2.123397, z: 2.123397} + - time: 0.933333 + value: {x: 2.210056, y: 2.210056, z: 2.210056} + - time: 0.966667 + value: {x: 2.294949, y: 2.294949, z: 2.294949} + - time: 1.000000 + value: {x: 2.379590, y: 2.379590, z: 2.379590} + - time: 1.033333 + value: {x: 2.464609, y: 2.464609, z: 2.464609} + - time: 1.066667 + value: {x: 2.549014, y: 2.549014, z: 2.549014} + - time: 1.100000 + value: {x: 2.631220, y: 2.631220, z: 2.631220} + - time: 1.133333 + value: {x: 2.710076, y: 2.710076, z: 2.710076} + - time: 1.166667 + value: {x: 2.785015, y: 2.785015, z: 2.785015} + - time: 1.200000 + value: {x: 2.856262, y: 2.856262, z: 2.856262} + - time: 1.233333 + value: {x: 2.924586, y: 2.924586, z: 2.924586} + - time: 1.266667 + value: {x: 2.990640, y: 2.990640, z: 2.990640} + - time: 1.300000 + value: {x: 3.055128, y: 3.055128, z: 3.055128} + - time: 1.333333 + value: {x: 3.118642, y: 3.118642, z: 3.118642} + - time: 1.366667 + value: {x: 3.181175, y: 3.181175, z: 3.181175} + - time: 1.400000 + value: {x: 3.241646, y: 3.241646, z: 3.241646} + - time: 1.433333 + value: {x: 3.298416, y: 3.298416, z: 3.298416} + - time: 1.466667 + value: {x: 3.350796, y: 3.350796, z: 3.350796} + - time: 1.500000 + value: {x: 3.398040, y: 3.398040, z: 3.398040} + - time: 1.533333 + value: {x: 3.439949, y: 3.439949, z: 3.439949} + - time: 1.566667 + value: {x: 3.476272, y: 3.476272, z: 3.476272} + - time: 1.600000 + value: {x: 3.506963, y: 3.506963, z: 3.506963} + - time: 1.633333 + value: {x: 3.533540, y: 3.533540, z: 3.533540} + - time: 1.666667 + value: {x: 3.556815, y: 3.556815, z: 3.556815} + - time: 1.700000 + value: {x: 3.578316, y: 3.578316, z: 3.578316} + - time: 1.733333 + value: {x: 3.598619, y: 3.598619, z: 3.598619} + - time: 1.766667 + value: {x: 3.618068, y: 3.618068, z: 3.618068} + - time: 1.800000 + value: {x: 3.636560, y: 3.636560, z: 3.636560} + - time: 1.833333 + value: {x: 3.653661, y: 3.653661, z: 3.653661} + - time: 1.866667 + value: {x: 3.669349, y: 3.669349, z: 3.669349} + - time: 1.900000 + value: {x: 3.683585, y: 3.683585, z: 3.683585} + - time: 1.933333 + value: {x: 3.696829, y: 3.696829, z: 3.696829} + - time: 1.966667 + value: {x: 3.709605, y: 3.709605, z: 3.709605} + - time: 2.000000 + value: {x: 3.722109, y: 3.722109, z: 3.722109} + - time: 2.066667 + value: {x: 3.747634, y: 3.747634, z: 3.747634} + - time: 2.100000 + value: {x: 3.759601, y: 3.759601, z: 3.759601} + - time: 2.133333 + value: {x: 3.770657, y: 3.770657, z: 3.770657} + - time: 2.166667 + value: {x: 3.780087, y: 3.780087, z: 3.780087} + - time: 2.200000 + value: {x: 3.787594, y: 3.787594, z: 3.787594} + - time: 2.233333 + value: {x: 3.793520, y: 3.793520, z: 3.793520} + - time: 2.266667 + value: {x: 3.798494, y: 3.798494, z: 3.798494} + - time: 2.333333 + value: {x: 3.807937, y: 3.807937, z: 3.807937} + - time: 2.366667 + value: {x: 3.813199, y: 3.813199, z: 3.813199} + - time: 2.400000 + value: {x: 3.818751, y: 3.818751, z: 3.818751} + - time: 2.433333 + value: {x: 3.824910, y: 3.824910, z: 3.824910} + - time: 2.466667 + value: {x: 3.832593, y: 3.832593, z: 3.832593} + - time: 2.500000 + value: {x: 3.842355, y: 3.842355, z: 3.842355} + - time: 2.533333 + value: {x: 3.852510, y: 3.852510, z: 3.852510} + - time: 2.566667 + value: {x: 3.860880, y: 3.860880, z: 3.860880} + - time: 2.600000 + value: {x: 3.866858, y: 3.866858, z: 3.866858} + - time: 2.633333 + value: {x: 3.869956, y: 3.869956, z: 3.869956} + - time: 2.666667 + value: {x: 3.870052, y: 3.870052, z: 3.870052} + - time: 2.700000 + value: {x: 3.867069, y: 3.867069, z: 3.867069} + - time: 2.733333 + value: {x: 3.861433, y: 3.861433, z: 3.861433} + - time: 2.766667 + value: {x: 3.854634, y: 3.854634, z: 3.854634} + - time: 2.800000 + value: {x: 3.849095, y: 3.849095, z: 3.849095} + - time: 2.833333 + value: {x: 3.847179, y: 3.847179, z: 3.847179} + - time: 2.866667 + value: {x: 3.850437, y: 3.850437, z: 3.850437} + - time: 2.900000 + value: {x: 3.859258, y: 3.859258, z: 3.859258} + - time: 2.933333 + value: {x: 3.872908, y: 3.872908, z: 3.872908} + - time: 2.966667 + value: {x: 3.889719, y: 3.889719, z: 3.889719} + - time: 3.000000 + value: {x: 3.907544, y: 3.907544, z: 3.907544} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_14: + position: + - time: 0.000000 + value: {x: -0.144832, y: 2.511905, z: 0.085741} + - time: 0.033333 + value: {x: -0.144832, y: 2.511905, z: 0.085741} + - time: 0.066667 + value: {x: 0.002737, y: 1.915579, z: 0.039580} + - time: 0.100000 + value: {x: 0.102428, y: 1.296275, z: 0.054861} + - time: 0.133333 + value: {x: 0.243086, y: 0.768014, z: 0.135206} + - time: 0.166667 + value: {x: 0.504825, y: 0.439974, z: 0.289152} + - time: 0.200000 + value: {x: 0.804853, y: 0.309932, z: 0.468733} + - time: 0.233333 + value: {x: 1.011740, y: 0.265766, z: 0.618084} + - time: 0.266667 + value: {x: 1.129708, y: 0.252168, z: 0.712540} + - time: 0.300000 + value: {x: 1.223888, y: 0.245856, z: 0.798528} + - time: 0.333333 + value: {x: 1.309831, y: 0.243893, z: 0.889258} + - time: 0.366667 + value: {x: 1.387604, y: 0.245021, z: 0.984298} + - time: 0.400000 + value: {x: 1.460747, y: 0.248143, z: 1.081519} + - time: 0.433333 + value: {x: 1.532756, y: 0.252903, z: 1.178975} + - time: 0.466667 + value: {x: 1.605419, y: 0.258992, z: 1.275624} + - time: 0.500000 + value: {x: 1.680605, y: 0.265887, z: 1.370456} + - time: 0.533333 + value: {x: 1.758050, y: 0.273091, z: 1.463588} + - time: 0.566667 + value: {x: 1.835051, y: 0.280259, z: 1.556296} + - time: 0.600000 + value: {x: 1.909237, y: 0.287259, z: 1.649717} + - time: 0.633333 + value: {x: 1.979329, y: 0.294042, z: 1.744450} + - time: 0.666667 + value: {x: 2.045295, y: 0.300609, z: 1.840474} + - time: 0.700000 + value: {x: 2.107114, y: 0.306992, z: 1.937760} + - time: 0.733333 + value: {x: 2.164389, y: 0.313243, z: 2.036463} + - time: 0.766667 + value: {x: 2.216872, y: 0.319432, z: 2.136667} + - time: 0.800000 + value: {x: 2.264993, y: 0.325636, z: 2.238108} + - time: 0.833333 + value: {x: 2.309974, y: 0.331942, z: 2.340118} + - time: 0.866667 + value: {x: 2.353305, y: 0.338437, z: 2.441892} + - time: 0.900000 + value: {x: 2.396157, y: 0.345206, z: 2.542784} + - time: 0.933333 + value: {x: 2.439105, y: 0.352324, z: 2.642437} + - time: 0.966667 + value: {x: 2.482266, y: 0.359858, z: 2.740721} + - time: 1.000000 + value: {x: 2.525527, y: 0.367957, z: 2.837526} + - time: 1.033333 + value: {x: 2.568566, y: 0.376643, z: 2.932955} + - time: 1.066667 + value: {x: 2.611464, y: 0.385936, z: 3.026891} + - time: 1.100000 + value: {x: 2.654319, y: 0.395860, z: 3.119195} + - time: 1.133333 + value: {x: 2.697209, y: 0.406424, z: 3.209748} + - time: 1.166667 + value: {x: 2.740220, y: 0.417702, z: 3.298328} + - time: 1.200000 + value: {x: 2.783065, y: 0.429905, z: 3.384647} + - time: 1.233333 + value: {x: 2.825206, y: 0.442784, z: 3.469180} + - time: 1.266667 + value: {x: 2.866431, y: 0.456295, z: 3.552001} + - time: 1.300000 + value: {x: 2.906236, y: 0.470620, z: 3.632917} + - time: 1.333333 + value: {x: 2.944035, y: 0.485859, z: 3.711767} + - time: 1.366667 + value: {x: 2.980030, y: 0.501639, z: 3.789021} + - time: 1.400000 + value: {x: 3.013656, y: 0.518109, z: 3.864523} + - time: 1.433333 + value: {x: 3.043367, y: 0.535538, z: 3.938042} + - time: 1.466667 + value: {x: 3.070719, y: 0.553320, z: 4.010154} + - time: 1.500000 + value: {x: 3.093546, y: 0.571938, z: 4.080385} + - time: 1.533333 + value: {x: 3.112155, y: 0.591119, z: 4.148907} + - time: 1.566667 + value: {x: 3.127816, y: 0.610591, z: 4.215949} + - time: 1.600000 + value: {x: 3.137322, y: 0.630913, z: 4.280334} + - time: 1.633333 + value: {x: 3.145681, y: 0.651115, z: 4.343443} + - time: 1.666667 + value: {x: 3.146747, y: 0.672148, z: 4.402903} + - time: 1.700000 + value: {x: 3.147434, y: 0.692854, z: 4.461170} + - time: 1.733333 + value: {x: 3.141254, y: 0.713950, z: 4.515254} + - time: 1.766667 + value: {x: 3.135355, y: 0.734617, z: 4.568382} + - time: 1.800000 + value: {x: 3.122308, y: 0.755057, z: 4.616344} + - time: 1.833333 + value: {x: 3.109809, y: 0.775045, z: 4.663449} + - time: 1.866667 + value: {x: 3.092458, y: 0.793886, z: 4.705693} + - time: 1.900000 + value: {x: 3.074415, y: 0.812103, z: 4.746120} + - time: 1.933333 + value: {x: 3.055066, y: 0.829032, z: 4.783725} + - time: 1.966667 + value: {x: 3.033367, y: 0.844237, z: 4.817450} + - time: 2.000000 + value: {x: 3.012520, y: 0.859037, z: 4.850463} + - time: 2.033333 + value: {x: 2.990018, y: 0.871322, z: 4.879565} + - time: 2.066667 + value: {x: 2.967597, y: 0.882546, z: 4.906936} + - time: 2.100000 + value: {x: 2.946124, y: 0.893439, z: 4.933662} + - time: 2.133333 + value: {x: 2.924100, y: 0.901977, z: 4.957386} + - time: 2.166667 + value: {x: 2.902657, y: 0.909690, z: 4.979860} + - time: 2.200000 + value: {x: 2.882219, y: 0.917150, z: 5.001726} + - time: 2.233333 + value: {x: 2.862415, y: 0.923670, z: 5.022295} + - time: 2.266667 + value: {x: 2.842985, y: 0.928774, z: 5.041085} + - time: 2.300000 + value: {x: 2.824586, y: 0.933694, z: 5.059280} + - time: 2.333333 + value: {x: 2.807207, y: 0.938425, z: 5.076858} + - time: 2.366667 + value: {x: 2.790746, y: 0.942728, z: 5.093581} + - time: 2.400000 + value: {x: 2.774969, y: 0.946029, z: 5.108913} + - time: 2.433333 + value: {x: 2.760207, y: 0.949188, z: 5.123614} + - time: 2.466667 + value: {x: 2.746446, y: 0.952198, z: 5.137657} + - time: 2.500000 + value: {x: 2.733674, y: 0.955057, z: 5.151024} + - time: 2.533333 + value: {x: 2.721877, y: 0.957761, z: 5.163690} + - time: 2.566667 + value: {x: 2.710964, y: 0.960066, z: 5.175423} + - time: 2.600000 + value: {x: 2.700959, y: 0.962100, z: 5.186316} + - time: 2.633333 + value: {x: 2.691890, y: 0.963995, z: 5.196466} + - time: 2.666667 + value: {x: 2.683735, y: 0.965747, z: 5.205853} + - time: 2.700000 + value: {x: 2.676476, y: 0.967352, z: 5.214453} + - time: 2.733333 + value: {x: 2.670092, y: 0.968806, z: 5.222243} + - time: 2.766667 + value: {x: 2.664557, y: 0.970104, z: 5.229198} + - time: 2.800000 + value: {x: 2.659850, y: 0.971243, z: 5.235303} + - time: 2.833333 + value: {x: 2.655945, y: 0.972217, z: 5.240527} + - time: 2.866667 + value: {x: 2.652818, y: 0.973024, z: 5.244855} + - time: 2.900000 + value: {x: 2.650436, y: 0.973660, z: 5.248257} + - time: 2.933333 + value: {x: 2.648774, y: 0.974118, z: 5.250715} + - time: 2.966667 + value: {x: 2.647800, y: 0.974396, z: 5.252209} + - time: 3.000000 + value: {x: 2.647482, y: 0.974490, z: 5.252711} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.213468, y: 0.213468, z: 0.213468} + - time: 0.033333 + value: {x: 0.213744, y: 0.213744, z: 0.213744} + - time: 0.066667 + value: {x: 0.232809, y: 0.232809, z: 0.232809} + - time: 0.100000 + value: {x: 0.260381, y: 0.260381, z: 0.260381} + - time: 0.133333 + value: {x: 0.294310, y: 0.294310, z: 0.294310} + - time: 0.166667 + value: {x: 0.333681, y: 0.333681, z: 0.333681} + - time: 0.200000 + value: {x: 0.376143, y: 0.376143, z: 0.376143} + - time: 0.233333 + value: {x: 0.422715, y: 0.422715, z: 0.422715} + - time: 0.266667 + value: {x: 0.474480, y: 0.474480, z: 0.474480} + - time: 0.300000 + value: {x: 0.531856, y: 0.531856, z: 0.531856} + - time: 0.333333 + value: {x: 0.594778, y: 0.594778, z: 0.594778} + - time: 0.366667 + value: {x: 0.662727, y: 0.662727, z: 0.662727} + - time: 0.400000 + value: {x: 0.734707, y: 0.734707, z: 0.734707} + - time: 0.433333 + value: {x: 0.809931, y: 0.809931, z: 0.809931} + - time: 0.466667 + value: {x: 0.888240, y: 0.888240, z: 0.888240} + - time: 0.500000 + value: {x: 0.969870, y: 0.969870, z: 0.969870} + - time: 0.533333 + value: {x: 1.055153, y: 1.055153, z: 1.055153} + - time: 0.566667 + value: {x: 1.144306, y: 1.144306, z: 1.144306} + - time: 0.600000 + value: {x: 1.236966, y: 1.236966, z: 1.236966} + - time: 0.633333 + value: {x: 1.332115, y: 1.332115, z: 1.332115} + - time: 0.666667 + value: {x: 1.428548, y: 1.428548, z: 1.428548} + - time: 0.700000 + value: {x: 1.525495, y: 1.525495, z: 1.525495} + - time: 0.733333 + value: {x: 1.622833, y: 1.622833, z: 1.622833} + - time: 0.766667 + value: {x: 1.720699, y: 1.720699, z: 1.720699} + - time: 0.800000 + value: {x: 1.819150, y: 1.819150, z: 1.819150} + - time: 0.833333 + value: {x: 1.917859, y: 1.917859, z: 1.917859} + - time: 0.866667 + value: {x: 2.016147, y: 2.016147, z: 2.016147} + - time: 0.900000 + value: {x: 2.113548, y: 2.113548, z: 2.113548} + - time: 0.933333 + value: {x: 2.209848, y: 2.209848, z: 2.209848} + - time: 0.966667 + value: {x: 2.304730, y: 2.304730, z: 2.304730} + - time: 1.000000 + value: {x: 2.397573, y: 2.397573, z: 2.397573} + - time: 1.033333 + value: {x: 2.487756, y: 2.487756, z: 2.487756} + - time: 1.066667 + value: {x: 2.574660, y: 2.574660, z: 2.574660} + - time: 1.100000 + value: {x: 2.657928, y: 2.657928, z: 2.657928} + - time: 1.133333 + value: {x: 2.737480, y: 2.737480, z: 2.737480} + - time: 1.166667 + value: {x: 2.813453, y: 2.813453, z: 2.813453} + - time: 1.200000 + value: {x: 2.886424, y: 2.886424, z: 2.886424} + - time: 1.233333 + value: {x: 2.956372, y: 2.956372, z: 2.956372} + - time: 1.266667 + value: {x: 3.022938, y: 3.022938, z: 3.022938} + - time: 1.300000 + value: {x: 3.085530, y: 3.085530, z: 3.085530} + - time: 1.333333 + value: {x: 3.143322, y: 3.143322, z: 3.143322} + - time: 1.366667 + value: {x: 3.195405, y: 3.195405, z: 3.195405} + - time: 1.400000 + value: {x: 3.240837, y: 3.240837, z: 3.240837} + - time: 1.433333 + value: {x: 3.279102, y: 3.279102, z: 3.279102} + - time: 1.466667 + value: {x: 3.310436, y: 3.310436, z: 3.310436} + - time: 1.500000 + value: {x: 3.336165, y: 3.336165, z: 3.336165} + - time: 1.533333 + value: {x: 3.357739, y: 3.357739, z: 3.357739} + - time: 1.566667 + value: {x: 3.376767, y: 3.376767, z: 3.376767} + - time: 1.600000 + value: {x: 3.394312, y: 3.394312, z: 3.394312} + - time: 1.633333 + value: {x: 3.410785, y: 3.410785, z: 3.410785} + - time: 1.666667 + value: {x: 3.425554, y: 3.425554, z: 3.425554} + - time: 1.700000 + value: {x: 3.437658, y: 3.437658, z: 3.437658} + - time: 1.733333 + value: {x: 3.445907, y: 3.445907, z: 3.445907} + - time: 1.766667 + value: {x: 3.449676, y: 3.449676, z: 3.449676} + - time: 1.800000 + value: {x: 3.449464, y: 3.449464, z: 3.449464} + - time: 1.833333 + value: {x: 3.446070, y: 3.446070, z: 3.446070} + - time: 1.866667 + value: {x: 3.441102, y: 3.441102, z: 3.441102} + - time: 1.900000 + value: {x: 3.435136, y: 3.435136, z: 3.435136} + - time: 1.933333 + value: {x: 3.428577, y: 3.428577, z: 3.428577} + - time: 1.966667 + value: {x: 3.421613, y: 3.421613, z: 3.421613} + - time: 2.033333 + value: {x: 3.406301, y: 3.406301, z: 3.406301} + - time: 2.066667 + value: {x: 3.398141, y: 3.398141, z: 3.398141} + - time: 2.100000 + value: {x: 3.388843, y: 3.388843, z: 3.388843} + - time: 2.133333 + value: {x: 3.377696, y: 3.377696, z: 3.377696} + - time: 2.166667 + value: {x: 3.363967, y: 3.363967, z: 3.363967} + - time: 2.200000 + value: {x: 3.347333, y: 3.347333, z: 3.347333} + - time: 2.233333 + value: {x: 3.327835, y: 3.327835, z: 3.327835} + - time: 2.266667 + value: {x: 3.305989, y: 3.305989, z: 3.305989} + - time: 2.300000 + value: {x: 3.282605, y: 3.282605, z: 3.282605} + - time: 2.366667 + value: {x: 3.234493, y: 3.234493, z: 3.234493} + - time: 2.400000 + value: {x: 3.211782, y: 3.211782, z: 3.211782} + - time: 2.433333 + value: {x: 3.191050, y: 3.191050, z: 3.191050} + - time: 2.466667 + value: {x: 3.172920, y: 3.172920, z: 3.172920} + - time: 2.500000 + value: {x: 3.157897, y: 3.157897, z: 3.157897} + - time: 2.533333 + value: {x: 3.144794, y: 3.144794, z: 3.144794} + - time: 2.566667 + value: {x: 3.132743, y: 3.132743, z: 3.132743} + - time: 2.600000 + value: {x: 3.122045, y: 3.122045, z: 3.122045} + - time: 2.633333 + value: {x: 3.112489, y: 3.112489, z: 3.112489} + - time: 2.666667 + value: {x: 3.103707, y: 3.103707, z: 3.103707} + - time: 2.700000 + value: {x: 3.095372, y: 3.095372, z: 3.095372} + - time: 2.733333 + value: {x: 3.087308, y: 3.087308, z: 3.087308} + - time: 2.766667 + value: {x: 3.079620, y: 3.079620, z: 3.079620} + - time: 2.800000 + value: {x: 3.072662, y: 3.072662, z: 3.072662} + - time: 2.833333 + value: {x: 3.066884, y: 3.066884, z: 3.066884} + - time: 2.866667 + value: {x: 3.062824, y: 3.062824, z: 3.062824} + - time: 2.900000 + value: {x: 3.060922, y: 3.060922, z: 3.060922} + - time: 2.933333 + value: {x: 3.061531, y: 3.061531, z: 3.061531} + - time: 2.966667 + value: {x: 3.064945, y: 3.064945, z: 3.064945} + - time: 3.000000 + value: {x: 3.071558, y: 3.071558, z: 3.071558} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_15: + position: + - time: 0.000000 + value: {x: -0.059178, y: 2.511905, z: 0.158350} + - time: 0.033333 + value: {x: -0.059178, y: 2.511905, z: 0.158350} + - time: 0.066667 + value: {x: 0.022757, y: 1.915579, z: 0.038409} + - time: 0.100000 + value: {x: 0.099176, y: 1.296275, z: 0.011428} + - time: 0.133333 + value: {x: 0.229107, y: 0.768014, z: 0.051744} + - time: 0.166667 + value: {x: 0.465467, y: 0.439974, z: 0.148297} + - time: 0.200000 + value: {x: 0.744492, y: 0.309932, z: 0.247874} + - time: 0.233333 + value: {x: 0.960424, y: 0.265766, z: 0.319857} + - time: 0.266667 + value: {x: 1.091651, y: 0.252168, z: 0.363147} + - time: 0.300000 + value: {x: 1.205866, y: 0.245856, z: 0.399751} + - time: 0.333333 + value: {x: 1.320721, y: 0.243893, z: 0.436242} + - time: 0.366667 + value: {x: 1.435438, y: 0.245021, z: 0.473470} + - time: 0.400000 + value: {x: 1.550106, y: 0.248143, z: 0.510488} + - time: 0.433333 + value: {x: 1.664112, y: 0.252903, z: 0.548240} + - time: 0.466667 + value: {x: 1.777070, y: 0.258992, z: 0.587270} + - time: 0.500000 + value: {x: 1.888875, y: 0.265887, z: 0.627654} + - time: 0.533333 + value: {x: 1.999909, y: 0.273090, z: 0.668523} + - time: 0.566667 + value: {x: 2.110315, y: 0.280259, z: 0.709374} + - time: 0.600000 + value: {x: 2.220404, y: 0.287259, z: 0.749405} + - time: 0.633333 + value: {x: 2.330447, y: 0.294042, z: 0.787921} + - time: 0.666667 + value: {x: 2.440398, y: 0.300609, z: 0.824945} + - time: 0.700000 + value: {x: 2.549849, y: 0.306992, z: 0.861287} + - time: 0.733333 + value: {x: 2.658281, y: 0.313243, z: 0.898003} + - time: 0.766667 + value: {x: 2.765495, y: 0.319432, z: 0.935436} + - time: 0.800000 + value: {x: 2.871659, y: 0.325636, z: 0.973110} + - time: 0.833333 + value: {x: 2.976909, y: 0.331942, z: 1.010620} + - time: 0.866667 + value: {x: 3.081226, y: 0.338437, z: 1.047878} + - time: 0.900000 + value: {x: 3.184515, y: 0.345206, z: 1.084976} + - time: 0.933333 + value: {x: 3.286565, y: 0.352324, z: 1.122227} + - time: 0.966667 + value: {x: 3.387162, y: 0.359858, z: 1.159956} + - time: 1.000000 + value: {x: 3.486243, y: 0.367957, z: 1.197937} + - time: 1.033333 + value: {x: 3.583794, y: 0.376643, z: 1.236072} + - time: 1.066667 + value: {x: 3.679832, y: 0.385936, z: 1.274160} + - time: 1.100000 + value: {x: 3.774262, y: 0.395860, z: 1.312219} + - time: 1.133333 + value: {x: 3.866941, y: 0.406424, z: 1.350384} + - time: 1.166667 + value: {x: 3.957561, y: 0.417702, z: 1.388958} + - time: 1.200000 + value: {x: 4.045566, y: 0.429906, z: 1.428226} + - time: 1.233333 + value: {x: 4.131400, y: 0.442785, z: 1.467648} + - time: 1.266667 + value: {x: 4.215100, y: 0.456295, z: 1.507079} + - time: 1.300000 + value: {x: 4.296259, y: 0.470620, z: 1.546451} + - time: 1.333333 + value: {x: 4.374458, y: 0.485859, z: 1.585692} + - time: 1.366667 + value: {x: 4.450294, y: 0.501639, z: 1.624731} + - time: 1.400000 + value: {x: 4.523306, y: 0.518109, z: 1.663627} + - time: 1.433333 + value: {x: 4.592579, y: 0.535538, z: 1.702226} + - time: 1.466667 + value: {x: 4.659560, y: 0.553320, z: 1.740261} + - time: 1.500000 + value: {x: 4.722853, y: 0.571938, z: 1.777441} + - time: 1.533333 + value: {x: 4.782877, y: 0.591119, z: 1.813546} + - time: 1.566667 + value: {x: 4.840405, y: 0.610591, z: 1.848740} + - time: 1.600000 + value: {x: 4.892992, y: 0.630913, z: 1.882389} + - time: 1.633333 + value: {x: 4.944087, y: 0.651115, z: 1.915320} + - time: 1.666667 + value: {x: 4.988881, y: 0.672148, z: 1.946319} + - time: 1.700000 + value: {x: 5.032602, y: 0.692854, z: 1.976690} + - time: 1.733333 + value: {x: 5.069717, y: 0.713950, z: 2.005108} + - time: 1.766667 + value: {x: 5.106271, y: 0.734617, z: 2.033002} + - time: 1.800000 + value: {x: 5.135217, y: 0.755057, z: 2.058725} + - time: 1.833333 + value: {x: 5.163814, y: 0.775045, z: 2.083958} + - time: 1.866667 + value: {x: 5.186144, y: 0.793886, z: 2.107211} + - time: 1.900000 + value: {x: 5.206739, y: 0.812103, z: 2.129611} + - time: 1.933333 + value: {x: 5.224501, y: 0.829032, z: 2.150738} + - time: 1.966667 + value: {x: 5.238062, y: 0.844238, z: 2.170168} + - time: 2.000000 + value: {x: 5.251551, y: 0.859037, z: 2.189150} + - time: 2.033333 + value: {x: 5.261225, y: 0.871322, z: 2.206285} + - time: 2.066667 + value: {x: 5.269648, y: 0.882547, z: 2.222522} + - time: 2.100000 + value: {x: 5.278099, y: 0.893439, z: 2.238336} + - time: 2.133333 + value: {x: 5.284031, y: 0.901977, z: 2.252609} + - time: 2.166667 + value: {x: 5.289345, y: 0.909690, z: 2.266172} + - time: 2.200000 + value: {x: 5.294744, y: 0.917150, z: 2.279327} + - time: 2.233333 + value: {x: 5.299530, y: 0.923670, z: 2.291719} + - time: 2.266667 + value: {x: 5.303213, y: 0.928774, z: 2.303098} + - time: 2.300000 + value: {x: 5.307005, y: 0.933694, z: 2.314078} + - time: 2.333333 + value: {x: 5.310877, y: 0.938425, z: 2.324649} + - time: 2.366667 + value: {x: 5.314608, y: 0.942728, z: 2.334686} + - time: 2.400000 + value: {x: 5.317682, y: 0.946029, z: 2.343904} + - time: 2.433333 + value: {x: 5.320826, y: 0.949188, z: 2.352710} + - time: 2.466667 + value: {x: 5.324011, y: 0.952199, z: 2.361092} + - time: 2.500000 + value: {x: 5.327215, y: 0.955057, z: 2.369039} + - time: 2.533333 + value: {x: 5.330416, y: 0.957761, z: 2.376542} + - time: 2.566667 + value: {x: 5.333395, y: 0.960066, z: 2.383482} + - time: 2.600000 + value: {x: 5.336229, y: 0.962100, z: 2.389908} + - time: 2.633333 + value: {x: 5.339008, y: 0.963995, z: 2.395874} + - time: 2.666667 + value: {x: 5.341700, y: 0.965747, z: 2.401368} + - time: 2.700000 + value: {x: 5.344276, y: 0.967352, z: 2.406384} + - time: 2.733333 + value: {x: 5.346716, y: 0.968806, z: 2.410911} + - time: 2.766667 + value: {x: 5.348984, y: 0.970104, z: 2.414939} + - time: 2.800000 + value: {x: 5.351049, y: 0.971243, z: 2.418458} + - time: 2.833333 + value: {x: 5.352888, y: 0.972217, z: 2.421460} + - time: 2.866667 + value: {x: 5.354465, y: 0.973024, z: 2.423937} + - time: 2.900000 + value: {x: 5.355749, y: 0.973660, z: 2.425878} + - time: 2.933333 + value: {x: 5.356707, y: 0.974118, z: 2.427275} + - time: 2.966667 + value: {x: 5.357307, y: 0.974396, z: 2.428120} + - time: 3.000000 + value: {x: 5.357515, y: 0.974490, z: 2.428403} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.384053, y: 0.384053, z: 0.384053} + - time: 0.033333 + value: {x: 0.384141, y: 0.384141, z: 0.384141} + - time: 0.066667 + value: {x: 0.407066, y: 0.407066, z: 0.407066} + - time: 0.100000 + value: {x: 0.436932, y: 0.436932, z: 0.436932} + - time: 0.133333 + value: {x: 0.471211, y: 0.471211, z: 0.471211} + - time: 0.166667 + value: {x: 0.508925, y: 0.508925, z: 0.508925} + - time: 0.200000 + value: {x: 0.548340, y: 0.548340, z: 0.548340} + - time: 0.233333 + value: {x: 0.590803, y: 0.590803, z: 0.590803} + - time: 0.266667 + value: {x: 0.636717, y: 0.636717, z: 0.636717} + - time: 0.300000 + value: {x: 0.686359, y: 0.686359, z: 0.686359} + - time: 0.333333 + value: {x: 0.739765, y: 0.739765, z: 0.739765} + - time: 0.366667 + value: {x: 0.797244, y: 0.797244, z: 0.797244} + - time: 0.400000 + value: {x: 0.858999, y: 0.858999, z: 0.858999} + - time: 0.433333 + value: {x: 0.924897, y: 0.924897, z: 0.924897} + - time: 0.466667 + value: {x: 0.994261, y: 0.994261, z: 0.994261} + - time: 0.500000 + value: {x: 1.065881, y: 1.065881, z: 1.065881} + - time: 0.533333 + value: {x: 1.138538, y: 1.138538, z: 1.138538} + - time: 0.566667 + value: {x: 1.211693, y: 1.211693, z: 1.211693} + - time: 0.600000 + value: {x: 1.285595, y: 1.285595, z: 1.285595} + - time: 0.633333 + value: {x: 1.360843, y: 1.360843, z: 1.360843} + - time: 0.666667 + value: {x: 1.438156, y: 1.438156, z: 1.438156} + - time: 0.700000 + value: {x: 1.518066, y: 1.518066, z: 1.518066} + - time: 0.733333 + value: {x: 1.600443, y: 1.600443, z: 1.600443} + - time: 0.766667 + value: {x: 1.684679, y: 1.684679, z: 1.684679} + - time: 0.800000 + value: {x: 1.769973, y: 1.769973, z: 1.769973} + - time: 0.833333 + value: {x: 1.855532, y: 1.855532, z: 1.855532} + - time: 0.866667 + value: {x: 1.940816, y: 1.940816, z: 1.940816} + - time: 0.966667 + value: {x: 2.195566, y: 2.195566, z: 2.195566} + - time: 1.000000 + value: {x: 2.279700, y: 2.279700, z: 2.279700} + - time: 1.033333 + value: {x: 2.362431, y: 2.362431, z: 2.362431} + - time: 1.066667 + value: {x: 2.443130, y: 2.443130, z: 2.443130} + - time: 1.100000 + value: {x: 2.521328, y: 2.521328, z: 2.521328} + - time: 1.133333 + value: {x: 2.596725, y: 2.596725, z: 2.596725} + - time: 1.166667 + value: {x: 2.669327, y: 2.669327, z: 2.669327} + - time: 1.200000 + value: {x: 2.740054, y: 2.740054, z: 2.740054} + - time: 1.233333 + value: {x: 2.809802, y: 2.809802, z: 2.809802} + - time: 1.266667 + value: {x: 2.878653, y: 2.878653, z: 2.878653} + - time: 1.300000 + value: {x: 2.946944, y: 2.946944, z: 2.946944} + - time: 1.333333 + value: {x: 3.014828, y: 3.014828, z: 3.014828} + - time: 1.366667 + value: {x: 3.081710, y: 3.081710, z: 3.081710} + - time: 1.400000 + value: {x: 3.146770, y: 3.146770, z: 3.146770} + - time: 1.433333 + value: {x: 3.209305, y: 3.209305, z: 3.209305} + - time: 1.466667 + value: {x: 3.269214, y: 3.269214, z: 3.269214} + - time: 1.500000 + value: {x: 3.326775, y: 3.326775, z: 3.326775} + - time: 1.533333 + value: {x: 3.382383, y: 3.382383, z: 3.382383} + - time: 1.600000 + value: {x: 3.490969, y: 3.490969, z: 3.490969} + - time: 1.633333 + value: {x: 3.546491, y: 3.546491, z: 3.546491} + - time: 1.666667 + value: {x: 3.604614, y: 3.604614, z: 3.604614} + - time: 1.700000 + value: {x: 3.664960, y: 3.664960, z: 3.664960} + - time: 1.733333 + value: {x: 3.727570, y: 3.727570, z: 3.727570} + - time: 1.766667 + value: {x: 3.791109, y: 3.791109, z: 3.791109} + - time: 1.800000 + value: {x: 3.854344, y: 3.854344, z: 3.854344} + - time: 1.833333 + value: {x: 3.915170, y: 3.915170, z: 3.915170} + - time: 1.866667 + value: {x: 3.972307, y: 3.972307, z: 3.972307} + - time: 1.900000 + value: {x: 4.025400, y: 4.025400, z: 4.025400} + - time: 1.933333 + value: {x: 4.074887, y: 4.074887, z: 4.074887} + - time: 1.966667 + value: {x: 4.120700, y: 4.120700, z: 4.120700} + - time: 2.000000 + value: {x: 4.162717, y: 4.162717, z: 4.162717} + - time: 2.033333 + value: {x: 4.201163, y: 4.201163, z: 4.201163} + - time: 2.066667 + value: {x: 4.236942, y: 4.236942, z: 4.236942} + - time: 2.100000 + value: {x: 4.271001, y: 4.271001, z: 4.271001} + - time: 2.166667 + value: {x: 4.337477, y: 4.337477, z: 4.337477} + - time: 2.200000 + value: {x: 4.371696, y: 4.371696, z: 4.371696} + - time: 2.233333 + value: {x: 4.407157, y: 4.407157, z: 4.407157} + - time: 2.266667 + value: {x: 4.443686, y: 4.443686, z: 4.443686} + - time: 2.333333 + value: {x: 4.517730, y: 4.517730, z: 4.517730} + - time: 2.366667 + value: {x: 4.553724, y: 4.553724, z: 4.553724} + - time: 2.400000 + value: {x: 4.587977, y: 4.587977, z: 4.587977} + - time: 2.433333 + value: {x: 4.619910, y: 4.619910, z: 4.619910} + - time: 2.466667 + value: {x: 4.649391, y: 4.649391, z: 4.649391} + - time: 2.500000 + value: {x: 4.676855, y: 4.676855, z: 4.676855} + - time: 2.533333 + value: {x: 4.702000, y: 4.702000, z: 4.702000} + - time: 2.566667 + value: {x: 4.724452, y: 4.724452, z: 4.724452} + - time: 2.600000 + value: {x: 4.744372, y: 4.744372, z: 4.744372} + - time: 2.633333 + value: {x: 4.761848, y: 4.761848, z: 4.761848} + - time: 2.666667 + value: {x: 4.777315, y: 4.777315, z: 4.777315} + - time: 2.733333 + value: {x: 4.806000, y: 4.806000, z: 4.806000} + - time: 2.766667 + value: {x: 4.821221, y: 4.821221, z: 4.821221} + - time: 2.800000 + value: {x: 4.837579, y: 4.837579, z: 4.837579} + - time: 2.833333 + value: {x: 4.854527, y: 4.854527, z: 4.854527} + - time: 2.866667 + value: {x: 4.871123, y: 4.871123, z: 4.871123} + - time: 2.900000 + value: {x: 4.886727, y: 4.886727, z: 4.886727} + - time: 2.933333 + value: {x: 4.901305, y: 4.901305, z: 4.901305} + - time: 2.966667 + value: {x: 4.915105, y: 4.915105, z: 4.915105} + - time: 3.000000 + value: {x: 4.928235, y: 4.928235, z: 4.928235} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_16: + position: + - time: 0.000000 + value: {x: 0.053122, y: 2.511905, z: 0.159386} + - time: 0.033333 + value: {x: 0.053122, y: 2.511905, z: 0.159386} + - time: 0.066667 + value: {x: 0.043940, y: 1.915579, z: 0.023762} + - time: 0.100000 + value: {x: 0.092696, y: 1.296275, z: -0.021148} + - time: 0.133333 + value: {x: 0.236822, y: 0.768014, z: -0.002958} + - time: 0.166667 + value: {x: 0.516376, y: 0.439974, z: 0.059000} + - time: 0.200000 + value: {x: 0.829574, y: 0.309933, z: 0.090876} + - time: 0.233333 + value: {x: 1.062595, y: 0.265766, z: 0.087746} + - time: 0.266667 + value: {x: 1.201591, y: 0.252168, z: 0.076479} + - time: 0.300000 + value: {x: 1.320961, y: 0.245856, z: 0.062231} + - time: 0.333333 + value: {x: 1.439829, y: 0.243893, z: 0.043904} + - time: 0.366667 + value: {x: 1.558124, y: 0.245021, z: 0.022644} + - time: 0.400000 + value: {x: 1.675809, y: 0.248143, z: -0.000449} + - time: 0.433333 + value: {x: 1.792724, y: 0.252903, z: -0.025324} + - time: 0.466667 + value: {x: 1.908864, y: 0.258992, z: -0.051491} + - time: 0.500000 + value: {x: 2.024407, y: 0.265887, z: -0.078008} + - time: 0.533333 + value: {x: 2.139345, y: 0.273091, z: -0.104858} + - time: 0.566667 + value: {x: 2.253580, y: 0.280259, z: -0.132115} + - time: 0.600000 + value: {x: 2.367110, y: 0.287259, z: -0.159591} + - time: 0.633333 + value: {x: 2.479890, y: 0.294042, z: -0.187299} + - time: 0.666667 + value: {x: 2.591888, y: 0.300609, z: -0.215232} + - time: 0.700000 + value: {x: 2.703084, y: 0.306992, z: -0.243328} + - time: 0.733333 + value: {x: 2.813454, y: 0.313243, z: -0.271524} + - time: 0.766667 + value: {x: 2.922998, y: 0.319432, z: -0.299666} + - time: 0.800000 + value: {x: 3.031719, y: 0.325636, z: -0.327575} + - time: 0.833333 + value: {x: 3.139613, y: 0.331942, z: -0.355082} + - time: 0.866667 + value: {x: 3.246634, y: 0.338437, z: -0.382161} + - time: 0.900000 + value: {x: 3.352705, y: 0.345206, z: -0.408900} + - time: 0.933333 + value: {x: 3.457722, y: 0.352324, z: -0.435473} + - time: 0.966667 + value: {x: 3.561547, y: 0.359858, z: -0.462148} + - time: 1.000000 + value: {x: 3.663949, y: 0.367957, z: -0.489233} + - time: 1.033333 + value: {x: 3.764879, y: 0.376643, z: -0.516698} + - time: 1.066667 + value: {x: 3.864317, y: 0.385936, z: -0.544350} + - time: 1.100000 + value: {x: 3.962240, y: 0.395860, z: -0.571966} + - time: 1.133333 + value: {x: 4.058615, y: 0.406424, z: -0.599379} + - time: 1.166667 + value: {x: 4.153305, y: 0.417702, z: -0.626484} + - time: 1.200000 + value: {x: 4.245905, y: 0.429906, z: -0.653304} + - time: 1.233333 + value: {x: 4.336581, y: 0.442785, z: -0.679927} + - time: 1.266667 + value: {x: 4.425303, y: 0.456295, z: -0.706360} + - time: 1.300000 + value: {x: 4.511647, y: 0.470620, z: -0.732636} + - time: 1.333333 + value: {x: 4.595218, y: 0.485859, z: -0.758661} + - time: 1.366667 + value: {x: 4.676553, y: 0.501639, z: -0.784402} + - time: 1.400000 + value: {x: 4.755247, y: 0.518109, z: -0.809857} + - time: 1.433333 + value: {x: 4.830361, y: 0.535538, z: -0.835055} + - time: 1.466667 + value: {x: 4.903152, y: 0.553320, z: -0.859972} + - time: 1.500000 + value: {x: 4.972165, y: 0.571938, z: -0.884676} + - time: 1.533333 + value: {x: 5.037726, y: 0.591119, z: -0.909049} + - time: 1.566667 + value: {x: 5.100645, y: 0.610591, z: -0.933072} + - time: 1.600000 + value: {x: 5.158350, y: 0.630913, z: -0.956733} + - time: 1.633333 + value: {x: 5.214445, y: 0.651114, z: -0.980009} + - time: 1.666667 + value: {x: 5.263844, y: 0.672148, z: -1.003065} + - time: 1.700000 + value: {x: 5.312069, y: 0.692855, z: -1.025720} + - time: 1.733333 + value: {x: 5.353323, y: 0.713950, z: -1.048091} + - time: 1.766667 + value: {x: 5.393936, y: 0.734617, z: -1.070029} + - time: 1.800000 + value: {x: 5.426567, y: 0.755057, z: -1.091568} + - time: 1.833333 + value: {x: 5.458780, y: 0.775045, z: -1.112652} + - time: 1.866667 + value: {x: 5.484392, y: 0.793886, z: -1.133210} + - time: 1.900000 + value: {x: 5.508133, y: 0.812103, z: -1.153280} + - time: 1.933333 + value: {x: 5.528818, y: 0.829032, z: -1.172752} + - time: 1.966667 + value: {x: 5.545002, y: 0.844238, z: -1.191557} + - time: 2.000000 + value: {x: 5.561056, y: 0.859037, z: -1.209869} + - time: 2.033333 + value: {x: 5.572956, y: 0.871322, z: -1.227309} + - time: 2.066667 + value: {x: 5.583458, y: 0.882547, z: -1.244124} + - time: 2.100000 + value: {x: 5.593937, y: 0.893438, z: -1.260437} + - time: 2.133333 + value: {x: 5.601622, y: 0.901977, z: -1.275845} + - time: 2.166667 + value: {x: 5.608582, y: 0.909690, z: -1.290638} + - time: 2.200000 + value: {x: 5.615580, y: 0.917150, z: -1.304922} + - time: 2.233333 + value: {x: 5.621845, y: 0.923670, z: -1.318544} + - time: 2.266667 + value: {x: 5.626841, y: 0.928774, z: -1.331401} + - time: 2.300000 + value: {x: 5.631901, y: 0.933694, z: -1.343743} + - time: 2.333333 + value: {x: 5.636997, y: 0.938425, z: -1.355561} + - time: 2.366667 + value: {x: 5.641884, y: 0.942728, z: -1.366797} + - time: 2.400000 + value: {x: 5.645990, y: 0.946029, z: -1.377316} + - time: 2.433333 + value: {x: 5.650120, y: 0.949187, z: -1.387305} + - time: 2.466667 + value: {x: 5.654247, y: 0.952199, z: -1.396758} + - time: 2.500000 + value: {x: 5.658352, y: 0.955058, z: -1.405668} + - time: 2.533333 + value: {x: 5.662401, y: 0.957761, z: -1.414031} + - time: 2.566667 + value: {x: 5.666157, y: 0.960066, z: -1.421782} + - time: 2.600000 + value: {x: 5.669712, y: 0.962100, z: -1.428950} + - time: 2.633333 + value: {x: 5.673161, y: 0.963995, z: -1.435563} + - time: 2.666667 + value: {x: 5.676472, y: 0.965747, z: -1.441615} + - time: 2.700000 + value: {x: 5.679619, y: 0.967352, z: -1.447104} + - time: 2.733333 + value: {x: 5.682571, y: 0.968806, z: -1.452025} + - time: 2.766667 + value: {x: 5.685295, y: 0.970104, z: -1.456376} + - time: 2.800000 + value: {x: 5.687767, y: 0.971243, z: -1.460154} + - time: 2.833333 + value: {x: 5.689949, y: 0.972218, z: -1.463355} + - time: 2.866667 + value: {x: 5.691809, y: 0.973024, z: -1.465976} + - time: 2.900000 + value: {x: 5.693317, y: 0.973659, z: -1.468018} + - time: 2.933333 + value: {x: 5.694437, y: 0.974118, z: -1.469477} + - time: 2.966667 + value: {x: 5.695135, y: 0.974396, z: -1.470354} + - time: 3.000000 + value: {x: 5.695377, y: 0.974490, z: -1.470646} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.494671, y: 0.494671, z: 0.494671} + - time: 0.033333 + value: {x: 0.494557, y: 0.494557, z: 0.494557} + - time: 0.066667 + value: {x: 0.518386, y: 0.518386, z: 0.518386} + - time: 0.100000 + value: {x: 0.550604, y: 0.550604, z: 0.550604} + - time: 0.133333 + value: {x: 0.588329, y: 0.588329, z: 0.588329} + - time: 0.166667 + value: {x: 0.630085, y: 0.630085, z: 0.630085} + - time: 0.200000 + value: {x: 0.674477, y: 0.674477, z: 0.674477} + - time: 0.233333 + value: {x: 0.722519, y: 0.722519, z: 0.722519} + - time: 0.266667 + value: {x: 0.774625, y: 0.774625, z: 0.774625} + - time: 0.300000 + value: {x: 0.830893, y: 0.830893, z: 0.830893} + - time: 0.333333 + value: {x: 0.891054, y: 0.891054, z: 0.891054} + - time: 0.366667 + value: {x: 0.955196, y: 0.955196, z: 0.955196} + - time: 0.400000 + value: {x: 1.023670, y: 1.023670, z: 1.023670} + - time: 0.433333 + value: {x: 1.096815, y: 1.096815, z: 1.096815} + - time: 0.466667 + value: {x: 1.174553, y: 1.174553, z: 1.174553} + - time: 0.500000 + value: {x: 1.256145, y: 1.256145, z: 1.256145} + - time: 0.533333 + value: {x: 1.340641, y: 1.340641, z: 1.340641} + - time: 0.566667 + value: {x: 1.427376, y: 1.427376, z: 1.427376} + - time: 0.600000 + value: {x: 1.515887, y: 1.515887, z: 1.515887} + - time: 0.633333 + value: {x: 1.605658, y: 1.605658, z: 1.605658} + - time: 0.666667 + value: {x: 1.696207, y: 1.696207, z: 1.696207} + - time: 0.766667 + value: {x: 1.968992, y: 1.968992, z: 1.968992} + - time: 0.800000 + value: {x: 2.060624, y: 2.060624, z: 2.060624} + - time: 0.833333 + value: {x: 2.153703, y: 2.153703, z: 2.153703} + - time: 0.866667 + value: {x: 2.248769, y: 2.248769, z: 2.248769} + - time: 0.900000 + value: {x: 2.345901, y: 2.345901, z: 2.345901} + - time: 0.933333 + value: {x: 2.444684, y: 2.444684, z: 2.444684} + - time: 0.966667 + value: {x: 2.544419, y: 2.544419, z: 2.544419} + - time: 1.066667 + value: {x: 2.844513, y: 2.844513, z: 2.844513} + - time: 1.100000 + value: {x: 2.943662, y: 2.943662, z: 2.943662} + - time: 1.133333 + value: {x: 3.041090, y: 3.041090, z: 3.041090} + - time: 1.166667 + value: {x: 3.135906, y: 3.135906, z: 3.135906} + - time: 1.200000 + value: {x: 3.227788, y: 3.227788, z: 3.227788} + - time: 1.233333 + value: {x: 3.316819, y: 3.316819, z: 3.316819} + - time: 1.266667 + value: {x: 3.402743, y: 3.402743, z: 3.402743} + - time: 1.300000 + value: {x: 3.485674, y: 3.485674, z: 3.485674} + - time: 1.333333 + value: {x: 3.566327, y: 3.566327, z: 3.566327} + - time: 1.366667 + value: {x: 3.645516, y: 3.645516, z: 3.645516} + - time: 1.400000 + value: {x: 3.723668, y: 3.723668, z: 3.723668} + - time: 1.433333 + value: {x: 3.800852, y: 3.800852, z: 3.800852} + - time: 1.466667 + value: {x: 3.876907, y: 3.876907, z: 3.876907} + - time: 1.500000 + value: {x: 3.951479, y: 3.951479, z: 3.951479} + - time: 1.533333 + value: {x: 4.024113, y: 4.024113, z: 4.024113} + - time: 1.566667 + value: {x: 4.094436, y: 4.094436, z: 4.094436} + - time: 1.600000 + value: {x: 4.162593, y: 4.162593, z: 4.162593} + - time: 1.633333 + value: {x: 4.229204, y: 4.229204, z: 4.229204} + - time: 1.666667 + value: {x: 4.294782, y: 4.294782, z: 4.294782} + - time: 1.700000 + value: {x: 4.359576, y: 4.359576, z: 4.359576} + - time: 1.733333 + value: {x: 4.423642, y: 4.423642, z: 4.423642} + - time: 1.766667 + value: {x: 4.486776, y: 4.486776, z: 4.486776} + - time: 1.800000 + value: {x: 4.548870, y: 4.548870, z: 4.548870} + - time: 1.833333 + value: {x: 4.609184, y: 4.609184, z: 4.609184} + - time: 1.866667 + value: {x: 4.667839, y: 4.667839, z: 4.667839} + - time: 1.900000 + value: {x: 4.725140, y: 4.725140, z: 4.725140} + - time: 1.966667 + value: {x: 4.838589, y: 4.838589, z: 4.838589} + - time: 2.000000 + value: {x: 4.895589, y: 4.895589, z: 4.895589} + - time: 2.066667 + value: {x: 5.010744, y: 5.010744, z: 5.010744} + - time: 2.133333 + value: {x: 5.125535, y: 5.125535, z: 5.125535} + - time: 2.200000 + value: {x: 5.239439, y: 5.239439, z: 5.239439} + - time: 2.233333 + value: {x: 5.295706, y: 5.295706, z: 5.295706} + - time: 2.266667 + value: {x: 5.350821, y: 5.350821, z: 5.350821} + - time: 2.300000 + value: {x: 5.404101, y: 5.404101, z: 5.404101} + - time: 2.333333 + value: {x: 5.454957, y: 5.454957, z: 5.454957} + - time: 2.366667 + value: {x: 5.502946, y: 5.502946, z: 5.502946} + - time: 2.400000 + value: {x: 5.547674, y: 5.547674, z: 5.547674} + - time: 2.433333 + value: {x: 5.588803, y: 5.588803, z: 5.588803} + - time: 2.466667 + value: {x: 5.625931, y: 5.625931, z: 5.625931} + - time: 2.500000 + value: {x: 5.659157, y: 5.659157, z: 5.659157} + - time: 2.533333 + value: {x: 5.687938, y: 5.687938, z: 5.687938} + - time: 2.566667 + value: {x: 5.712142, y: 5.712142, z: 5.712142} + - time: 2.600000 + value: {x: 5.732907, y: 5.732907, z: 5.732907} + - time: 2.633333 + value: {x: 5.751096, y: 5.751096, z: 5.751096} + - time: 2.666667 + value: {x: 5.767375, y: 5.767375, z: 5.767375} + - time: 2.700000 + value: {x: 5.782048, y: 5.782048, z: 5.782048} + - time: 2.733333 + value: {x: 5.794898, y: 5.794898, z: 5.794898} + - time: 2.766667 + value: {x: 5.805373, y: 5.805373, z: 5.805373} + - time: 2.800000 + value: {x: 5.813214, y: 5.813214, z: 5.813214} + - time: 2.833333 + value: {x: 5.818628, y: 5.818628, z: 5.818628} + - time: 2.866667 + value: {x: 5.822237, y: 5.822237, z: 5.822237} + - time: 2.900000 + value: {x: 5.825040, y: 5.825040, z: 5.825040} + - time: 2.933333 + value: {x: 5.828378, y: 5.828378, z: 5.828378} + - time: 2.966667 + value: {x: 5.833660, y: 5.833660, z: 5.833660} + - time: 3.000000 + value: {x: 5.841788, y: 5.841788, z: 5.841788} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_17: + position: + - time: 0.000000 + value: {x: 0.139333, y: 2.511905, z: 0.089125} + - time: 0.033333 + value: {x: 0.139333, y: 2.511905, z: 0.089125} + - time: 0.066667 + value: {x: 0.049709, y: 1.915579, z: -0.008659} + - time: 0.100000 + value: {x: 0.066016, y: 1.296275, z: -0.069348} + - time: 0.133333 + value: {x: 0.201649, y: 0.768014, z: -0.136750} + - time: 0.166667 + value: {x: 0.464828, y: 0.439974, z: -0.259098} + - time: 0.200000 + value: {x: 0.729891, y: 0.309932, z: -0.430001} + - time: 0.233333 + value: {x: 0.906661, y: 0.265766, z: -0.580708} + - time: 0.266667 + value: {x: 1.005236, y: 0.252168, z: -0.678636} + - time: 0.300000 + value: {x: 1.087544, y: 0.245856, z: -0.765906} + - time: 0.333333 + value: {x: 1.167092, y: 0.243893, z: -0.855893} + - time: 0.366667 + value: {x: 1.243166, y: 0.245021, z: -0.948683} + - time: 0.400000 + value: {x: 1.315552, y: 0.248143, z: -1.044049} + - time: 0.433333 + value: {x: 1.384632, y: 0.252903, z: -1.141496} + - time: 0.466667 + value: {x: 1.451281, y: 0.258992, z: -1.240216} + - time: 0.500000 + value: {x: 1.516540, y: 0.265887, z: -1.339358} + - time: 0.533333 + value: {x: 1.581219, y: 0.273090, z: -1.438306} + - time: 0.566667 + value: {x: 1.645989, y: 0.280259, z: -1.536463} + - time: 0.600000 + value: {x: 1.711284, y: 0.287259, z: -1.633450} + - time: 0.633333 + value: {x: 1.777407, y: 0.294042, z: -1.728989} + - time: 0.666667 + value: {x: 1.844194, y: 0.300609, z: -1.823163} + - time: 0.700000 + value: {x: 1.911261, y: 0.306992, z: -1.916211} + - time: 0.733333 + value: {x: 1.978222, y: 0.313243, z: -2.008374} + - time: 0.766667 + value: {x: 2.044545, y: 0.319432, z: -2.099998} + - time: 0.800000 + value: {x: 2.109848, y: 0.325636, z: -2.191313} + - time: 0.833333 + value: {x: 2.173870, y: 0.331942, z: -2.282458} + - time: 0.866667 + value: {x: 2.236371, y: 0.338437, z: -2.373546} + - time: 0.900000 + value: {x: 2.297263, y: 0.345206, z: -2.464578} + - time: 0.933333 + value: {x: 2.356519, y: 0.352324, z: -2.555500} + - time: 0.966667 + value: {x: 2.414187, y: 0.359858, z: -2.646198} + - time: 1.000000 + value: {x: 2.470155, y: 0.367957, z: -2.736569} + - time: 1.033333 + value: {x: 2.524620, y: 0.376643, z: -2.826400} + - time: 1.066667 + value: {x: 2.577698, y: 0.385936, z: -2.915520} + - time: 1.100000 + value: {x: 2.629457, y: 0.395860, z: -3.003783} + - time: 1.133333 + value: {x: 2.679948, y: 0.406424, z: -3.091055} + - time: 1.166667 + value: {x: 2.729125, y: 0.417702, z: -3.177178} + - time: 1.200000 + value: {x: 2.776808, y: 0.429906, z: -3.261798} + - time: 1.233333 + value: {x: 2.823303, y: 0.442785, z: -3.344921} + - time: 1.266667 + value: {x: 2.868690, y: 0.456295, z: -3.426451} + - time: 1.300000 + value: {x: 2.912852, y: 0.470620, z: -3.505975} + - time: 1.333333 + value: {x: 2.955619, y: 0.485859, z: -3.583112} + - time: 1.366667 + value: {x: 2.997240, y: 0.501639, z: -3.658314} + - time: 1.400000 + value: {x: 3.037470, y: 0.518109, z: -3.731275} + - time: 1.433333 + value: {x: 3.075915, y: 0.535538, z: -3.801165} + - time: 1.466667 + value: {x: 3.113323, y: 0.553320, z: -3.868935} + - time: 1.500000 + value: {x: 3.149150, y: 0.571938, z: -3.933257} + - time: 1.533333 + value: {x: 3.183499, y: 0.591119, z: -3.994412} + - time: 1.566667 + value: {x: 3.216704, y: 0.610591, z: -4.053121} + - time: 1.600000 + value: {x: 3.247490, y: 0.630913, z: -4.107224} + - time: 1.633333 + value: {x: 3.277516, y: 0.651115, z: -4.159833} + - time: 1.666667 + value: {x: 3.304103, y: 0.672148, z: -4.206851} + - time: 1.700000 + value: {x: 3.330079, y: 0.692855, z: -4.252782} + - time: 1.733333 + value: {x: 3.352155, y: 0.713950, z: -4.293113} + - time: 1.766667 + value: {x: 3.373919, y: 0.734617, z: -4.332768} + - time: 1.800000 + value: {x: 3.391026, y: 0.755057, z: -4.366134} + - time: 1.833333 + value: {x: 3.407953, y: 0.775045, z: -4.398986} + - time: 1.866667 + value: {x: 3.420934, y: 0.793886, z: -4.426644} + - time: 1.900000 + value: {x: 3.432849, y: 0.812103, z: -4.452682} + - time: 1.933333 + value: {x: 3.442979, y: 0.829032, z: -4.476178} + - time: 1.966667 + value: {x: 3.450441, y: 0.844237, z: -4.496018} + - time: 2.000000 + value: {x: 3.457901, y: 0.859037, z: -4.515548} + - time: 2.033333 + value: {x: 3.462918, y: 0.871322, z: -4.531612} + - time: 2.066667 + value: {x: 3.467165, y: 0.882546, z: -4.546370} + - time: 2.100000 + value: {x: 3.471475, y: 0.893439, z: -4.560890} + - time: 2.133333 + value: {x: 3.474172, y: 0.901977, z: -4.572963} + - time: 2.166667 + value: {x: 3.476506, y: 0.909690, z: -4.584234} + - time: 2.200000 + value: {x: 3.478944, y: 0.917150, z: -4.595320} + - time: 2.233333 + value: {x: 3.481029, y: 0.923670, z: -4.605577} + - time: 2.266667 + value: {x: 3.482445, y: 0.928774, z: -4.614559} + - time: 2.333333 + value: {x: 3.485608, y: 0.938425, z: -4.631991} + - time: 2.366667 + value: {x: 3.487197, y: 0.942728, z: -4.640210} + - time: 2.400000 + value: {x: 3.488415, y: 0.946029, z: -4.647536} + - time: 2.466667 + value: {x: 3.491105, y: 0.952198, z: -4.661562} + - time: 2.500000 + value: {x: 3.492544, y: 0.955057, z: -4.668218} + - time: 2.533333 + value: {x: 3.494025, y: 0.957761, z: -4.674609} + - time: 2.566667 + value: {x: 3.495408, y: 0.960066, z: -4.680533} + - time: 2.600000 + value: {x: 3.496743, y: 0.962100, z: -4.686064} + - time: 2.633333 + value: {x: 3.498084, y: 0.963995, z: -4.691287} + - time: 2.666667 + value: {x: 3.499413, y: 0.965747, z: -4.696181} + - time: 2.700000 + value: {x: 3.500712, y: 0.967352, z: -4.700723} + - time: 2.733333 + value: {x: 3.501962, y: 0.968806, z: -4.704889} + - time: 2.766667 + value: {x: 3.503142, y: 0.970104, z: -4.708656} + - time: 2.800000 + value: {x: 3.504235, y: 0.971243, z: -4.712003} + - time: 2.833333 + value: {x: 3.505219, y: 0.972218, z: -4.714902} + - time: 2.866667 + value: {x: 3.506073, y: 0.973024, z: -4.717331} + - time: 2.900000 + value: {x: 3.506775, y: 0.973660, z: -4.719264} + - time: 2.933333 + value: {x: 3.507305, y: 0.974118, z: -4.720675} + - time: 2.966667 + value: {x: 3.507640, y: 0.974396, z: -4.721542} + - time: 3.000000 + value: {x: 3.507757, y: 0.974490, z: -4.721837} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.234476, y: 0.234476, z: 0.234476} + - time: 0.033333 + value: {x: 0.234274, y: 0.234274, z: 0.234274} + - time: 0.066667 + value: {x: 0.255630, y: 0.255630, z: 0.255630} + - time: 0.100000 + value: {x: 0.287160, y: 0.287160, z: 0.287160} + - time: 0.133333 + value: {x: 0.325735, y: 0.325735, z: 0.325735} + - time: 0.166667 + value: {x: 0.367278, y: 0.367278, z: 0.367278} + - time: 0.200000 + value: {x: 0.410203, y: 0.410203, z: 0.410203} + - time: 0.233333 + value: {x: 0.458090, y: 0.458090, z: 0.458090} + - time: 0.266667 + value: {x: 0.511333, y: 0.511333, z: 0.511333} + - time: 0.300000 + value: {x: 0.569506, y: 0.569506, z: 0.569506} + - time: 0.333333 + value: {x: 0.632252, y: 0.632252, z: 0.632252} + - time: 0.366667 + value: {x: 0.699232, y: 0.699232, z: 0.699232} + - time: 0.400000 + value: {x: 0.770175, y: 0.770175, z: 0.770175} + - time: 0.433333 + value: {x: 0.844883, y: 0.844883, z: 0.844883} + - time: 0.466667 + value: {x: 0.923179, y: 0.923179, z: 0.923179} + - time: 0.500000 + value: {x: 1.004664, y: 1.004664, z: 1.004664} + - time: 0.533333 + value: {x: 1.088546, y: 1.088546, z: 1.088546} + - time: 0.566667 + value: {x: 1.174194, y: 1.174194, z: 1.174194} + - time: 0.600000 + value: {x: 1.261430, y: 1.261430, z: 1.261430} + - time: 0.633333 + value: {x: 1.350302, y: 1.350302, z: 1.350302} + - time: 0.666667 + value: {x: 1.440732, y: 1.440732, z: 1.440732} + - time: 0.700000 + value: {x: 1.532643, y: 1.532643, z: 1.532643} + - time: 0.733333 + value: {x: 1.626100, y: 1.626100, z: 1.626100} + - time: 0.766667 + value: {x: 1.720928, y: 1.720928, z: 1.720928} + - time: 0.833333 + value: {x: 1.911990, y: 1.911990, z: 1.911990} + - time: 0.866667 + value: {x: 2.006313, y: 2.006313, z: 2.006313} + - time: 0.900000 + value: {x: 2.098572, y: 2.098572, z: 2.098572} + - time: 0.933333 + value: {x: 2.188267, y: 2.188267, z: 2.188267} + - time: 0.966667 + value: {x: 2.275400, y: 2.275400, z: 2.275400} + - time: 1.000000 + value: {x: 2.360190, y: 2.360190, z: 2.360190} + - time: 1.033333 + value: {x: 2.442834, y: 2.442834, z: 2.442834} + - time: 1.066667 + value: {x: 2.523150, y: 2.523150, z: 2.523150} + - time: 1.100000 + value: {x: 2.601166, y: 2.601166, z: 2.601166} + - time: 1.133333 + value: {x: 2.676830, y: 2.676830, z: 2.676830} + - time: 1.166667 + value: {x: 2.749780, y: 2.749780, z: 2.749780} + - time: 1.200000 + value: {x: 2.819788, y: 2.819788, z: 2.819788} + - time: 1.233333 + value: {x: 2.886689, y: 2.886689, z: 2.886689} + - time: 1.266667 + value: {x: 2.949949, y: 2.949949, z: 2.949949} + - time: 1.300000 + value: {x: 3.009187, y: 3.009187, z: 3.009187} + - time: 1.333333 + value: {x: 3.064331, y: 3.064331, z: 3.064331} + - time: 1.366667 + value: {x: 3.115752, y: 3.115752, z: 3.115752} + - time: 1.400000 + value: {x: 3.164897, y: 3.164897, z: 3.164897} + - time: 1.433333 + value: {x: 3.213002, y: 3.213002, z: 3.213002} + - time: 1.466667 + value: {x: 3.259843, y: 3.259843, z: 3.259843} + - time: 1.500000 + value: {x: 3.304266, y: 3.304266, z: 3.304266} + - time: 1.533333 + value: {x: 3.344495, y: 3.344495, z: 3.344495} + - time: 1.566667 + value: {x: 3.379051, y: 3.379051, z: 3.379051} + - time: 1.600000 + value: {x: 3.406949, y: 3.406949, z: 3.406949} + - time: 1.633333 + value: {x: 3.429218, y: 3.429218, z: 3.429218} + - time: 1.666667 + value: {x: 3.446741, y: 3.446741, z: 3.446741} + - time: 1.700000 + value: {x: 3.460919, y: 3.460919, z: 3.460919} + - time: 1.733333 + value: {x: 3.472344, y: 3.472344, z: 3.472344} + - time: 1.766667 + value: {x: 3.481637, y: 3.481637, z: 3.481637} + - time: 1.800000 + value: {x: 3.489539, y: 3.489539, z: 3.489539} + - time: 1.833333 + value: {x: 3.496215, y: 3.496215, z: 3.496215} + - time: 1.866667 + value: {x: 3.502197, y: 3.502197, z: 3.502197} + - time: 1.900000 + value: {x: 3.507390, y: 3.507390, z: 3.507390} + - time: 1.933333 + value: {x: 3.511548, y: 3.511548, z: 3.511548} + - time: 1.966667 + value: {x: 3.514213, y: 3.514213, z: 3.514213} + - time: 2.000000 + value: {x: 3.514626, y: 3.514626, z: 3.514626} + - time: 2.033333 + value: {x: 3.512380, y: 3.512380, z: 3.512380} + - time: 2.066667 + value: {x: 3.507237, y: 3.507237, z: 3.507237} + - time: 2.100000 + value: {x: 3.499636, y: 3.499636, z: 3.499636} + - time: 2.133333 + value: {x: 3.490812, y: 3.490812, z: 3.490812} + - time: 2.166667 + value: {x: 3.482270, y: 3.482270, z: 3.482270} + - time: 2.200000 + value: {x: 3.475013, y: 3.475013, z: 3.475013} + - time: 2.233333 + value: {x: 3.469282, y: 3.469282, z: 3.469282} + - time: 2.266667 + value: {x: 3.464972, y: 3.464972, z: 3.464972} + - time: 2.300000 + value: {x: 3.462003, y: 3.462003, z: 3.462003} + - time: 2.333333 + value: {x: 3.460541, y: 3.460541, z: 3.460541} + - time: 2.366667 + value: {x: 3.460626, y: 3.460626, z: 3.460626} + - time: 2.400000 + value: {x: 3.461946, y: 3.461946, z: 3.461946} + - time: 2.433333 + value: {x: 3.463746, y: 3.463746, z: 3.463746} + - time: 2.466667 + value: {x: 3.465028, y: 3.465028, z: 3.465028} + - time: 2.500000 + value: {x: 3.464897, y: 3.464897, z: 3.464897} + - time: 2.533333 + value: {x: 3.460921, y: 3.460921, z: 3.460921} + - time: 2.566667 + value: {x: 3.450961, y: 3.450961, z: 3.450961} + - time: 2.600000 + value: {x: 3.434863, y: 3.434863, z: 3.434863} + - time: 2.633333 + value: {x: 3.413237, y: 3.413237, z: 3.413237} + - time: 2.666667 + value: {x: 3.387646, y: 3.387646, z: 3.387646} + - time: 2.700000 + value: {x: 3.360279, y: 3.360279, z: 3.360279} + - time: 2.733333 + value: {x: 3.333553, y: 3.333553, z: 3.333553} + - time: 2.766667 + value: {x: 3.309615, y: 3.309615, z: 3.309615} + - time: 2.800000 + value: {x: 3.289824, y: 3.289824, z: 3.289824} + - time: 2.833333 + value: {x: 3.274640, y: 3.274640, z: 3.274640} + - time: 2.866667 + value: {x: 3.264110, y: 3.264110, z: 3.264110} + - time: 2.900000 + value: {x: 3.257924, y: 3.257924, z: 3.257924} + - time: 2.933333 + value: {x: 3.255756, y: 3.255756, z: 3.255756} + - time: 2.966667 + value: {x: 3.257555, y: 3.257555, z: 3.257555} + - time: 3.000000 + value: {x: 3.263478, y: 3.263478, z: 3.263478} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_18: + position: + - time: 0.000000 + value: {x: 0.160925, y: 2.511905, z: -0.017996} + - time: 0.033333 + value: {x: 0.160925, y: 2.511905, z: -0.017996} + - time: 0.066667 + value: {x: 0.028786, y: 1.915579, z: -0.037776} + - time: 0.100000 + value: {x: 0.000607, y: 1.296275, z: -0.095137} + - time: 0.133333 + value: {x: 0.050919, y: 0.768014, z: -0.232244} + - time: 0.166667 + value: {x: 0.165184, y: 0.439974, z: -0.492174} + - time: 0.200000 + value: {x: 0.252962, y: 0.309933, z: -0.791179} + - time: 0.233333 + value: {x: 0.293495, y: 0.265766, z: -1.019375} + - time: 0.266667 + value: {x: 0.308325, y: 0.252168, z: -1.157472} + - time: 0.300000 + value: {x: 0.316166, y: 0.245856, z: -1.277020} + - time: 0.333333 + value: {x: 0.319627, y: 0.243893, z: -1.396927} + - time: 0.366667 + value: {x: 0.319624, y: 0.245021, z: -1.516875} + - time: 0.400000 + value: {x: 0.317066, y: 0.248143, z: -1.636588} + - time: 0.433333 + value: {x: 0.312577, y: 0.252903, z: -1.755924} + - time: 0.466667 + value: {x: 0.307314, y: 0.258992, z: -1.874801} + - time: 0.500000 + value: {x: 0.301855, y: 0.265887, z: -1.993180} + - time: 0.533333 + value: {x: 0.296157, y: 0.273091, z: -2.111046} + - time: 0.566667 + value: {x: 0.290026, y: 0.280259, z: -2.228315} + - time: 0.600000 + value: {x: 0.283500, y: 0.287259, z: -2.344939} + - time: 0.633333 + value: {x: 0.276495, y: 0.294042, z: -2.460877} + - time: 0.666667 + value: {x: 0.269005, y: 0.300609, z: -2.576093} + - time: 0.700000 + value: {x: 0.261096, y: 0.306992, z: -2.690556} + - time: 0.733333 + value: {x: 0.252720, y: 0.313243, z: -2.804225} + - time: 0.766667 + value: {x: 0.243871, y: 0.319432, z: -2.917061} + - time: 0.800000 + value: {x: 0.234687, y: 0.325636, z: -3.029028} + - time: 0.833333 + value: {x: 0.225333, y: 0.331942, z: -3.140086} + - time: 0.866667 + value: {x: 0.215891, y: 0.338437, z: -3.250187} + - time: 0.900000 + value: {x: 0.206346, y: 0.345206, z: -3.359280} + - time: 0.933333 + value: {x: 0.196697, y: 0.352324, z: -3.467304} + - time: 0.966667 + value: {x: 0.187062, y: 0.359858, z: -3.574200} + - time: 1.000000 + value: {x: 0.177910, y: 0.367957, z: -3.679839} + - time: 1.033333 + value: {x: 0.169504, y: 0.376643, z: -3.784177} + - time: 1.066667 + value: {x: 0.161659, y: 0.385936, z: -3.887139} + - time: 1.100000 + value: {x: 0.154183, y: 0.395860, z: -3.988638} + - time: 1.133333 + value: {x: 0.146941, y: 0.406424, z: -4.088597} + - time: 1.166667 + value: {x: 0.139867, y: 0.417702, z: -4.186853} + - time: 1.200000 + value: {x: 0.133008, y: 0.429905, z: -4.283020} + - time: 1.233333 + value: {x: 0.126125, y: 0.442785, z: -4.377274} + - time: 1.266667 + value: {x: 0.119178, y: 0.456295, z: -4.469583} + - time: 1.300000 + value: {x: 0.112075, y: 0.470620, z: -4.559544} + - time: 1.333333 + value: {x: 0.104736, y: 0.485859, z: -4.646745} + - time: 1.366667 + value: {x: 0.097272, y: 0.501639, z: -4.731704} + - time: 1.400000 + value: {x: 0.089628, y: 0.518109, z: -4.814023} + - time: 1.433333 + value: {x: 0.081650, y: 0.535538, z: -4.892797} + - time: 1.466667 + value: {x: 0.073518, y: 0.553320, z: -4.969244} + - time: 1.500000 + value: {x: 0.064915, y: 0.571938, z: -5.041957} + - time: 1.533333 + value: {x: 0.055944, y: 0.591119, z: -5.111230} + - time: 1.566667 + value: {x: 0.046772, y: 0.610591, z: -5.177845} + - time: 1.600000 + value: {x: 0.036956, y: 0.630913, z: -5.239291} + - time: 1.633333 + value: {x: 0.027174, y: 0.651115, z: -5.299083} + - time: 1.666667 + value: {x: 0.016666, y: 0.672148, z: -5.352303} + - time: 1.700000 + value: {x: 0.006315, y: 0.692854, z: -5.404291} + - time: 1.733333 + value: {x: -0.004611, y: 0.713950, z: -5.449430} + - time: 1.766667 + value: {x: -0.015297, y: 0.734617, z: -5.493849} + - time: 1.800000 + value: {x: -0.026438, y: 0.755057, z: -5.530416} + - time: 1.833333 + value: {x: -0.037305, y: 0.775045, z: -5.566477} + - time: 1.866667 + value: {x: -0.048274, y: 0.793886, z: -5.596004} + - time: 1.900000 + value: {x: -0.059047, y: 0.812103, z: -5.623603} + - time: 1.933333 + value: {x: -0.069607, y: 0.829032, z: -5.648101} + - time: 1.966667 + value: {x: -0.079991, y: 0.844238, z: -5.668077} + - time: 2.000000 + value: {x: -0.090066, y: 0.859037, z: -5.687815} + - time: 2.033333 + value: {x: -0.099805, y: 0.871322, z: -5.703325} + - time: 2.066667 + value: {x: -0.109221, y: 0.882547, z: -5.717339} + - time: 2.100000 + value: {x: -0.118320, y: 0.893438, z: -5.731211} + - time: 2.133333 + value: {x: -0.127006, y: 0.901977, z: -5.742170} + - time: 2.166667 + value: {x: -0.135348, y: 0.909690, z: -5.752285} + - time: 2.200000 + value: {x: -0.143369, y: 0.917150, z: -5.762325} + - time: 2.233333 + value: {x: -0.151023, y: 0.923670, z: -5.771502} + - time: 2.266667 + value: {x: -0.158280, y: 0.928774, z: -5.779272} + - time: 2.300000 + value: {x: -0.165215, y: 0.933694, z: -5.786989} + - time: 2.333333 + value: {x: -0.171827, y: 0.938425, z: -5.794624} + - time: 2.366667 + value: {x: -0.178098, y: 0.942728, z: -5.801922} + - time: 2.400000 + value: {x: -0.183989, y: 0.946029, z: -5.808300} + - time: 2.433333 + value: {x: -0.189556, y: 0.949187, z: -5.814581} + - time: 2.466667 + value: {x: -0.194799, y: 0.952198, z: -5.820738} + - time: 2.500000 + value: {x: -0.199718, y: 0.955058, z: -5.826748} + - time: 2.533333 + value: {x: -0.204310, y: 0.957761, z: -5.832584} + - time: 2.566667 + value: {x: -0.208562, y: 0.960066, z: -5.837996} + - time: 2.600000 + value: {x: -0.212482, y: 0.962100, z: -5.843079} + - time: 2.633333 + value: {x: -0.216078, y: 0.963995, z: -5.847933} + - time: 2.666667 + value: {x: -0.219352, y: 0.965747, z: -5.852526} + - time: 2.700000 + value: {x: -0.222305, y: 0.967352, z: -5.856831} + - time: 2.733333 + value: {x: -0.224938, y: 0.968806, z: -5.860819} + - time: 2.766667 + value: {x: -0.227251, y: 0.970104, z: -5.864458} + - time: 2.800000 + value: {x: -0.229249, y: 0.971243, z: -5.867716} + - time: 2.833333 + value: {x: -0.230931, y: 0.972218, z: -5.870565} + - time: 2.866667 + value: {x: -0.232300, y: 0.973025, z: -5.872972} + - time: 2.900000 + value: {x: -0.233360, y: 0.973660, z: -5.874903} + - time: 2.933333 + value: {x: -0.234112, y: 0.974118, z: -5.876322} + - time: 2.966667 + value: {x: -0.234562, y: 0.974396, z: -5.877201} + - time: 3.000000 + value: {x: -0.234710, y: 0.974490, z: -5.877502} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.362842, y: 0.362842, z: 0.362842} + - time: 0.033333 + value: {x: 0.362728, y: 0.362728, z: 0.362728} + - time: 0.066667 + value: {x: 0.379064, y: 0.379064, z: 0.379064} + - time: 0.100000 + value: {x: 0.403527, y: 0.403527, z: 0.403527} + - time: 0.133333 + value: {x: 0.432951, y: 0.432951, z: 0.432951} + - time: 0.166667 + value: {x: 0.461919, y: 0.461919, z: 0.461919} + - time: 0.200000 + value: {x: 0.489715, y: 0.489715, z: 0.489715} + - time: 0.233333 + value: {x: 0.520713, y: 0.520713, z: 0.520713} + - time: 0.266667 + value: {x: 0.555807, y: 0.555807, z: 0.555807} + - time: 0.300000 + value: {x: 0.594697, y: 0.594697, z: 0.594697} + - time: 0.333333 + value: {x: 0.637337, y: 0.637337, z: 0.637337} + - time: 0.366667 + value: {x: 0.683658, y: 0.683658, z: 0.683658} + - time: 0.400000 + value: {x: 0.733391, y: 0.733391, z: 0.733391} + - time: 0.433333 + value: {x: 0.786055, y: 0.786055, z: 0.786055} + - time: 0.466667 + value: {x: 0.841041, y: 0.841041, z: 0.841041} + - time: 0.500000 + value: {x: 0.897832, y: 0.897832, z: 0.897832} + - time: 0.533333 + value: {x: 0.956439, y: 0.956439, z: 0.956439} + - time: 0.566667 + value: {x: 1.017518, y: 1.017518, z: 1.017518} + - time: 0.600000 + value: {x: 1.082001, y: 1.082001, z: 1.082001} + - time: 0.633333 + value: {x: 1.150350, y: 1.150350, z: 1.150350} + - time: 0.666667 + value: {x: 1.222085, y: 1.222085, z: 1.222085} + - time: 0.700000 + value: {x: 1.296105, y: 1.296105, z: 1.296105} + - time: 0.733333 + value: {x: 1.371223, y: 1.371223, z: 1.371223} + - time: 0.766667 + value: {x: 1.446797, y: 1.446797, z: 1.446797} + - time: 0.800000 + value: {x: 1.522943, y: 1.522943, z: 1.522943} + - time: 0.833333 + value: {x: 1.599842, y: 1.599842, z: 1.599842} + - time: 0.933333 + value: {x: 1.832185, y: 1.832185, z: 1.832185} + - time: 0.966667 + value: {x: 1.909301, y: 1.909301, z: 1.909301} + - time: 1.000000 + value: {x: 1.985879, y: 1.985879, z: 1.985879} + - time: 1.033333 + value: {x: 2.061445, y: 2.061445, z: 2.061445} + - time: 1.066667 + value: {x: 2.135464, y: 2.135464, z: 2.135464} + - time: 1.100000 + value: {x: 2.207536, y: 2.207536, z: 2.207536} + - time: 1.133333 + value: {x: 2.277550, y: 2.277550, z: 2.277550} + - time: 1.166667 + value: {x: 2.345715, y: 2.345715, z: 2.345715} + - time: 1.200000 + value: {x: 2.412597, y: 2.412597, z: 2.412597} + - time: 1.233333 + value: {x: 2.478831, y: 2.478831, z: 2.478831} + - time: 1.266667 + value: {x: 2.544552, y: 2.544552, z: 2.544552} + - time: 1.300000 + value: {x: 2.609845, y: 2.609845, z: 2.609845} + - time: 1.333333 + value: {x: 2.674861, y: 2.674861, z: 2.674861} + - time: 1.433333 + value: {x: 2.868732, y: 2.868732, z: 2.868732} + - time: 1.466667 + value: {x: 2.933886, y: 2.933886, z: 2.933886} + - time: 1.500000 + value: {x: 3.000426, y: 3.000426, z: 3.000426} + - time: 1.533333 + value: {x: 3.068141, y: 3.068141, z: 3.068141} + - time: 1.566667 + value: {x: 3.136410, y: 3.136410, z: 3.136410} + - time: 1.600000 + value: {x: 3.204195, y: 3.204195, z: 3.204195} + - time: 1.633333 + value: {x: 3.270274, y: 3.270274, z: 3.270274} + - time: 1.666667 + value: {x: 3.333599, y: 3.333599, z: 3.333599} + - time: 1.700000 + value: {x: 3.394059, y: 3.394059, z: 3.394059} + - time: 1.733333 + value: {x: 3.452037, y: 3.452037, z: 3.452037} + - time: 1.800000 + value: {x: 3.566211, y: 3.566211, z: 3.566211} + - time: 1.833333 + value: {x: 3.624182, y: 3.624182, z: 3.624182} + - time: 1.866667 + value: {x: 3.682731, y: 3.682731, z: 3.682731} + - time: 1.900000 + value: {x: 3.740912, y: 3.740912, z: 3.740912} + - time: 1.933333 + value: {x: 3.797465, y: 3.797465, z: 3.797465} + - time: 1.966667 + value: {x: 3.851202, y: 3.851202, z: 3.851202} + - time: 2.000000 + value: {x: 3.901341, y: 3.901341, z: 3.901341} + - time: 2.033333 + value: {x: 3.947837, y: 3.947837, z: 3.947837} + - time: 2.066667 + value: {x: 3.991362, y: 3.991362, z: 3.991362} + - time: 2.100000 + value: {x: 4.033008, y: 4.033008, z: 4.033008} + - time: 2.133333 + value: {x: 4.073517, y: 4.073517, z: 4.073517} + - time: 2.233333 + value: {x: 4.193640, y: 4.193640, z: 4.193640} + - time: 2.266667 + value: {x: 4.233435, y: 4.233435, z: 4.233435} + - time: 2.300000 + value: {x: 4.272594, y: 4.272594, z: 4.272594} + - time: 2.333333 + value: {x: 4.310647, y: 4.310647, z: 4.310647} + - time: 2.366667 + value: {x: 4.347355, y: 4.347355, z: 4.347355} + - time: 2.400000 + value: {x: 4.382717, y: 4.382717, z: 4.382717} + - time: 2.433333 + value: {x: 4.416868, y: 4.416868, z: 4.416868} + - time: 2.466667 + value: {x: 4.449579, y: 4.449579, z: 4.449579} + - time: 2.500000 + value: {x: 4.480500, y: 4.480500, z: 4.480500} + - time: 2.533333 + value: {x: 4.508671, y: 4.508671, z: 4.508671} + - time: 2.566667 + value: {x: 4.533517, y: 4.533517, z: 4.533517} + - time: 2.600000 + value: {x: 4.555696, y: 4.555696, z: 4.555696} + - time: 2.633333 + value: {x: 4.576101, y: 4.576101, z: 4.576101} + - time: 2.666667 + value: {x: 4.595662, y: 4.595662, z: 4.595662} + - time: 2.800000 + value: {x: 4.672712, y: 4.672712, z: 4.672712} + - time: 2.833333 + value: {x: 4.691670, y: 4.691670, z: 4.691670} + - time: 2.866667 + value: {x: 4.709744, y: 4.709744, z: 4.709744} + - time: 2.900000 + value: {x: 4.726344, y: 4.726344, z: 4.726344} + - time: 2.933333 + value: {x: 4.741231, y: 4.741231, z: 4.741231} + - time: 2.966667 + value: {x: 4.754402, y: 4.754402, z: 4.754402} + - time: 3.000000 + value: {x: 4.765959, y: 4.765959, z: 4.765959} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_19: + position: + - time: 0.000000 + value: {x: 0.111932, y: 2.511905, z: -0.113304} + - time: 0.033333 + value: {x: 0.111932, y: 2.511905, z: -0.113304} + - time: 0.066667 + value: {x: -0.009949, y: 1.915579, z: -0.039922} + - time: 0.100000 + value: {x: -0.083677, y: 1.296275, z: -0.053058} + - time: 0.133333 + value: {x: -0.168800, y: 0.768014, z: -0.157933} + - time: 0.166667 + value: {x: -0.299109, y: 0.439974, z: -0.382943} + - time: 0.200000 + value: {x: -0.466170, y: 0.309933, z: -0.629083} + - time: 0.233333 + value: {x: -0.606284, y: 0.265766, z: -0.807298} + - time: 0.266667 + value: {x: -0.692158, y: 0.252168, z: -0.914719} + - time: 0.300000 + value: {x: -0.767018, y: 0.245856, z: -1.007522} + - time: 0.333333 + value: {x: -0.844486, y: 0.243894, z: -1.098753} + - time: 0.366667 + value: {x: -0.925180, y: 0.245021, z: -1.187400} + - time: 0.400000 + value: {x: -1.008386, y: 0.248143, z: -1.273672} + - time: 0.433333 + value: {x: -1.093161, y: 0.252903, z: -1.358171} + - time: 0.466667 + value: {x: -1.178109, y: 0.258992, z: -1.441952} + - time: 0.500000 + value: {x: -1.261266, y: 0.265887, z: -1.526650} + - time: 0.533333 + value: {x: -1.341453, y: 0.273091, z: -1.613280} + - time: 0.566667 + value: {x: -1.418767, y: 0.280259, z: -1.701654} + - time: 0.600000 + value: {x: -1.494103, y: 0.287259, z: -1.790927} + - time: 0.633333 + value: {x: -1.568182, y: 0.294042, z: -1.880413} + - time: 0.666667 + value: {x: -1.641711, y: 0.300609, z: -1.969449} + - time: 0.700000 + value: {x: -1.715472, y: 0.306992, z: -2.057302} + - time: 0.733333 + value: {x: -1.790005, y: 0.313243, z: -2.143452} + - time: 0.766667 + value: {x: -1.865532, y: 0.319432, z: -2.227650} + - time: 0.800000 + value: {x: -1.942054, y: 0.325636, z: -2.309841} + - time: 0.833333 + value: {x: -2.019491, y: 0.331942, z: -2.390033} + - time: 0.866667 + value: {x: -2.097703, y: 0.338437, z: -2.468279} + - time: 0.900000 + value: {x: -2.176476, y: 0.345206, z: -2.544702} + - time: 0.933333 + value: {x: -2.255573, y: 0.352324, z: -2.619426} + - time: 0.966667 + value: {x: -2.334688, y: 0.359858, z: -2.692638} + - time: 1.000000 + value: {x: -2.413632, y: 0.367957, z: -2.764303} + - time: 1.033333 + value: {x: -2.492167, y: 0.376643, z: -2.834558} + - time: 1.066667 + value: {x: -2.569955, y: 0.385936, z: -2.903611} + - time: 1.100000 + value: {x: -2.646635, y: 0.395860, z: -2.971672} + - time: 1.133333 + value: {x: -2.721675, y: 0.406424, z: -3.039109} + - time: 1.166667 + value: {x: -2.794100, y: 0.417702, z: -3.106566} + - time: 1.200000 + value: {x: -2.863827, y: 0.429905, z: -3.173598} + - time: 1.233333 + value: {x: -2.930725, y: 0.442785, z: -3.240568} + - time: 1.266667 + value: {x: -2.994799, y: 0.456295, z: -3.307431} + - time: 1.300000 + value: {x: -3.055441, y: 0.470620, z: -3.374190} + - time: 1.333333 + value: {x: -3.112283, y: 0.485859, z: -3.440622} + - time: 1.366667 + value: {x: -3.166794, y: 0.501639, z: -3.506123} + - time: 1.400000 + value: {x: -3.218800, y: 0.518109, z: -3.570321} + - time: 1.433333 + value: {x: -3.267922, y: 0.535538, z: -3.632352} + - time: 1.466667 + value: {x: -3.315325, y: 0.553320, z: -3.692808} + - time: 1.500000 + value: {x: -3.359951, y: 0.571938, z: -3.750761} + - time: 1.533333 + value: {x: -3.402230, y: 0.591119, z: -3.806220} + - time: 1.566667 + value: {x: -3.442721, y: 0.610591, z: -3.859725} + - time: 1.600000 + value: {x: -3.479827, y: 0.630913, z: -3.909365} + - time: 1.633333 + value: {x: -3.515904, y: 0.651115, z: -3.957705} + - time: 1.666667 + value: {x: -3.547790, y: 0.672148, z: -4.001028} + - time: 1.700000 + value: {x: -3.578958, y: 0.692855, z: -4.043334} + - time: 1.733333 + value: {x: -3.605972, y: 0.713949, z: -4.080210} + - time: 1.766667 + value: {x: -3.632582, y: 0.734617, z: -4.116475} + - time: 1.800000 + value: {x: -3.654514, y: 0.755057, z: -4.146428} + - time: 1.833333 + value: {x: -3.676168, y: 0.775045, z: -4.175939} + - time: 1.866667 + value: {x: -3.694053, y: 0.793886, z: -4.200076} + - time: 1.900000 + value: {x: -3.710834, y: 0.812103, z: -4.222610} + - time: 1.933333 + value: {x: -3.725857, y: 0.829032, z: -4.242556} + - time: 1.966667 + value: {x: -3.738313, y: 0.844238, z: -4.258736} + - time: 2.000000 + value: {x: -3.750631, y: 0.859037, z: -4.274699} + - time: 2.033333 + value: {x: -3.760502, y: 0.871322, z: -4.287175} + - time: 2.066667 + value: {x: -3.769506, y: 0.882546, z: -4.298403} + - time: 2.100000 + value: {x: -3.778425, y: 0.893439, z: -4.309504} + - time: 2.133333 + value: {x: -3.785585, y: 0.901977, z: -4.318253} + - time: 2.166667 + value: {x: -3.792235, y: 0.909690, z: -4.326309} + - time: 2.200000 + value: {x: -3.798835, y: 0.917150, z: -4.334290} + - time: 2.233333 + value: {x: -3.804881, y: 0.923670, z: -4.341593} + - time: 2.266667 + value: {x: -3.810026, y: 0.928774, z: -4.347794} + - time: 2.333333 + value: {x: -3.820188, y: 0.938425, z: -4.360006} + - time: 2.366667 + value: {x: -3.825013, y: 0.942728, z: -4.365808} + - time: 2.400000 + value: {x: -3.829211, y: 0.946029, z: -4.370918} + - time: 2.466667 + value: {x: -3.837399, y: 0.952198, z: -4.380844} + - time: 2.533333 + value: {x: -3.845198, y: 0.957761, z: -4.390255} + - time: 2.566667 + value: {x: -3.848742, y: 0.960066, z: -4.394566} + - time: 2.633333 + value: {x: -3.855232, y: 0.963995, z: -4.402479} + - time: 2.700000 + value: {x: -3.861050, y: 0.967352, z: -4.409536} + - time: 2.733333 + value: {x: -3.863659, y: 0.968806, z: -4.412687} + - time: 2.766667 + value: {x: -3.866039, y: 0.970104, z: -4.415560} + - time: 2.800000 + value: {x: -3.868174, y: 0.971243, z: -4.418127} + - time: 2.833333 + value: {x: -3.870039, y: 0.972218, z: -4.420368} + - time: 2.866667 + value: {x: -3.871614, y: 0.973024, z: -4.422256} + - time: 2.900000 + value: {x: -3.872877, y: 0.973660, z: -4.423769} + - time: 2.933333 + value: {x: -3.873810, y: 0.974118, z: -4.424881} + - time: 2.966667 + value: {x: -3.874384, y: 0.974396, z: -4.425568} + - time: 3.000000 + value: {x: -3.874580, y: 0.974490, z: -4.425802} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.445164, y: 0.445164, z: 0.445164} + - time: 0.033333 + value: {x: 0.445245, y: 0.445245, z: 0.445245} + - time: 0.066667 + value: {x: 0.464094, y: 0.464094, z: 0.464094} + - time: 0.100000 + value: {x: 0.492122, y: 0.492122, z: 0.492122} + - time: 0.133333 + value: {x: 0.526026, y: 0.526026, z: 0.526026} + - time: 0.166667 + value: {x: 0.561613, y: 0.561613, z: 0.561613} + - time: 0.200000 + value: {x: 0.599658, y: 0.599658, z: 0.599658} + - time: 0.233333 + value: {x: 0.643168, y: 0.643168, z: 0.643168} + - time: 0.266667 + value: {x: 0.692433, y: 0.692433, z: 0.692433} + - time: 0.300000 + value: {x: 0.746579, y: 0.746579, z: 0.746579} + - time: 0.333333 + value: {x: 0.805048, y: 0.805048, z: 0.805048} + - time: 0.366667 + value: {x: 0.867478, y: 0.867478, z: 0.867478} + - time: 0.400000 + value: {x: 0.933566, y: 0.933566, z: 0.933566} + - time: 0.433333 + value: {x: 1.003164, y: 1.003164, z: 1.003164} + - time: 0.466667 + value: {x: 1.076298, y: 1.076298, z: 1.076298} + - time: 0.500000 + value: {x: 1.153070, y: 1.153070, z: 1.153070} + - time: 0.533333 + value: {x: 1.233499, y: 1.233499, z: 1.233499} + - time: 0.566667 + value: {x: 1.317310, y: 1.317310, z: 1.317310} + - time: 0.600000 + value: {x: 1.404142, y: 1.404142, z: 1.404142} + - time: 0.633333 + value: {x: 1.493636, y: 1.493636, z: 1.493636} + - time: 0.666667 + value: {x: 1.585259, y: 1.585259, z: 1.585259} + - time: 0.700000 + value: {x: 1.678368, y: 1.678368, z: 1.678368} + - time: 0.733333 + value: {x: 1.772589, y: 1.772589, z: 1.772589} + - time: 0.766667 + value: {x: 1.867811, y: 1.867811, z: 1.867811} + - time: 0.800000 + value: {x: 1.963957, y: 1.963957, z: 1.963957} + - time: 0.866667 + value: {x: 2.157946, y: 2.157946, z: 2.157946} + - time: 0.900000 + value: {x: 2.254216, y: 2.254216, z: 2.254216} + - time: 0.933333 + value: {x: 2.348717, y: 2.348717, z: 2.348717} + - time: 0.966667 + value: {x: 2.441031, y: 2.441031, z: 2.441031} + - time: 1.000000 + value: {x: 2.531534, y: 2.531534, z: 2.531534} + - time: 1.066667 + value: {x: 2.710567, y: 2.710567, z: 2.710567} + - time: 1.100000 + value: {x: 2.801203, y: 2.801203, z: 2.801203} + - time: 1.133333 + value: {x: 2.893323, y: 2.893323, z: 2.893323} + - time: 1.166667 + value: {x: 2.986130, y: 2.986130, z: 2.986130} + - time: 1.200000 + value: {x: 3.078176, y: 3.078176, z: 3.078176} + - time: 1.233333 + value: {x: 3.168191, y: 3.168191, z: 3.168191} + - time: 1.266667 + value: {x: 3.254909, y: 3.254909, z: 3.254909} + - time: 1.300000 + value: {x: 3.337935, y: 3.337935, z: 3.337935} + - time: 1.333333 + value: {x: 3.418286, y: 3.418286, z: 3.418286} + - time: 1.366667 + value: {x: 3.497911, y: 3.497911, z: 3.497911} + - time: 1.400000 + value: {x: 3.578004, y: 3.578004, z: 3.578004} + - time: 1.433333 + value: {x: 3.658991, y: 3.658991, z: 3.658991} + - time: 1.466667 + value: {x: 3.740506, y: 3.740506, z: 3.740506} + - time: 1.500000 + value: {x: 3.821561, y: 3.821561, z: 3.821561} + - time: 1.533333 + value: {x: 3.900411, y: 3.900411, z: 3.900411} + - time: 1.566667 + value: {x: 3.975029, y: 3.975029, z: 3.975029} + - time: 1.600000 + value: {x: 4.044199, y: 4.044199, z: 4.044199} + - time: 1.633333 + value: {x: 4.107694, y: 4.107694, z: 4.107694} + - time: 1.666667 + value: {x: 4.166253, y: 4.166253, z: 4.166253} + - time: 1.700000 + value: {x: 4.220476, y: 4.220476, z: 4.220476} + - time: 1.733333 + value: {x: 4.271375, y: 4.271375, z: 4.271375} + - time: 1.766667 + value: {x: 4.320268, y: 4.320268, z: 4.320268} + - time: 1.800000 + value: {x: 4.368763, y: 4.368763, z: 4.368763} + - time: 1.833333 + value: {x: 4.417922, y: 4.417922, z: 4.417922} + - time: 1.900000 + value: {x: 4.517968, y: 4.517968, z: 4.517968} + - time: 1.933333 + value: {x: 4.566476, y: 4.566476, z: 4.566476} + - time: 1.966667 + value: {x: 4.611763, y: 4.611763, z: 4.611763} + - time: 2.000000 + value: {x: 4.652494, y: 4.652494, z: 4.652494} + - time: 2.033333 + value: {x: 4.687695, y: 4.687695, z: 4.687695} + - time: 2.066667 + value: {x: 4.716606, y: 4.716606, z: 4.716606} + - time: 2.100000 + value: {x: 4.739505, y: 4.739505, z: 4.739505} + - time: 2.133333 + value: {x: 4.757809, y: 4.757809, z: 4.757809} + - time: 2.166667 + value: {x: 4.773938, y: 4.773938, z: 4.773938} + - time: 2.200000 + value: {x: 4.790510, y: 4.790510, z: 4.790510} + - time: 2.233333 + value: {x: 4.809482, y: 4.809482, z: 4.809482} + - time: 2.266667 + value: {x: 4.831723, y: 4.831723, z: 4.831723} + - time: 2.300000 + value: {x: 4.856876, y: 4.856876, z: 4.856876} + - time: 2.333333 + value: {x: 4.884084, y: 4.884084, z: 4.884084} + - time: 2.366667 + value: {x: 4.912894, y: 4.912894, z: 4.912894} + - time: 2.400000 + value: {x: 4.943107, y: 4.943107, z: 4.943107} + - time: 2.433333 + value: {x: 4.974583, y: 4.974583, z: 4.974583} + - time: 2.466667 + value: {x: 5.007453, y: 5.007453, z: 5.007453} + - time: 2.500000 + value: {x: 5.042085, y: 5.042085, z: 5.042085} + - time: 2.533333 + value: {x: 5.077726, y: 5.077726, z: 5.077726} + - time: 2.600000 + value: {x: 5.149504, y: 5.149504, z: 5.149504} + - time: 2.633333 + value: {x: 5.185024, y: 5.185024, z: 5.185024} + - time: 2.666667 + value: {x: 5.219225, y: 5.219225, z: 5.219225} + - time: 2.700000 + value: {x: 5.251043, y: 5.251043, z: 5.251043} + - time: 2.733333 + value: {x: 5.279532, y: 5.279532, z: 5.279532} + - time: 2.766667 + value: {x: 5.303852, y: 5.303852, z: 5.303852} + - time: 2.800000 + value: {x: 5.323387, y: 5.323387, z: 5.323387} + - time: 2.833333 + value: {x: 5.337827, y: 5.337827, z: 5.337827} + - time: 2.866667 + value: {x: 5.347315, y: 5.347315, z: 5.347315} + - time: 2.900000 + value: {x: 5.352551, y: 5.352551, z: 5.352551} + - time: 2.933333 + value: {x: 5.354904, y: 5.354904, z: 5.354904} + - time: 3.000000 + value: {x: 5.357121, y: 5.357121, z: 5.357121} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_2: + position: + - time: 0.000000 + value: {x: -0.152201, y: 2.511905, z: -0.062050} + - time: 0.033333 + value: {x: -0.152201, y: 2.511905, z: -0.062050} + - time: 0.066667 + value: {x: 0.017076, y: 1.579751, z: 0.074979} + - time: 0.100000 + value: {x: 0.089139, y: 0.674691, z: 0.326516} + - time: 0.133333 + value: {x: 0.165194, y: 0.255545, z: 1.052547} + - time: 0.166667 + value: {x: 0.054733, y: 0.245855, z: 1.786510} + - time: 0.200000 + value: {x: -0.121311, y: 0.319771, z: 2.259156} + - time: 0.233333 + value: {x: -0.212514, y: 0.426117, z: 2.494296} + - time: 0.266667 + value: {x: -0.254941, y: 0.499509, z: 2.562928} + - time: 0.300000 + value: {x: -0.284118, y: 0.553920, z: 2.571920} + - time: 0.333333 + value: {x: -0.307646, y: 0.585830, z: 2.552998} + - time: 0.366667 + value: {x: -0.334967, y: 0.589037, z: 2.528865} + - time: 0.400000 + value: {x: -0.371562, y: 0.565902, z: 2.523299} + - time: 0.433333 + value: {x: -0.418892, y: 0.528958, z: 2.556623} + - time: 0.466667 + value: {x: -0.476705, y: 0.493757, z: 2.631027} + - time: 0.500000 + value: {x: -0.542242, y: 0.464843, z: 2.732671} + - time: 0.533333 + value: {x: -0.615284, y: 0.442501, z: 2.851654} + - time: 0.566667 + value: {x: -0.696302, y: 0.426263, z: 2.980848} + - time: 0.600000 + value: {x: -0.784894, y: 0.415872, z: 3.116344} + - time: 0.633333 + value: {x: -0.877711, y: 0.410200, z: 3.255612} + - time: 0.666667 + value: {x: -0.971691, y: 0.408474, z: 3.397933} + - time: 0.700000 + value: {x: -1.066741, y: 0.410400, z: 3.542209} + - time: 0.733333 + value: {x: -1.163215, y: 0.414894, z: 3.686788} + - time: 0.766667 + value: {x: -1.261418, y: 0.421432, z: 3.830943} + - time: 0.800000 + value: {x: -1.360069, y: 0.429325, z: 3.974784} + - time: 0.833333 + value: {x: -1.458102, y: 0.437982, z: 4.118468} + - time: 0.866667 + value: {x: -1.553782, y: 0.446951, z: 4.262616} + - time: 0.900000 + value: {x: -1.645169, y: 0.455888, z: 4.407986} + - time: 0.933333 + value: {x: -1.731800, y: 0.464561, z: 4.554648} + - time: 0.966667 + value: {x: -1.814202, y: 0.472789, z: 4.702242} + - time: 1.000000 + value: {x: -1.893983, y: 0.480544, z: 4.849836} + - time: 1.033333 + value: {x: -1.972016, y: 0.487736, z: 4.996911} + - time: 1.066667 + value: {x: -2.048924, y: 0.494372, z: 5.143052} + - time: 1.100000 + value: {x: -2.125417, y: 0.500524, z: 5.287812} + - time: 1.133333 + value: {x: -2.201982, y: 0.506246, z: 5.430847} + - time: 1.166667 + value: {x: -2.278859, y: 0.511592, z: 5.571875} + - time: 1.200000 + value: {x: -2.356151, y: 0.516741, z: 5.710741} + - time: 1.233333 + value: {x: -2.433988, y: 0.521859, z: 5.847252} + - time: 1.266667 + value: {x: -2.512137, y: 0.527129, z: 5.981361} + - time: 1.300000 + value: {x: -2.590216, y: 0.532751, z: 6.113087} + - time: 1.333333 + value: {x: -2.667888, y: 0.538927, z: 6.242387} + - time: 1.366667 + value: {x: -2.744854, y: 0.545856, z: 6.369198} + - time: 1.400000 + value: {x: -2.820688, y: 0.553725, z: 6.493481} + - time: 1.433333 + value: {x: -2.894953, y: 0.562701, z: 6.615185} + - time: 1.466667 + value: {x: -2.967243, y: 0.572925, z: 6.734209} + - time: 1.500000 + value: {x: -3.037372, y: 0.584507, z: 6.850336} + - time: 1.533333 + value: {x: -3.105228, y: 0.597517, z: 6.963287} + - time: 1.566667 + value: {x: -3.170757, y: 0.611985, z: 7.072746} + - time: 1.600000 + value: {x: -3.234051, y: 0.627900, z: 7.178341} + - time: 1.633333 + value: {x: -3.295300, y: 0.645218, z: 7.279673} + - time: 1.666667 + value: {x: -3.354544, y: 0.663862, z: 7.376472} + - time: 1.700000 + value: {x: -3.411578, y: 0.683771, z: 7.468575} + - time: 1.733333 + value: {x: -3.465618, y: 0.705395, z: 7.554443} + - time: 1.766667 + value: {x: -3.516923, y: 0.728059, z: 7.635036} + - time: 1.800000 + value: {x: -3.565503, y: 0.751560, z: 7.710457} + - time: 1.833333 + value: {x: -3.611027, y: 0.775952, z: 7.780071} + - time: 1.866667 + value: {x: -3.652657, y: 0.801359, z: 7.841877} + - time: 1.900000 + value: {x: -3.691608, y: 0.826858, z: 7.898472} + - time: 1.933333 + value: {x: -3.727314, y: 0.852546, z: 7.948555} + - time: 1.966667 + value: {x: -3.758980, y: 0.877833, z: 7.990437} + - time: 2.000000 + value: {x: -3.788647, y: 0.902422, z: 8.028751} + - time: 2.033333 + value: {x: -3.813313, y: 0.925148, z: 8.057384} + - time: 2.066667 + value: {x: -3.836437, y: 0.946478, z: 8.083500} + - time: 2.100000 + value: {x: -3.855940, y: 0.964898, z: 8.102619} + - time: 2.133333 + value: {x: -3.874130, y: 0.981739, z: 8.119801} + - time: 2.166667 + value: {x: -3.889467, y: 0.995229, z: 8.131866} + - time: 2.200000 + value: {x: -3.904230, y: 1.007958, z: 8.143543} + - time: 2.233333 + value: {x: -3.916471, y: 1.016971, z: 8.150906} + - time: 2.266667 + value: {x: -3.928389, y: 1.025647, z: 8.158386} + - time: 2.300000 + value: {x: -3.938957, y: 1.032166, z: 8.164001} + - time: 2.333333 + value: {x: -3.948664, y: 1.037434, z: 8.168705} + - time: 2.366667 + value: {x: -3.958073, y: 1.042487, z: 8.173565} + - time: 2.400000 + value: {x: -3.966383, y: 1.045722, z: 8.177067} + - time: 2.433333 + value: {x: -3.974251, y: 1.048508, z: 8.180450} + - time: 2.466667 + value: {x: -3.981821, y: 1.051174, z: 8.183990} + - time: 2.500000 + value: {x: -3.988869, y: 1.053255, z: 8.187252} + - time: 2.533333 + value: {x: -3.995331, y: 1.054651, z: 8.190125} + - time: 2.566667 + value: {x: -4.001478, y: 1.055986, z: 8.193100} + - time: 2.600000 + value: {x: -4.007288, y: 1.057256, z: 8.196136} + - time: 2.633333 + value: {x: -4.012747, y: 1.058454, z: 8.199196} + - time: 2.666667 + value: {x: -4.017696, y: 1.059271, z: 8.201984} + - time: 2.700000 + value: {x: -4.022249, y: 1.059987, z: 8.204697} + - time: 2.733333 + value: {x: -4.026405, y: 1.060652, z: 8.207329} + - time: 2.766667 + value: {x: -4.030148, y: 1.061261, z: 8.209839} + - time: 2.800000 + value: {x: -4.033457, y: 1.061808, z: 8.212173} + - time: 2.833333 + value: {x: -4.036314, y: 1.062288, z: 8.214294} + - time: 2.866667 + value: {x: -4.038696, y: 1.062694, z: 8.216141} + - time: 2.900000 + value: {x: -4.040585, y: 1.063021, z: 8.217670} + - time: 2.933333 + value: {x: -4.041960, y: 1.063262, z: 8.218830} + - time: 2.966667 + value: {x: -4.042801, y: 1.063412, z: 8.219566} + - time: 3.000000 + value: {x: -4.043085, y: 1.063463, z: 8.219822} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.415721, y: 0.415721, z: 0.415721} + - time: 0.033333 + value: {x: 0.416074, y: 0.416074, z: 0.416074} + - time: 0.066667 + value: {x: 0.457207, y: 0.457207, z: 0.457207} + - time: 0.100000 + value: {x: 0.509519, y: 0.509519, z: 0.509519} + - time: 0.133333 + value: {x: 0.564224, y: 0.564224, z: 0.564224} + - time: 0.166667 + value: {x: 0.617386, y: 0.617386, z: 0.617386} + - time: 0.200000 + value: {x: 0.682223, y: 0.682223, z: 0.682223} + - time: 0.233333 + value: {x: 0.755260, y: 0.755260, z: 0.755260} + - time: 0.266667 + value: {x: 0.838554, y: 0.838554, z: 0.838554} + - time: 0.300000 + value: {x: 0.930230, y: 0.930230, z: 0.930230} + - time: 0.333333 + value: {x: 1.029326, y: 1.029326, z: 1.029326} + - time: 0.366667 + value: {x: 1.134551, y: 1.134551, z: 1.134551} + - time: 0.400000 + value: {x: 1.244255, y: 1.244255, z: 1.244255} + - time: 0.433333 + value: {x: 1.357066, y: 1.357066, z: 1.357066} + - time: 0.466667 + value: {x: 1.472656, y: 1.472656, z: 1.472656} + - time: 0.500000 + value: {x: 1.591438, y: 1.591438, z: 1.591438} + - time: 0.533333 + value: {x: 1.713328, y: 1.713328, z: 1.713328} + - time: 0.566667 + value: {x: 1.837728, y: 1.837728, z: 1.837728} + - time: 0.600000 + value: {x: 1.964360, y: 1.964360, z: 1.964360} + - time: 0.633333 + value: {x: 2.093024, y: 2.093024, z: 2.093024} + - time: 0.666667 + value: {x: 2.222726, y: 2.222726, z: 2.222726} + - time: 0.700000 + value: {x: 2.351293, y: 2.351293, z: 2.351293} + - time: 0.733333 + value: {x: 2.476543, y: 2.476543, z: 2.476543} + - time: 0.766667 + value: {x: 2.597125, y: 2.597125, z: 2.597125} + - time: 0.800000 + value: {x: 2.713964, y: 2.713964, z: 2.713964} + - time: 0.833333 + value: {x: 2.828538, y: 2.828538, z: 2.828538} + - time: 0.866667 + value: {x: 2.941392, y: 2.941392, z: 2.941392} + - time: 0.900000 + value: {x: 3.051310, y: 3.051310, z: 3.051310} + - time: 0.933333 + value: {x: 3.156682, y: 3.156682, z: 3.156682} + - time: 0.966667 + value: {x: 3.257189, y: 3.257189, z: 3.257189} + - time: 1.000000 + value: {x: 3.355540, y: 3.355540, z: 3.355540} + - time: 1.033333 + value: {x: 3.455596, y: 3.455596, z: 3.455596} + - time: 1.066667 + value: {x: 3.559246, y: 3.559246, z: 3.559246} + - time: 1.100000 + value: {x: 3.666017, y: 3.666017, z: 3.666017} + - time: 1.133333 + value: {x: 3.774012, y: 3.774012, z: 3.774012} + - time: 1.166667 + value: {x: 3.880785, y: 3.880785, z: 3.880785} + - time: 1.200000 + value: {x: 3.984472, y: 3.984472, z: 3.984472} + - time: 1.233333 + value: {x: 4.084220, y: 4.084220, z: 4.084220} + - time: 1.266667 + value: {x: 4.180740, y: 4.180740, z: 4.180740} + - time: 1.300000 + value: {x: 4.275403, y: 4.275403, z: 4.275403} + - time: 1.333333 + value: {x: 4.368000, y: 4.368000, z: 4.368000} + - time: 1.366667 + value: {x: 4.457176, y: 4.457176, z: 4.457176} + - time: 1.400000 + value: {x: 4.541500, y: 4.541500, z: 4.541500} + - time: 1.433333 + value: {x: 4.620730, y: 4.620730, z: 4.620730} + - time: 1.466667 + value: {x: 4.696779, y: 4.696779, z: 4.696779} + - time: 1.533333 + value: {x: 4.847025, y: 4.847025, z: 4.847025} + - time: 1.566667 + value: {x: 4.921736, y: 4.921736, z: 4.921736} + - time: 1.600000 + value: {x: 4.994276, y: 4.994276, z: 4.994276} + - time: 1.633333 + value: {x: 5.062388, y: 5.062388, z: 5.062388} + - time: 1.666667 + value: {x: 5.124476, y: 5.124476, z: 5.124476} + - time: 1.700000 + value: {x: 5.180327, y: 5.180327, z: 5.180327} + - time: 1.733333 + value: {x: 5.230880, y: 5.230880, z: 5.230880} + - time: 1.766667 + value: {x: 5.277474, y: 5.277474, z: 5.277474} + - time: 1.800000 + value: {x: 5.321435, y: 5.321435, z: 5.321435} + - time: 1.833333 + value: {x: 5.364244, y: 5.364244, z: 5.364244} + - time: 1.866667 + value: {x: 5.406662, y: 5.406662, z: 5.406662} + - time: 1.900000 + value: {x: 5.448214, y: 5.448214, z: 5.448214} + - time: 1.933333 + value: {x: 5.487783, y: 5.487783, z: 5.487783} + - time: 1.966667 + value: {x: 5.524017, y: 5.524017, z: 5.524017} + - time: 2.000000 + value: {x: 5.556031, y: 5.556031, z: 5.556031} + - time: 2.033333 + value: {x: 5.583856, y: 5.583856, z: 5.583856} + - time: 2.066667 + value: {x: 5.608017, y: 5.608017, z: 5.608017} + - time: 2.100000 + value: {x: 5.630013, y: 5.630013, z: 5.630013} + - time: 2.133333 + value: {x: 5.651185, y: 5.651185, z: 5.651185} + - time: 2.166667 + value: {x: 5.673272, y: 5.673272, z: 5.673272} + - time: 2.200000 + value: {x: 5.696679, y: 5.696679, z: 5.696679} + - time: 2.233333 + value: {x: 5.722258, y: 5.722258, z: 5.722258} + - time: 2.300000 + value: {x: 5.775162, y: 5.775162, z: 5.775162} + - time: 2.333333 + value: {x: 5.800110, y: 5.800110, z: 5.800110} + - time: 2.366667 + value: {x: 5.822300, y: 5.822300, z: 5.822300} + - time: 2.400000 + value: {x: 5.841924, y: 5.841924, z: 5.841924} + - time: 2.433333 + value: {x: 5.859577, y: 5.859577, z: 5.859577} + - time: 2.466667 + value: {x: 5.876734, y: 5.876734, z: 5.876734} + - time: 2.533333 + value: {x: 5.913412, y: 5.913412, z: 5.913412} + - time: 2.566667 + value: {x: 5.930969, y: 5.930969, z: 5.930969} + - time: 2.600000 + value: {x: 5.948049, y: 5.948049, z: 5.948049} + - time: 2.633333 + value: {x: 5.964876, y: 5.964876, z: 5.964876} + - time: 2.666667 + value: {x: 5.981193, y: 5.981193, z: 5.981193} + - time: 2.700000 + value: {x: 5.996625, y: 5.996625, z: 5.996625} + - time: 2.733333 + value: {x: 6.010697, y: 6.010697, z: 6.010697} + - time: 2.766667 + value: {x: 6.022766, y: 6.022766, z: 6.022766} + - time: 2.800000 + value: {x: 6.031975, y: 6.031975, z: 6.031975} + - time: 2.833333 + value: {x: 6.037785, y: 6.037785, z: 6.037785} + - time: 2.866667 + value: {x: 6.040339, y: 6.040339, z: 6.040339} + - time: 2.900000 + value: {x: 6.040371, y: 6.040371, z: 6.040371} + - time: 2.933333 + value: {x: 6.039230, y: 6.039230, z: 6.039230} + - time: 2.966667 + value: {x: 6.038514, y: 6.038514, z: 6.038514} + - time: 3.000000 + value: {x: 6.039588, y: 6.039588, z: 6.039588} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_3: + position: + - time: 0.000000 + value: {x: -0.164718, y: 2.511905, z: 0.028021} + - time: 0.033333 + value: {x: -0.164718, y: 2.511905, z: 0.028021} + - time: 0.066667 + value: {x: 0.050166, y: 1.579751, z: 0.055026} + - time: 0.100000 + value: {x: 0.249598, y: 0.674692, z: 0.229961} + - time: 0.133333 + value: {x: 0.820437, y: 0.255545, z: 0.793912} + - time: 0.166667 + value: {x: 1.294517, y: 0.245855, z: 1.457431} + - time: 0.200000 + value: {x: 1.539369, y: 0.319771, z: 1.937295} + - time: 0.233333 + value: {x: 1.587130, y: 0.426117, z: 2.185024} + - time: 0.266667 + value: {x: 1.562757, y: 0.499509, z: 2.268169} + - time: 0.300000 + value: {x: 1.518711, y: 0.553920, z: 2.293619} + - time: 0.333333 + value: {x: 1.467114, y: 0.585831, z: 2.292146} + - time: 0.366667 + value: {x: 1.415660, y: 0.589038, z: 2.287643} + - time: 0.400000 + value: {x: 1.372507, y: 0.565903, z: 2.303168} + - time: 0.433333 + value: {x: 1.348088, y: 0.528958, z: 2.356655} + - time: 0.466667 + value: {x: 1.343950, y: 0.493758, z: 2.449811} + - time: 0.500000 + value: {x: 1.347606, y: 0.464843, z: 2.570179} + - time: 0.533333 + value: {x: 1.352037, y: 0.442501, z: 2.709434} + - time: 0.566667 + value: {x: 1.355472, y: 0.426264, z: 2.861535} + - time: 0.600000 + value: {x: 1.361016, y: 0.415872, z: 3.022469} + - time: 0.633333 + value: {x: 1.369766, y: 0.410200, z: 3.188360} + - time: 0.666667 + value: {x: 1.380657, y: 0.408474, z: 3.357304} + - time: 0.700000 + value: {x: 1.393242, y: 0.410400, z: 3.528318} + - time: 0.733333 + value: {x: 1.408063, y: 0.414894, z: 3.700012} + - time: 0.766667 + value: {x: 1.425338, y: 0.421432, z: 3.871849} + - time: 0.800000 + value: {x: 1.443606, y: 0.429325, z: 4.043502} + - time: 0.833333 + value: {x: 1.461493, y: 0.437982, z: 4.214775} + - time: 0.866667 + value: {x: 1.477671, y: 0.446951, z: 4.385594} + - time: 0.900000 + value: {x: 1.491243, y: 0.455888, z: 4.555870} + - time: 0.933333 + value: {x: 1.502495, y: 0.464562, z: 4.725434} + - time: 0.966667 + value: {x: 1.510015, y: 0.472789, z: 4.894332} + - time: 1.000000 + value: {x: 1.513103, y: 0.480544, z: 5.062510} + - time: 1.033333 + value: {x: 1.510641, y: 0.487736, z: 5.229999} + - time: 1.066667 + value: {x: 1.504300, y: 0.494372, z: 5.396534} + - time: 1.100000 + value: {x: 1.496152, y: 0.500524, z: 5.561821} + - time: 1.133333 + value: {x: 1.486778, y: 0.506246, z: 5.725704} + - time: 1.166667 + value: {x: 1.475898, y: 0.511592, z: 5.888066} + - time: 1.200000 + value: {x: 1.463770, y: 0.516741, z: 6.048791} + - time: 1.233333 + value: {x: 1.451019, y: 0.521859, z: 6.207694} + - time: 1.266667 + value: {x: 1.438495, y: 0.527129, z: 6.364549} + - time: 1.300000 + value: {x: 1.426659, y: 0.532751, z: 6.519151} + - time: 1.333333 + value: {x: 1.415691, y: 0.538927, z: 6.671302} + - time: 1.366667 + value: {x: 1.405600, y: 0.545856, z: 6.820805} + - time: 1.400000 + value: {x: 1.396260, y: 0.553725, z: 6.967453} + - time: 1.433333 + value: {x: 1.387417, y: 0.562701, z: 7.111028} + - time: 1.466667 + value: {x: 1.378835, y: 0.572925, z: 7.251289} + - time: 1.500000 + value: {x: 1.370331, y: 0.584507, z: 7.387966} + - time: 1.533333 + value: {x: 1.361766, y: 0.597518, z: 7.520778} + - time: 1.566667 + value: {x: 1.353031, y: 0.611985, z: 7.649427} + - time: 1.600000 + value: {x: 1.344095, y: 0.627900, z: 7.773618} + - time: 1.633333 + value: {x: 1.334921, y: 0.645218, z: 7.893082} + - time: 1.666667 + value: {x: 1.325456, y: 0.663862, z: 8.007601} + - time: 1.700000 + value: {x: 1.315628, y: 0.683771, z: 8.116940} + - time: 1.733333 + value: {x: 1.305036, y: 0.705395, z: 8.219402} + - time: 1.766667 + value: {x: 1.293833, y: 0.728059, z: 8.315958} + - time: 1.800000 + value: {x: 1.282015, y: 0.751560, z: 8.406698} + - time: 1.833333 + value: {x: 1.269392, y: 0.775953, z: 8.490929} + - time: 1.866667 + value: {x: 1.255428, y: 0.801359, z: 8.566526} + - time: 1.900000 + value: {x: 1.240853, y: 0.826858, z: 8.636295} + - time: 1.933333 + value: {x: 1.225350, y: 0.852546, z: 8.698847} + - time: 1.966667 + value: {x: 1.208683, y: 0.877833, z: 8.752327} + - time: 2.000000 + value: {x: 1.191971, y: 0.902422, z: 8.801706} + - time: 2.033333 + value: {x: 1.174218, y: 0.925148, z: 8.840242} + - time: 2.066667 + value: {x: 1.156878, y: 0.946479, z: 8.875784} + - time: 2.100000 + value: {x: 1.139427, y: 0.964897, z: 8.903416} + - time: 2.133333 + value: {x: 1.122564, y: 0.981739, z: 8.928665} + - time: 2.166667 + value: {x: 1.106094, y: 0.995229, z: 8.947996} + - time: 2.200000 + value: {x: 1.090322, y: 1.007958, z: 8.966646} + - time: 2.233333 + value: {x: 1.075140, y: 1.016971, z: 8.980232} + - time: 2.266667 + value: {x: 1.060673, y: 1.025647, z: 8.993708} + - time: 2.300000 + value: {x: 1.046878, y: 1.032166, z: 9.004841} + - time: 2.333333 + value: {x: 1.033774, y: 1.037434, z: 9.014692} + - time: 2.366667 + value: {x: 1.021382, y: 1.042486, z: 9.024488} + - time: 2.400000 + value: {x: 1.009689, y: 1.045721, z: 9.032501} + - time: 2.433333 + value: {x: 0.998699, y: 1.048508, z: 9.040140} + - time: 2.466667 + value: {x: 0.988409, y: 1.051173, z: 9.047714} + - time: 2.500000 + value: {x: 0.978815, y: 1.053255, z: 9.054743} + - time: 2.533333 + value: {x: 0.969913, y: 1.054651, z: 9.061090} + - time: 2.566667 + value: {x: 0.961694, y: 1.055986, z: 9.067320} + - time: 2.600000 + value: {x: 0.954149, y: 1.057255, z: 9.073387} + - time: 2.633333 + value: {x: 0.947273, y: 1.058453, z: 9.079254} + - time: 2.666667 + value: {x: 0.941056, y: 1.059271, z: 9.084587} + - time: 2.700000 + value: {x: 0.935489, y: 1.059987, z: 9.089611} + - time: 2.733333 + value: {x: 0.930562, y: 1.060652, z: 9.094322} + - time: 2.766667 + value: {x: 0.926264, y: 1.061261, z: 9.098669} + - time: 2.800000 + value: {x: 0.922584, y: 1.061808, z: 9.102613} + - time: 2.833333 + value: {x: 0.919510, y: 1.062288, z: 9.106096} + - time: 2.866667 + value: {x: 0.917027, y: 1.062694, z: 9.109068} + - time: 2.900000 + value: {x: 0.915124, y: 1.063021, z: 9.111477} + - time: 2.933333 + value: {x: 0.913784, y: 1.063262, z: 9.113264} + - time: 2.966667 + value: {x: 0.912992, y: 1.063411, z: 9.114382} + - time: 3.000000 + value: {x: 0.912731, y: 1.063463, z: 9.114763} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.208018, y: 0.208018, z: 0.208018} + - time: 0.033333 + value: {x: 0.208351, y: 0.208351, z: 0.208351} + - time: 0.066667 + value: {x: 0.247677, y: 0.247677, z: 0.247677} + - time: 0.100000 + value: {x: 0.294188, y: 0.294188, z: 0.294188} + - time: 0.133333 + value: {x: 0.340956, y: 0.340956, z: 0.340956} + - time: 0.166667 + value: {x: 0.380988, y: 0.380988, z: 0.380988} + - time: 0.200000 + value: {x: 0.428947, y: 0.428947, z: 0.428947} + - time: 0.233333 + value: {x: 0.482015, y: 0.482015, z: 0.482015} + - time: 0.266667 + value: {x: 0.540421, y: 0.540421, z: 0.540421} + - time: 0.300000 + value: {x: 0.602981, y: 0.602981, z: 0.602981} + - time: 0.333333 + value: {x: 0.668906, y: 0.668906, z: 0.668906} + - time: 0.366667 + value: {x: 0.737474, y: 0.737474, z: 0.737474} + - time: 0.400000 + value: {x: 0.807878, y: 0.807878, z: 0.807878} + - time: 0.433333 + value: {x: 0.879376, y: 0.879376, z: 0.879376} + - time: 0.466667 + value: {x: 0.951702, y: 0.951702, z: 0.951702} + - time: 0.500000 + value: {x: 1.025040, y: 1.025040, z: 1.025040} + - time: 0.533333 + value: {x: 1.099561, y: 1.099561, z: 1.099561} + - time: 0.566667 + value: {x: 1.175552, y: 1.175552, z: 1.175552} + - time: 0.600000 + value: {x: 1.253214, y: 1.253214, z: 1.253214} + - time: 0.633333 + value: {x: 1.332267, y: 1.332267, z: 1.332267} + - time: 0.666667 + value: {x: 1.411671, y: 1.411671, z: 1.411671} + - time: 0.700000 + value: {x: 1.489827, y: 1.489827, z: 1.489827} + - time: 0.733333 + value: {x: 1.565280, y: 1.565280, z: 1.565280} + - time: 0.766667 + value: {x: 1.636885, y: 1.636885, z: 1.636885} + - time: 0.800000 + value: {x: 1.704792, y: 1.704792, z: 1.704792} + - time: 0.833333 + value: {x: 1.769629, y: 1.769629, z: 1.769629} + - time: 0.866667 + value: {x: 1.831986, y: 1.831986, z: 1.831986} + - time: 0.900000 + value: {x: 1.892227, y: 1.892227, z: 1.892227} + - time: 0.933333 + value: {x: 1.950852, y: 1.950852, z: 1.950852} + - time: 0.966667 + value: {x: 2.008475, y: 2.008475, z: 2.008475} + - time: 1.000000 + value: {x: 2.065280, y: 2.065280, z: 2.065280} + - time: 1.033333 + value: {x: 2.121439, y: 2.121439, z: 2.121439} + - time: 1.066667 + value: {x: 2.177227, y: 2.177227, z: 2.177227} + - time: 1.133333 + value: {x: 2.288322, y: 2.288322, z: 2.288322} + - time: 1.166667 + value: {x: 2.344684, y: 2.344684, z: 2.344684} + - time: 1.200000 + value: {x: 2.402095, y: 2.402095, z: 2.402095} + - time: 1.233333 + value: {x: 2.460086, y: 2.460086, z: 2.460086} + - time: 1.266667 + value: {x: 2.517456, y: 2.517456, z: 2.517456} + - time: 1.300000 + value: {x: 2.572686, y: 2.572686, z: 2.572686} + - time: 1.333333 + value: {x: 2.624833, y: 2.624833, z: 2.624833} + - time: 1.366667 + value: {x: 2.674132, y: 2.674132, z: 2.674132} + - time: 1.400000 + value: {x: 2.721759, y: 2.721759, z: 2.721759} + - time: 1.433333 + value: {x: 2.768842, y: 2.768842, z: 2.768842} + - time: 1.466667 + value: {x: 2.815575, y: 2.815575, z: 2.815575} + - time: 1.500000 + value: {x: 2.861161, y: 2.861161, z: 2.861161} + - time: 1.533333 + value: {x: 2.904505, y: 2.904505, z: 2.904505} + - time: 1.566667 + value: {x: 2.945675, y: 2.945675, z: 2.945675} + - time: 1.600000 + value: {x: 2.985509, y: 2.985509, z: 2.985509} + - time: 1.633333 + value: {x: 3.024355, y: 3.024355, z: 3.024355} + - time: 1.666667 + value: {x: 3.062004, y: 3.062004, z: 3.062004} + - time: 1.700000 + value: {x: 3.098126, y: 3.098126, z: 3.098126} + - time: 1.733333 + value: {x: 3.132350, y: 3.132350, z: 3.132350} + - time: 1.766667 + value: {x: 3.164744, y: 3.164744, z: 3.164744} + - time: 1.800000 + value: {x: 3.195855, y: 3.195855, z: 3.195855} + - time: 1.866667 + value: {x: 3.256851, y: 3.256851, z: 3.256851} + - time: 1.900000 + value: {x: 3.287662, y: 3.287662, z: 3.287662} + - time: 1.933333 + value: {x: 3.318917, y: 3.318917, z: 3.318917} + - time: 1.966667 + value: {x: 3.350434, y: 3.350434, z: 3.350434} + - time: 2.000000 + value: {x: 3.381371, y: 3.381371, z: 3.381371} + - time: 2.033333 + value: {x: 3.411242, y: 3.411242, z: 3.411242} + - time: 2.066667 + value: {x: 3.439035, y: 3.439035, z: 3.439035} + - time: 2.100000 + value: {x: 3.464490, y: 3.464490, z: 3.464490} + - time: 2.133333 + value: {x: 3.487365, y: 3.487365, z: 3.487365} + - time: 2.166667 + value: {x: 3.508209, y: 3.508209, z: 3.508209} + - time: 2.200000 + value: {x: 3.527562, y: 3.527562, z: 3.527562} + - time: 2.266667 + value: {x: 3.565055, y: 3.565055, z: 3.565055} + - time: 2.333333 + value: {x: 3.602933, y: 3.602933, z: 3.602933} + - time: 2.366667 + value: {x: 3.621371, y: 3.621371, z: 3.621371} + - time: 2.400000 + value: {x: 3.639127, y: 3.639127, z: 3.639127} + - time: 2.433333 + value: {x: 3.656059, y: 3.656059, z: 3.656059} + - time: 2.500000 + value: {x: 3.688649, y: 3.688649, z: 3.688649} + - time: 2.533333 + value: {x: 3.704487, y: 3.704487, z: 3.704487} + - time: 2.566667 + value: {x: 3.719278, y: 3.719278, z: 3.719278} + - time: 2.600000 + value: {x: 3.733464, y: 3.733464, z: 3.733464} + - time: 2.666667 + value: {x: 3.761222, y: 3.761222, z: 3.761222} + - time: 2.700000 + value: {x: 3.774235, y: 3.774235, z: 3.774235} + - time: 2.733333 + value: {x: 3.786170, y: 3.786170, z: 3.786170} + - time: 2.766667 + value: {x: 3.797055, y: 3.797055, z: 3.797055} + - time: 2.800000 + value: {x: 3.807230, y: 3.807230, z: 3.807230} + - time: 2.900000 + value: {x: 3.836561, y: 3.836561, z: 3.836561} + - time: 2.933333 + value: {x: 3.846684, y: 3.846684, z: 3.846684} + - time: 2.966667 + value: {x: 3.858195, y: 3.858195, z: 3.858195} + - time: 3.000000 + value: {x: 3.871412, y: 3.871412, z: 3.871412} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_4: + position: + - time: 0.000000 + value: {x: -0.126325, y: 2.511905, z: 0.111827} + - time: 0.033333 + value: {x: -0.126325, y: 2.511905, z: 0.111827} + - time: 0.066667 + value: {x: 0.064208, y: 1.579751, z: 0.025949} + - time: 0.100000 + value: {x: 0.299330, y: 0.674692, z: 0.089586} + - time: 0.133333 + value: {x: 1.041762, y: 0.255545, z: 0.297675} + - time: 0.166667 + value: {x: 1.836089, y: 0.245855, z: 0.578722} + - time: 0.200000 + value: {x: 2.360210, y: 0.319772, z: 0.808463} + - time: 0.233333 + value: {x: 2.601320, y: 0.426117, z: 0.939898} + - time: 0.266667 + value: {x: 2.642742, y: 0.499509, z: 1.009367} + - time: 0.300000 + value: {x: 2.627699, y: 0.553920, z: 1.047393} + - time: 0.333333 + value: {x: 2.582126, y: 0.585831, z: 1.074171} + - time: 0.366667 + value: {x: 2.529869, y: 0.589038, z: 1.102308} + - time: 0.400000 + value: {x: 2.497332, y: 0.565903, z: 1.141454} + - time: 0.433333 + value: {x: 2.505937, y: 0.528958, z: 1.198942} + - time: 0.466667 + value: {x: 2.556732, y: 0.493758, z: 1.276302} + - time: 0.500000 + value: {x: 2.627065, y: 0.464843, z: 1.373769} + - time: 0.533333 + value: {x: 2.703245, y: 0.442501, z: 1.490552} + - time: 0.566667 + value: {x: 2.787259, y: 0.426264, z: 1.617309} + - time: 0.600000 + value: {x: 2.882385, y: 0.415872, z: 1.746869} + - time: 0.633333 + value: {x: 2.985073, y: 0.410200, z: 1.877231} + - time: 0.666667 + value: {x: 3.090095, y: 0.408475, z: 2.009900} + - time: 0.700000 + value: {x: 3.197168, y: 0.410400, z: 2.143800} + - time: 0.733333 + value: {x: 3.304784, y: 0.414895, z: 2.278418} + - time: 0.766667 + value: {x: 3.410175, y: 0.421432, z: 2.415235} + - time: 0.800000 + value: {x: 3.514782, y: 0.429325, z: 2.552550} + - time: 0.833333 + value: {x: 3.620335, y: 0.437982, z: 2.688612} + - time: 0.866667 + value: {x: 3.729106, y: 0.446951, z: 2.821410} + - time: 0.900000 + value: {x: 3.841421, y: 0.455889, z: 2.950471} + - time: 0.933333 + value: {x: 3.952726, y: 0.464562, z: 3.079125} + - time: 0.966667 + value: {x: 4.058526, y: 0.472790, z: 3.210714} + - time: 1.000000 + value: {x: 4.158576, y: 0.480544, z: 3.345271} + - time: 1.033333 + value: {x: 4.253216, y: 0.487736, z: 3.482433} + - time: 1.066667 + value: {x: 4.345205, y: 0.494372, z: 3.619954} + - time: 1.100000 + value: {x: 4.434270, y: 0.500524, z: 3.757930} + - time: 1.133333 + value: {x: 4.519837, y: 0.506246, z: 3.896685} + - time: 1.166667 + value: {x: 4.602245, y: 0.511592, z: 4.035773} + - time: 1.200000 + value: {x: 4.682436, y: 0.516742, z: 4.174358} + - time: 1.233333 + value: {x: 4.761318, y: 0.521859, z: 4.311582} + - time: 1.266667 + value: {x: 4.839673, y: 0.527130, z: 4.446669} + - time: 1.300000 + value: {x: 4.917683, y: 0.532751, z: 4.579277} + - time: 1.333333 + value: {x: 4.994936, y: 0.538927, z: 4.709500} + - time: 1.366667 + value: {x: 5.071362, y: 0.545856, z: 4.837143} + - time: 1.400000 + value: {x: 5.146475, y: 0.553725, z: 4.962307} + - time: 1.433333 + value: {x: 5.219191, y: 0.562701, z: 5.085520} + - time: 1.466667 + value: {x: 5.289038, y: 0.572925, z: 5.206810} + - time: 1.500000 + value: {x: 5.355539, y: 0.584507, z: 5.326185} + - time: 1.533333 + value: {x: 5.419416, y: 0.597518, z: 5.442720} + - time: 1.566667 + value: {x: 5.480780, y: 0.611985, z: 5.555944} + - time: 1.600000 + value: {x: 5.539316, y: 0.627900, z: 5.665720} + - time: 1.633333 + value: {x: 5.594782, y: 0.645218, z: 5.771893} + - time: 1.666667 + value: {x: 5.646969, y: 0.663862, z: 5.874342} + - time: 1.700000 + value: {x: 5.695566, y: 0.683771, z: 5.973005} + - time: 1.733333 + value: {x: 5.738979, y: 0.705395, z: 6.066933} + - time: 1.766667 + value: {x: 5.777611, y: 0.728059, z: 6.157043} + - time: 1.800000 + value: {x: 5.811520, y: 0.751560, z: 6.243414} + - time: 1.833333 + value: {x: 5.839962, y: 0.775953, z: 6.325716} + - time: 1.866667 + value: {x: 5.860683, y: 0.801359, z: 6.402954} + - time: 1.900000 + value: {x: 5.876549, y: 0.826858, z: 6.476532} + - time: 1.933333 + value: {x: 5.886059, y: 0.852546, z: 6.545824} + - time: 1.966667 + value: {x: 5.888079, y: 0.877833, z: 6.609346} + - time: 2.000000 + value: {x: 5.887545, y: 0.902422, z: 6.669680} + - time: 2.033333 + value: {x: 5.879139, y: 0.925148, z: 6.722326} + - time: 2.066667 + value: {x: 5.869726, y: 0.946479, z: 6.772038} + - time: 2.100000 + value: {x: 5.855749, y: 0.964898, z: 6.815319} + - time: 2.133333 + value: {x: 5.841419, y: 0.981740, z: 6.855946} + - time: 2.166667 + value: {x: 5.824526, y: 0.995229, z: 6.891171} + - time: 2.200000 + value: {x: 5.808392, y: 1.007958, z: 6.925045} + - time: 2.233333 + value: {x: 5.790592, y: 1.016971, z: 6.953911} + - time: 2.266667 + value: {x: 5.773870, y: 1.025648, z: 6.981897} + - time: 2.300000 + value: {x: 5.757080, y: 1.032166, z: 7.007082} + - time: 2.333333 + value: {x: 5.740765, y: 1.037434, z: 7.030376} + - time: 2.366667 + value: {x: 5.725552, y: 1.042486, z: 7.052839} + - time: 2.400000 + value: {x: 5.710600, y: 1.045721, z: 7.072950} + - time: 2.433333 + value: {x: 5.696589, y: 1.048508, z: 7.091959} + - time: 2.466667 + value: {x: 5.683662, y: 1.051174, z: 7.110142} + - time: 2.500000 + value: {x: 5.671591, y: 1.053255, z: 7.127062} + - time: 2.533333 + value: {x: 5.660301, y: 1.054651, z: 7.142607} + - time: 2.566667 + value: {x: 5.650047, y: 1.055986, z: 7.157297} + - time: 2.600000 + value: {x: 5.640797, y: 1.057255, z: 7.171101} + - time: 2.633333 + value: {x: 5.632515, y: 1.058454, z: 7.183983} + - time: 2.666667 + value: {x: 5.625044, y: 1.059271, z: 7.195658} + - time: 2.700000 + value: {x: 5.618462, y: 1.059987, z: 7.206331} + - time: 2.733333 + value: {x: 5.612761, y: 1.060652, z: 7.216022} + - time: 2.766667 + value: {x: 5.607897, y: 1.061261, z: 7.224691} + - time: 2.800000 + value: {x: 5.603830, y: 1.061808, z: 7.232313} + - time: 2.833333 + value: {x: 5.600519, y: 1.062288, z: 7.238853} + - time: 2.866667 + value: {x: 5.597919, y: 1.062694, z: 7.244278} + - time: 2.900000 + value: {x: 5.595984, y: 1.063021, z: 7.248552} + - time: 2.933333 + value: {x: 5.594664, y: 1.063262, z: 7.251646} + - time: 2.966667 + value: {x: 5.593910, y: 1.063411, z: 7.253529} + - time: 3.000000 + value: {x: 5.593670, y: 1.063463, z: 7.254164} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.301522, y: 0.301522, z: 0.301522} + - time: 0.033333 + value: {x: 0.301754, y: 0.301754, z: 0.301754} + - time: 0.066667 + value: {x: 0.357981, y: 0.357981, z: 0.357981} + - time: 0.100000 + value: {x: 0.426852, y: 0.426852, z: 0.426852} + - time: 0.133333 + value: {x: 0.501790, y: 0.501790, z: 0.501790} + - time: 0.166667 + value: {x: 0.573811, y: 0.573811, z: 0.573811} + - time: 0.200000 + value: {x: 0.655816, y: 0.655816, z: 0.655816} + - time: 0.233333 + value: {x: 0.747855, y: 0.747855, z: 0.747855} + - time: 0.266667 + value: {x: 0.846710, y: 0.846710, z: 0.846710} + - time: 0.300000 + value: {x: 0.951818, y: 0.951818, z: 0.951818} + - time: 0.333333 + value: {x: 1.062703, y: 1.062703, z: 1.062703} + - time: 0.366667 + value: {x: 1.178692, y: 1.178692, z: 1.178692} + - time: 0.400000 + value: {x: 1.298688, y: 1.298688, z: 1.298688} + - time: 0.433333 + value: {x: 1.421509, y: 1.421509, z: 1.421509} + - time: 0.466667 + value: {x: 1.546633, y: 1.546633, z: 1.546633} + - time: 0.500000 + value: {x: 1.674366, y: 1.674366, z: 1.674366} + - time: 0.533333 + value: {x: 1.805060, y: 1.805060, z: 1.805060} + - time: 0.566667 + value: {x: 1.938595, y: 1.938595, z: 1.938595} + - time: 0.600000 + value: {x: 2.074054, y: 2.074054, z: 2.074054} + - time: 0.633333 + value: {x: 2.210122, y: 2.210122, z: 2.210122} + - time: 0.666667 + value: {x: 2.345403, y: 2.345403, z: 2.345403} + - time: 0.700000 + value: {x: 2.477512, y: 2.477512, z: 2.477512} + - time: 0.733333 + value: {x: 2.604131, y: 2.604131, z: 2.604131} + - time: 0.766667 + value: {x: 2.723912, y: 2.723912, z: 2.723912} + - time: 0.800000 + value: {x: 2.837946, y: 2.837946, z: 2.837946} + - time: 0.833333 + value: {x: 2.948300, y: 2.948300, z: 2.948300} + - time: 0.866667 + value: {x: 3.056961, y: 3.056961, z: 3.056961} + - time: 0.900000 + value: {x: 3.164642, y: 3.164642, z: 3.164642} + - time: 0.933333 + value: {x: 3.271026, y: 3.271026, z: 3.271026} + - time: 0.966667 + value: {x: 3.375652, y: 3.375652, z: 3.375652} + - time: 1.000000 + value: {x: 3.477645, y: 3.477645, z: 3.477645} + - time: 1.033333 + value: {x: 3.577002, y: 3.577002, z: 3.577002} + - time: 1.066667 + value: {x: 3.674682, y: 3.674682, z: 3.674682} + - time: 1.100000 + value: {x: 3.771463, y: 3.771463, z: 3.771463} + - time: 1.133333 + value: {x: 3.866971, y: 3.866971, z: 3.866971} + - time: 1.166667 + value: {x: 3.959962, y: 3.959962, z: 3.959962} + - time: 1.200000 + value: {x: 4.049399, y: 4.049399, z: 4.049399} + - time: 1.233333 + value: {x: 4.134343, y: 4.134343, z: 4.134343} + - time: 1.266667 + value: {x: 4.213567, y: 4.213567, z: 4.213567} + - time: 1.300000 + value: {x: 4.286176, y: 4.286176, z: 4.286176} + - time: 1.333333 + value: {x: 4.352177, y: 4.352177, z: 4.352177} + - time: 1.366667 + value: {x: 4.412724, y: 4.412724, z: 4.412724} + - time: 1.400000 + value: {x: 4.469580, y: 4.469580, z: 4.469580} + - time: 1.433333 + value: {x: 4.524311, y: 4.524311, z: 4.524311} + - time: 1.466667 + value: {x: 4.577774, y: 4.577774, z: 4.577774} + - time: 1.500000 + value: {x: 4.629949, y: 4.629949, z: 4.629949} + - time: 1.533333 + value: {x: 4.679326, y: 4.679326, z: 4.679326} + - time: 1.566667 + value: {x: 4.723815, y: 4.723815, z: 4.723815} + - time: 1.600000 + value: {x: 4.762136, y: 4.762136, z: 4.762136} + - time: 1.633333 + value: {x: 4.794459, y: 4.794459, z: 4.794459} + - time: 1.666667 + value: {x: 4.821908, y: 4.821908, z: 4.821908} + - time: 1.700000 + value: {x: 4.845322, y: 4.845322, z: 4.845322} + - time: 1.733333 + value: {x: 4.865143, y: 4.865143, z: 4.865143} + - time: 1.766667 + value: {x: 4.882247, y: 4.882247, z: 4.882247} + - time: 1.800000 + value: {x: 4.897359, y: 4.897359, z: 4.897359} + - time: 1.833333 + value: {x: 4.910854, y: 4.910854, z: 4.910854} + - time: 1.866667 + value: {x: 4.922938, y: 4.922938, z: 4.922938} + - time: 1.900000 + value: {x: 4.933666, y: 4.933666, z: 4.933666} + - time: 1.933333 + value: {x: 4.942948, y: 4.942948, z: 4.942948} + - time: 1.966667 + value: {x: 4.950587, y: 4.950587, z: 4.950587} + - time: 2.000000 + value: {x: 4.956412, y: 4.956412, z: 4.956412} + - time: 2.033333 + value: {x: 4.960112, y: 4.960112, z: 4.960112} + - time: 2.066667 + value: {x: 4.961719, y: 4.961719, z: 4.961719} + - time: 2.100000 + value: {x: 4.961128, y: 4.961128, z: 4.961128} + - time: 2.133333 + value: {x: 4.958259, y: 4.958259, z: 4.958259} + - time: 2.166667 + value: {x: 4.952838, y: 4.952838, z: 4.952838} + - time: 2.200000 + value: {x: 4.945003, y: 4.945003, z: 4.945003} + - time: 2.233333 + value: {x: 4.934805, y: 4.934805, z: 4.934805} + - time: 2.266667 + value: {x: 4.922963, y: 4.922963, z: 4.922963} + - time: 2.300000 + value: {x: 4.910435, y: 4.910435, z: 4.910435} + - time: 2.333333 + value: {x: 4.898338, y: 4.898338, z: 4.898338} + - time: 2.366667 + value: {x: 4.887372, y: 4.887372, z: 4.887372} + - time: 2.400000 + value: {x: 4.877712, y: 4.877712, z: 4.877712} + - time: 2.433333 + value: {x: 4.868932, y: 4.868932, z: 4.868932} + - time: 2.466667 + value: {x: 4.860398, y: 4.860398, z: 4.860398} + - time: 2.500000 + value: {x: 4.852222, y: 4.852222, z: 4.852222} + - time: 2.533333 + value: {x: 4.843276, y: 4.843276, z: 4.843276} + - time: 2.566667 + value: {x: 4.832598, y: 4.832598, z: 4.832598} + - time: 2.633333 + value: {x: 4.809691, y: 4.809691, z: 4.809691} + - time: 2.666667 + value: {x: 4.798703, y: 4.798703, z: 4.798703} + - time: 2.700000 + value: {x: 4.788150, y: 4.788150, z: 4.788150} + - time: 2.733333 + value: {x: 4.777884, y: 4.777884, z: 4.777884} + - time: 2.766667 + value: {x: 4.768504, y: 4.768504, z: 4.768504} + - time: 2.800000 + value: {x: 4.761210, y: 4.761210, z: 4.761210} + - time: 2.833333 + value: {x: 4.757191, y: 4.757191, z: 4.757191} + - time: 2.866667 + value: {x: 4.757303, y: 4.757303, z: 4.757303} + - time: 2.900000 + value: {x: 4.762002, y: 4.762002, z: 4.762002} + - time: 2.933333 + value: {x: 4.771629, y: 4.771629, z: 4.771629} + - time: 2.966667 + value: {x: 4.786287, y: 4.786287, z: 4.786287} + - time: 3.000000 + value: {x: 4.805818, y: 4.805818, z: 4.805818} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_5: + position: + - time: 0.000000 + value: {x: -0.048261, y: 2.511905, z: 0.161983} + - time: 0.033333 + value: {x: -0.048261, y: 2.511905, z: 0.161983} + - time: 0.066667 + value: {x: 0.060458, y: 1.579751, z: 0.008867} + - time: 0.100000 + value: {x: 0.251484, y: 0.674692, z: 0.051554} + - time: 0.133333 + value: {x: 0.840212, y: 0.255545, z: 0.241194} + - time: 0.166667 + value: {x: 1.538933, y: 0.245855, z: 0.392116} + - time: 0.200000 + value: {x: 2.042172, y: 0.319772, z: 0.479038} + - time: 0.233333 + value: {x: 2.286804, y: 0.426117, z: 0.542162} + - time: 0.266667 + value: {x: 2.362504, y: 0.499509, z: 0.569023} + - time: 0.300000 + value: {x: 2.376536, y: 0.553920, z: 0.591313} + - time: 0.333333 + value: {x: 2.362002, y: 0.585831, z: 0.611367} + - time: 0.366667 + value: {x: 2.346419, y: 0.589038, z: 0.625660} + - time: 0.400000 + value: {x: 2.354343, y: 0.565903, z: 0.636338} + - time: 0.433333 + value: {x: 2.403475, y: 0.528958, z: 0.649976} + - time: 0.466667 + value: {x: 2.493901, y: 0.493758, z: 0.671634} + - time: 0.500000 + value: {x: 2.610992, y: 0.464843, z: 0.701500} + - time: 0.533333 + value: {x: 2.746242, y: 0.442501, z: 0.736685} + - time: 0.566667 + value: {x: 2.893524, y: 0.426264, z: 0.775902} + - time: 0.600000 + value: {x: 3.048553, y: 0.415872, z: 0.820098} + - time: 0.633333 + value: {x: 3.209294, y: 0.410200, z: 0.864006} + - time: 0.666667 + value: {x: 3.374067, y: 0.408475, z: 0.906418} + - time: 0.700000 + value: {x: 3.541885, y: 0.410400, z: 0.947043} + - time: 0.733333 + value: {x: 3.710538, y: 0.414895, z: 0.988007} + - time: 0.766667 + value: {x: 3.878880, y: 0.421432, z: 1.030900} + - time: 0.800000 + value: {x: 4.046546, y: 0.429325, z: 1.075358} + - time: 0.833333 + value: {x: 4.212913, y: 0.437982, z: 1.122109} + - time: 0.866667 + value: {x: 4.377421, y: 0.446951, z: 1.172054} + - time: 0.900000 + value: {x: 4.540609, y: 0.455889, z: 1.223247} + - time: 0.933333 + value: {x: 4.702057, y: 0.464562, z: 1.276413} + - time: 0.966667 + value: {x: 4.861850, y: 0.472789, z: 1.331061} + - time: 1.000000 + value: {x: 5.020525, y: 0.480544, z: 1.385389} + - time: 1.033333 + value: {x: 5.178491, y: 0.487736, z: 1.438082} + - time: 1.066667 + value: {x: 5.336128, y: 0.494372, z: 1.487852} + - time: 1.100000 + value: {x: 5.493096, y: 0.500524, z: 1.535340} + - time: 1.133333 + value: {x: 5.648718, y: 0.506246, z: 1.582106} + - time: 1.166667 + value: {x: 5.801842, y: 0.511592, z: 1.630795} + - time: 1.200000 + value: {x: 5.952461, y: 0.516742, z: 1.681182} + - time: 1.233333 + value: {x: 6.100578, y: 0.521859, z: 1.732902} + - time: 1.266667 + value: {x: 6.245653, y: 0.527129, z: 1.787005} + - time: 1.300000 + value: {x: 6.387196, y: 0.532751, z: 1.844353} + - time: 1.333333 + value: {x: 6.525392, y: 0.538927, z: 1.903931} + - time: 1.366667 + value: {x: 6.660671, y: 0.545856, z: 1.964037} + - time: 1.400000 + value: {x: 6.793255, y: 0.553725, z: 2.023456} + - time: 1.433333 + value: {x: 6.923058, y: 0.562701, z: 2.081717} + - time: 1.466667 + value: {x: 7.049688, y: 0.572925, z: 2.139127} + - time: 1.500000 + value: {x: 7.172812, y: 0.584507, z: 2.195744} + - time: 1.533333 + value: {x: 7.292255, y: 0.597518, z: 2.251211} + - time: 1.566667 + value: {x: 7.407921, y: 0.611985, z: 2.304913} + - time: 1.600000 + value: {x: 7.519566, y: 0.627900, z: 2.356643} + - time: 1.633333 + value: {x: 7.626945, y: 0.645218, z: 2.406273} + - time: 1.666667 + value: {x: 7.729843, y: 0.663862, z: 2.453756} + - time: 1.700000 + value: {x: 7.827991, y: 0.683771, z: 2.499131} + - time: 1.733333 + value: {x: 7.919628, y: 0.705395, z: 2.542159} + - time: 1.766667 + value: {x: 8.005566, y: 0.728059, z: 2.583476} + - time: 1.800000 + value: {x: 8.085842, y: 0.751560, z: 2.623243} + - time: 1.833333 + value: {x: 8.159695, y: 0.775953, z: 2.661474} + - time: 1.866667 + value: {x: 8.224880, y: 0.801359, z: 2.697965} + - time: 1.900000 + value: {x: 8.284279, y: 0.826858, z: 2.733195} + - time: 1.933333 + value: {x: 8.336430, y: 0.852546, z: 2.767051} + - time: 1.966667 + value: {x: 8.379398, y: 0.877833, z: 2.799347} + - time: 2.000000 + value: {x: 8.418430, y: 0.902422, z: 2.830508} + - time: 2.033333 + value: {x: 8.446720, y: 0.925148, z: 2.859303} + - time: 2.066667 + value: {x: 8.472324, y: 0.946478, z: 2.886888} + - time: 2.100000 + value: {x: 8.490322, y: 0.964898, z: 2.912316} + - time: 2.133333 + value: {x: 8.506294, y: 0.981739, z: 2.936548} + - time: 2.166667 + value: {x: 8.516788, y: 0.995229, z: 2.958747} + - time: 2.200000 + value: {x: 8.526936, y: 1.007958, z: 2.980121} + - time: 2.233333 + value: {x: 8.532536, y: 1.016971, z: 2.999441} + - time: 2.266667 + value: {x: 8.538345, y: 1.025648, z: 3.018083} + - time: 2.300000 + value: {x: 8.542278, y: 1.032166, z: 3.035289} + - time: 2.333333 + value: {x: 8.545326, y: 1.037434, z: 3.051415} + - time: 2.366667 + value: {x: 8.548634, y: 1.042486, z: 3.066878} + - time: 2.400000 + value: {x: 8.550625, y: 1.045721, z: 3.081010} + - time: 2.433333 + value: {x: 8.552582, y: 1.048508, z: 3.094357} + - time: 2.466667 + value: {x: 8.554798, y: 1.051174, z: 3.107040} + - time: 2.500000 + value: {x: 8.556831, y: 1.053255, z: 3.118851} + - time: 2.533333 + value: {x: 8.558559, y: 1.054651, z: 3.129735} + - time: 2.566667 + value: {x: 8.560486, y: 1.055986, z: 3.139948} + - time: 2.600000 + value: {x: 8.562569, y: 1.057255, z: 3.149477} + - time: 2.633333 + value: {x: 8.564774, y: 1.058454, z: 3.158311} + - time: 2.666667 + value: {x: 8.566792, y: 1.059271, z: 3.166295} + - time: 2.700000 + value: {x: 8.568829, y: 1.059987, z: 3.173548} + - time: 2.733333 + value: {x: 8.570862, y: 1.060652, z: 3.180086} + - time: 2.766667 + value: {x: 8.572857, y: 1.061261, z: 3.185895} + - time: 2.800000 + value: {x: 8.574760, y: 1.061808, z: 3.190966} + - time: 2.833333 + value: {x: 8.576519, y: 1.062288, z: 3.195285} + - time: 2.866667 + value: {x: 8.578083, y: 1.062694, z: 3.198845} + - time: 2.900000 + value: {x: 8.579395, y: 1.063021, z: 3.201630} + - time: 2.933333 + value: {x: 8.580406, y: 1.063262, z: 3.203632} + - time: 2.966667 + value: {x: 8.581051, y: 1.063412, z: 3.204841} + - time: 3.000000 + value: {x: 8.581284, y: 1.063463, z: 3.205247} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.433996, y: 0.433996, z: 0.433996} + - time: 0.033333 + value: {x: 0.434062, y: 0.434062, z: 0.434062} + - time: 0.066667 + value: {x: 0.492375, y: 0.492375, z: 0.492375} + - time: 0.100000 + value: {x: 0.562425, y: 0.562425, z: 0.562425} + - time: 0.133333 + value: {x: 0.637466, y: 0.637466, z: 0.637466} + - time: 0.166667 + value: {x: 0.712900, y: 0.712900, z: 0.712900} + - time: 0.200000 + value: {x: 0.793222, y: 0.793222, z: 0.793222} + - time: 0.233333 + value: {x: 0.883611, y: 0.883611, z: 0.883611} + - time: 0.266667 + value: {x: 0.981634, y: 0.981634, z: 0.981634} + - time: 0.300000 + value: {x: 1.085783, y: 1.085783, z: 1.085783} + - time: 0.333333 + value: {x: 1.195411, y: 1.195411, z: 1.195411} + - time: 0.366667 + value: {x: 1.309737, y: 1.309737, z: 1.309737} + - time: 0.400000 + value: {x: 1.427746, y: 1.427746, z: 1.427746} + - time: 0.433333 + value: {x: 1.548343, y: 1.548343, z: 1.548343} + - time: 0.466667 + value: {x: 1.670683, y: 1.670683, z: 1.670683} + - time: 0.500000 + value: {x: 1.794318, y: 1.794318, z: 1.794318} + - time: 0.533333 + value: {x: 1.918892, y: 1.918892, z: 1.918892} + - time: 0.566667 + value: {x: 2.044187, y: 2.044187, z: 2.044187} + - time: 0.600000 + value: {x: 2.170067, y: 2.170067, z: 2.170067} + - time: 0.633333 + value: {x: 2.296263, y: 2.296263, z: 2.296263} + - time: 0.666667 + value: {x: 2.422786, y: 2.422786, z: 2.422786} + - time: 0.700000 + value: {x: 2.549701, y: 2.549701, z: 2.549701} + - time: 0.733333 + value: {x: 2.675850, y: 2.675850, z: 2.675850} + - time: 0.766667 + value: {x: 2.800144, y: 2.800144, z: 2.800144} + - time: 0.800000 + value: {x: 2.923013, y: 2.923013, z: 2.923013} + - time: 0.833333 + value: {x: 3.043679, y: 3.043679, z: 3.043679} + - time: 0.866667 + value: {x: 3.159264, y: 3.159264, z: 3.159264} + - time: 0.900000 + value: {x: 3.266953, y: 3.266953, z: 3.266953} + - time: 0.933333 + value: {x: 3.365924, y: 3.365924, z: 3.365924} + - time: 0.966667 + value: {x: 3.457407, y: 3.457407, z: 3.457407} + - time: 1.000000 + value: {x: 3.545763, y: 3.545763, z: 3.545763} + - time: 1.033333 + value: {x: 3.636157, y: 3.636157, z: 3.636157} + - time: 1.066667 + value: {x: 3.731247, y: 3.731247, z: 3.731247} + - time: 1.100000 + value: {x: 3.828706, y: 3.828706, z: 3.828706} + - time: 1.133333 + value: {x: 3.923250, y: 3.923250, z: 3.923250} + - time: 1.166667 + value: {x: 4.010707, y: 4.010707, z: 4.010707} + - time: 1.200000 + value: {x: 4.092420, y: 4.092420, z: 4.092420} + - time: 1.233333 + value: {x: 4.172991, y: 4.172991, z: 4.172991} + - time: 1.266667 + value: {x: 4.255078, y: 4.255078, z: 4.255078} + - time: 1.300000 + value: {x: 4.338442, y: 4.338442, z: 4.338442} + - time: 1.333333 + value: {x: 4.421053, y: 4.421053, z: 4.421053} + - time: 1.366667 + value: {x: 4.499966, y: 4.499966, z: 4.499966} + - time: 1.400000 + value: {x: 4.572529, y: 4.572529, z: 4.572529} + - time: 1.433333 + value: {x: 4.637967, y: 4.637967, z: 4.637967} + - time: 1.466667 + value: {x: 4.697903, y: 4.697903, z: 4.697903} + - time: 1.533333 + value: {x: 4.812864, y: 4.812864, z: 4.812864} + - time: 1.566667 + value: {x: 4.871661, y: 4.871661, z: 4.871661} + - time: 1.600000 + value: {x: 4.931612, y: 4.931612, z: 4.931612} + - time: 1.633333 + value: {x: 4.991971, y: 4.991971, z: 4.991971} + - time: 1.666667 + value: {x: 5.051548, y: 5.051548, z: 5.051548} + - time: 1.700000 + value: {x: 5.109115, y: 5.109115, z: 5.109115} + - time: 1.733333 + value: {x: 5.163886, y: 5.163886, z: 5.163886} + - time: 1.766667 + value: {x: 5.215611, y: 5.215611, z: 5.215611} + - time: 1.800000 + value: {x: 5.264577, y: 5.264577, z: 5.264577} + - time: 1.833333 + value: {x: 5.311313, y: 5.311313, z: 5.311313} + - time: 1.866667 + value: {x: 5.356297, y: 5.356297, z: 5.356297} + - time: 1.900000 + value: {x: 5.399425, y: 5.399425, z: 5.399425} + - time: 1.933333 + value: {x: 5.440077, y: 5.440077, z: 5.440077} + - time: 1.966667 + value: {x: 5.477325, y: 5.477325, z: 5.477325} + - time: 2.000000 + value: {x: 5.510968, y: 5.510968, z: 5.510968} + - time: 2.033333 + value: {x: 5.541395, y: 5.541395, z: 5.541395} + - time: 2.066667 + value: {x: 5.570238, y: 5.570238, z: 5.570238} + - time: 2.100000 + value: {x: 5.598402, y: 5.598402, z: 5.598402} + - time: 2.166667 + value: {x: 5.654224, y: 5.654224, z: 5.654224} + - time: 2.200000 + value: {x: 5.681772, y: 5.681772, z: 5.681772} + - time: 2.233333 + value: {x: 5.708519, y: 5.708519, z: 5.708519} + - time: 2.266667 + value: {x: 5.734069, y: 5.734069, z: 5.734069} + - time: 2.300000 + value: {x: 5.758298, y: 5.758298, z: 5.758298} + - time: 2.333333 + value: {x: 5.781407, y: 5.781407, z: 5.781407} + - time: 2.366667 + value: {x: 5.803998, y: 5.803998, z: 5.803998} + - time: 2.400000 + value: {x: 5.826326, y: 5.826326, z: 5.826326} + - time: 2.433333 + value: {x: 5.847810, y: 5.847810, z: 5.847810} + - time: 2.466667 + value: {x: 5.867540, y: 5.867540, z: 5.867540} + - time: 2.500000 + value: {x: 5.884679, y: 5.884679, z: 5.884679} + - time: 2.533333 + value: {x: 5.897405, y: 5.897405, z: 5.897405} + - time: 2.566667 + value: {x: 5.904590, y: 5.904590, z: 5.904590} + - time: 2.600000 + value: {x: 5.907196, y: 5.907196, z: 5.907196} + - time: 2.633333 + value: {x: 5.906499, y: 5.906499, z: 5.906499} + - time: 2.666667 + value: {x: 5.903857, y: 5.903857, z: 5.903857} + - time: 2.700000 + value: {x: 5.900634, y: 5.900634, z: 5.900634} + - time: 2.733333 + value: {x: 5.898395, y: 5.898395, z: 5.898395} + - time: 2.766667 + value: {x: 5.898626, y: 5.898626, z: 5.898626} + - time: 2.800000 + value: {x: 5.902270, y: 5.902270, z: 5.902270} + - time: 2.833333 + value: {x: 5.909544, y: 5.909544, z: 5.909544} + - time: 2.866667 + value: {x: 5.920023, y: 5.920023, z: 5.920023} + - time: 2.900000 + value: {x: 5.933000, y: 5.933000, z: 5.933000} + - time: 2.933333 + value: {x: 5.947899, y: 5.947899, z: 5.947899} + - time: 2.966667 + value: {x: 5.964719, y: 5.964719, z: 5.964719} + - time: 3.000000 + value: {x: 5.984208, y: 5.984208, z: 5.984208} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_6: + position: + - time: 0.000000 + value: {x: 0.044454, y: 2.511905, z: 0.162168} + - time: 0.033333 + value: {x: 0.044454, y: 2.511905, z: 0.162168} + - time: 0.066667 + value: {x: 0.059847, y: 1.579751, z: -0.005404} + - time: 0.100000 + value: {x: 0.265363, y: 0.674692, z: 0.032960} + - time: 0.133333 + value: {x: 0.933473, y: 0.255545, z: 0.220508} + - time: 0.166667 + value: {x: 1.664209, y: 0.245855, z: 0.266009} + - time: 0.200000 + value: {x: 2.172611, y: 0.319772, z: 0.248609} + - time: 0.233333 + value: {x: 2.425132, y: 0.426117, z: 0.229851} + - time: 0.266667 + value: {x: 2.503917, y: 0.499509, z: 0.214256} + - time: 0.300000 + value: {x: 2.522024, y: 0.553920, z: 0.198073} + - time: 0.333333 + value: {x: 2.511295, y: 0.585831, z: 0.178205} + - time: 0.366667 + value: {x: 2.496849, y: 0.589038, z: 0.155083} + - time: 0.400000 + value: {x: 2.503079, y: 0.565903, z: 0.129510} + - time: 0.433333 + value: {x: 2.549143, y: 0.528958, z: 0.100965} + - time: 0.466667 + value: {x: 2.636869, y: 0.493758, z: 0.069148} + - time: 0.500000 + value: {x: 2.752421, y: 0.464843, z: 0.034432} + - time: 0.533333 + value: {x: 2.886762, y: 0.442502, z: -0.002585} + - time: 0.566667 + value: {x: 3.033929, y: 0.426264, z: -0.040158} + - time: 0.600000 + value: {x: 3.190320, y: 0.415872, z: -0.077511} + - time: 0.633333 + value: {x: 3.352205, y: 0.410200, z: -0.114175} + - time: 0.666667 + value: {x: 3.517510, y: 0.408475, z: -0.150335} + - time: 0.700000 + value: {x: 3.684974, y: 0.410400, z: -0.187057} + - time: 0.733333 + value: {x: 3.853222, y: 0.414895, z: -0.224436} + - time: 0.766667 + value: {x: 4.021963, y: 0.421432, z: -0.261329} + - time: 0.800000 + value: {x: 4.190812, y: 0.429325, z: -0.297249} + - time: 0.833333 + value: {x: 4.359334, y: 0.437982, z: -0.332696} + - time: 0.866667 + value: {x: 4.527289, y: 0.446951, z: -0.367806} + - time: 0.900000 + value: {x: 4.694583, y: 0.455889, z: -0.402148} + - time: 0.933333 + value: {x: 4.861094, y: 0.464562, z: -0.435633} + - time: 0.966667 + value: {x: 5.026629, y: 0.472790, z: -0.468719} + - time: 1.000000 + value: {x: 5.191003, y: 0.480544, z: -0.501720} + - time: 1.033333 + value: {x: 5.354151, y: 0.487736, z: -0.534539} + - time: 1.066667 + value: {x: 5.515985, y: 0.494372, z: -0.567128} + - time: 1.100000 + value: {x: 5.676303, y: 0.500524, z: -0.600032} + - time: 1.133333 + value: {x: 5.835088, y: 0.506246, z: -0.632871} + - time: 1.166667 + value: {x: 5.992207, y: 0.511592, z: -0.665559} + - time: 1.200000 + value: {x: 6.147575, y: 0.516742, z: -0.698053} + - time: 1.233333 + value: {x: 6.301035, y: 0.521859, z: -0.730523} + - time: 1.266667 + value: {x: 6.452381, y: 0.527129, z: -0.763288} + - time: 1.300000 + value: {x: 6.601397, y: 0.532751, z: -0.796613} + - time: 1.333333 + value: {x: 6.747898, y: 0.538927, z: -0.830505} + - time: 1.366667 + value: {x: 6.891739, y: 0.545856, z: -0.864696} + - time: 1.400000 + value: {x: 7.032804, y: 0.553725, z: -0.898660} + - time: 1.433333 + value: {x: 7.170927, y: 0.562701, z: -0.932000} + - time: 1.466667 + value: {x: 7.305917, y: 0.572925, z: -0.964319} + - time: 1.500000 + value: {x: 7.437399, y: 0.584507, z: -0.996023} + - time: 1.533333 + value: {x: 7.565023, y: 0.597518, z: -1.027385} + - time: 1.566667 + value: {x: 7.688450, y: 0.611985, z: -1.058529} + - time: 1.600000 + value: {x: 7.807352, y: 0.627900, z: -1.089562} + - time: 1.633333 + value: {x: 7.921434, y: 0.645218, z: -1.120568} + - time: 1.666667 + value: {x: 8.030468, y: 0.663862, z: -1.151577} + - time: 1.700000 + value: {x: 8.134209, y: 0.683771, z: -1.182588} + - time: 1.733333 + value: {x: 8.230862, y: 0.705395, z: -1.213730} + - time: 1.766667 + value: {x: 8.321491, y: 0.728059, z: -1.244718} + - time: 1.800000 + value: {x: 8.406208, y: 0.751560, z: -1.275439} + - time: 1.833333 + value: {x: 8.484299, y: 0.775952, z: -1.305856} + - time: 1.866667 + value: {x: 8.553574, y: 0.801359, z: -1.335849} + - time: 1.900000 + value: {x: 8.617004, y: 0.826858, z: -1.365181} + - time: 1.933333 + value: {x: 8.673153, y: 0.852546, z: -1.393808} + - time: 1.966667 + value: {x: 8.720161, y: 0.877833, z: -1.421531} + - time: 2.000000 + value: {x: 8.763172, y: 0.902422, z: -1.448428} + - time: 2.033333 + value: {x: 8.795303, y: 0.925148, z: -1.474144} + - time: 2.066667 + value: {x: 8.824627, y: 0.946478, z: -1.498923} + - time: 2.100000 + value: {x: 8.846184, y: 0.964897, z: -1.522358} + - time: 2.133333 + value: {x: 8.865578, y: 0.981740, z: -1.544811} + - time: 2.166667 + value: {x: 8.879288, y: 0.995229, z: -1.565853} + - time: 2.200000 + value: {x: 8.892540, y: 1.007958, z: -1.586087} + - time: 2.233333 + value: {x: 8.901012, y: 1.016971, z: -1.604831} + - time: 2.266667 + value: {x: 8.909595, y: 1.025648, z: -1.622849} + - time: 2.300000 + value: {x: 8.916092, y: 1.032166, z: -1.639722} + - time: 2.333333 + value: {x: 8.921558, y: 1.037434, z: -1.655646} + - time: 2.366667 + value: {x: 8.927177, y: 1.042487, z: -1.670849} + - time: 2.400000 + value: {x: 8.931278, y: 1.045721, z: -1.684962} + - time: 2.433333 + value: {x: 8.935234, y: 1.048508, z: -1.698288} + - time: 2.466667 + value: {x: 8.939342, y: 1.051174, z: -1.710890} + - time: 2.500000 + value: {x: 8.943130, y: 1.053255, z: -1.722659} + - time: 2.533333 + value: {x: 8.946472, y: 1.054651, z: -1.733564} + - time: 2.566667 + value: {x: 8.949913, y: 1.055986, z: -1.743745} + - time: 2.600000 + value: {x: 8.953403, y: 1.057255, z: -1.753194} + - time: 2.633333 + value: {x: 8.956902, y: 1.058454, z: -1.761907} + - time: 2.666667 + value: {x: 8.960094, y: 1.059271, z: -1.769804} + - time: 2.700000 + value: {x: 8.963184, y: 1.059987, z: -1.776952} + - time: 2.733333 + value: {x: 8.966179, y: 1.060652, z: -1.783357} + - time: 2.766667 + value: {x: 8.969017, y: 1.061261, z: -1.789017} + - time: 2.800000 + value: {x: 8.971657, y: 1.061808, z: -1.793928} + - time: 2.833333 + value: {x: 8.974041, y: 1.062288, z: -1.798088} + - time: 2.866667 + value: {x: 8.976120, y: 1.062694, z: -1.801495} + - time: 2.900000 + value: {x: 8.977833, y: 1.063021, z: -1.804146} + - time: 2.933333 + value: {x: 8.979134, y: 1.063262, z: -1.806041} + - time: 2.966667 + value: {x: 8.979954, y: 1.063411, z: -1.807178} + - time: 3.000000 + value: {x: 8.980244, y: 1.063463, z: -1.807556} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.403437, y: 0.403437, z: 0.403437} + - time: 0.033333 + value: {x: 0.403337, y: 0.403337, z: 0.403337} + - time: 0.066667 + value: {x: 0.455555, y: 0.455555, z: 0.455555} + - time: 0.100000 + value: {x: 0.519316, y: 0.519316, z: 0.519316} + - time: 0.133333 + value: {x: 0.587359, y: 0.587359, z: 0.587359} + - time: 0.166667 + value: {x: 0.654738, y: 0.654738, z: 0.654738} + - time: 0.200000 + value: {x: 0.727301, y: 0.727301, z: 0.727301} + - time: 0.233333 + value: {x: 0.809459, y: 0.809459, z: 0.809459} + - time: 0.266667 + value: {x: 0.898204, y: 0.898204, z: 0.898204} + - time: 0.300000 + value: {x: 0.992213, y: 0.992213, z: 0.992213} + - time: 0.333333 + value: {x: 1.090932, y: 1.090932, z: 1.090932} + - time: 0.366667 + value: {x: 1.193918, y: 1.193918, z: 1.193918} + - time: 0.400000 + value: {x: 1.300678, y: 1.300678, z: 1.300678} + - time: 0.433333 + value: {x: 1.410673, y: 1.410673, z: 1.410673} + - time: 0.466667 + value: {x: 1.523385, y: 1.523385, z: 1.523385} + - time: 0.500000 + value: {x: 1.638298, y: 1.638298, z: 1.638298} + - time: 0.533333 + value: {x: 1.754689, y: 1.754689, z: 1.754689} + - time: 0.566667 + value: {x: 1.871646, y: 1.871646, z: 1.871646} + - time: 0.600000 + value: {x: 1.988269, y: 1.988269, z: 1.988269} + - time: 0.666667 + value: {x: 2.220507, y: 2.220507, z: 2.220507} + - time: 0.700000 + value: {x: 2.337766, y: 2.337766, z: 2.337766} + - time: 0.733333 + value: {x: 2.456445, y: 2.456445, z: 2.456445} + - time: 0.766667 + value: {x: 2.575432, y: 2.575432, z: 2.575432} + - time: 0.800000 + value: {x: 2.693027, y: 2.693027, z: 2.693027} + - time: 0.833333 + value: {x: 2.807334, y: 2.807334, z: 2.807334} + - time: 0.866667 + value: {x: 2.916367, y: 2.916367, z: 2.916367} + - time: 0.900000 + value: {x: 3.018884, y: 3.018884, z: 3.018884} + - time: 0.933333 + value: {x: 3.115234, y: 3.115234, z: 3.115234} + - time: 0.966667 + value: {x: 3.207501, y: 3.207501, z: 3.207501} + - time: 1.000000 + value: {x: 3.299367, y: 3.299367, z: 3.299367} + - time: 1.033333 + value: {x: 3.392908, y: 3.392908, z: 3.392908} + - time: 1.066667 + value: {x: 3.487388, y: 3.487388, z: 3.487388} + - time: 1.100000 + value: {x: 3.581133, y: 3.581133, z: 3.581133} + - time: 1.133333 + value: {x: 3.672912, y: 3.672912, z: 3.672912} + - time: 1.166667 + value: {x: 3.761797, y: 3.761797, z: 3.761797} + - time: 1.200000 + value: {x: 3.847790, y: 3.847790, z: 3.847790} + - time: 1.233333 + value: {x: 3.931377, y: 3.931377, z: 3.931377} + - time: 1.266667 + value: {x: 4.013148, y: 4.013148, z: 4.013148} + - time: 1.300000 + value: {x: 4.093936, y: 4.093936, z: 4.093936} + - time: 1.333333 + value: {x: 4.174091, y: 4.174091, z: 4.174091} + - time: 1.366667 + value: {x: 4.253261, y: 4.253261, z: 4.253261} + - time: 1.400000 + value: {x: 4.330908, y: 4.330908, z: 4.330908} + - time: 1.433333 + value: {x: 4.407009, y: 4.407009, z: 4.407009} + - time: 1.466667 + value: {x: 4.481755, y: 4.481755, z: 4.481755} + - time: 1.500000 + value: {x: 4.555429, y: 4.555429, z: 4.555429} + - time: 1.533333 + value: {x: 4.627988, y: 4.627988, z: 4.627988} + - time: 1.566667 + value: {x: 4.699385, y: 4.699385, z: 4.699385} + - time: 1.600000 + value: {x: 4.769542, y: 4.769542, z: 4.769542} + - time: 1.666667 + value: {x: 4.907739, y: 4.907739, z: 4.907739} + - time: 1.700000 + value: {x: 4.977952, y: 4.977952, z: 4.977952} + - time: 1.733333 + value: {x: 5.048763, y: 5.048763, z: 5.048763} + - time: 1.766667 + value: {x: 5.118735, y: 5.118735, z: 5.118735} + - time: 1.800000 + value: {x: 5.186228, y: 5.186228, z: 5.186228} + - time: 1.833333 + value: {x: 5.249889, y: 5.249889, z: 5.249889} + - time: 1.866667 + value: {x: 5.309145, y: 5.309145, z: 5.309145} + - time: 1.900000 + value: {x: 5.365071, y: 5.365071, z: 5.365071} + - time: 1.933333 + value: {x: 5.419128, y: 5.419128, z: 5.419128} + - time: 2.066667 + value: {x: 5.632968, y: 5.632968, z: 5.632968} + - time: 2.100000 + value: {x: 5.685646, y: 5.685646, z: 5.685646} + - time: 2.133333 + value: {x: 5.736590, y: 5.736590, z: 5.736590} + - time: 2.166667 + value: {x: 5.785072, y: 5.785072, z: 5.785072} + - time: 2.200000 + value: {x: 5.830723, y: 5.830723, z: 5.830723} + - time: 2.233333 + value: {x: 5.873854, y: 5.873854, z: 5.873854} + - time: 2.266667 + value: {x: 5.914926, y: 5.914926, z: 5.914926} + - time: 2.300000 + value: {x: 5.954717, y: 5.954717, z: 5.954717} + - time: 2.333333 + value: {x: 5.993314, y: 5.993314, z: 5.993314} + - time: 2.366667 + value: {x: 6.030399, y: 6.030399, z: 6.030399} + - time: 2.400000 + value: {x: 6.065735, y: 6.065735, z: 6.065735} + - time: 2.433333 + value: {x: 6.098712, y: 6.098712, z: 6.098712} + - time: 2.466667 + value: {x: 6.129302, y: 6.129302, z: 6.129302} + - time: 2.500000 + value: {x: 6.158094, y: 6.158094, z: 6.158094} + - time: 2.533333 + value: {x: 6.184272, y: 6.184272, z: 6.184272} + - time: 2.566667 + value: {x: 6.206616, y: 6.206616, z: 6.206616} + - time: 2.600000 + value: {x: 6.225320, y: 6.225320, z: 6.225320} + - time: 2.633333 + value: {x: 6.240748, y: 6.240748, z: 6.240748} + - time: 2.666667 + value: {x: 6.253485, y: 6.253485, z: 6.253485} + - time: 2.700000 + value: {x: 6.264190, y: 6.264190, z: 6.264190} + - time: 2.733333 + value: {x: 6.273602, y: 6.273602, z: 6.273602} + - time: 2.800000 + value: {x: 6.291079, y: 6.291079, z: 6.291079} + - time: 2.833333 + value: {x: 6.300060, y: 6.300060, z: 6.300060} + - time: 2.900000 + value: {x: 6.318638, y: 6.318638, z: 6.318638} + - time: 2.933333 + value: {x: 6.328232, y: 6.328232, z: 6.328232} + - time: 2.966667 + value: {x: 6.338566, y: 6.338566, z: 6.338566} + - time: 3.000000 + value: {x: 6.350088, y: 6.350088, z: 6.350088} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_7: + position: + - time: 0.000000 + value: {x: 0.122095, y: 2.511905, z: 0.112763} + - time: 0.033333 + value: {x: 0.122095, y: 2.511905, z: 0.112763} + - time: 0.066667 + value: {x: 0.052144, y: 1.579751, z: -0.031766} + - time: 0.100000 + value: {x: 0.264886, y: 0.674691, z: -0.088706} + - time: 0.133333 + value: {x: 0.948052, y: 0.255545, z: -0.264654} + - time: 0.166667 + value: {x: 1.577329, y: 0.245855, z: -0.628242} + - time: 0.200000 + value: {x: 1.958344, y: 0.319771, z: -0.955615} + - time: 0.233333 + value: {x: 2.141917, y: 0.426117, z: -1.127158} + - time: 0.266667 + value: {x: 2.191439, y: 0.499509, z: -1.191712} + - time: 0.300000 + value: {x: 2.189706, y: 0.553920, z: -1.224097} + - time: 0.333333 + value: {x: 2.165477, y: 0.585831, z: -1.240199} + - time: 0.366667 + value: {x: 2.141283, y: 0.589037, z: -1.251889} + - time: 0.400000 + value: {x: 2.135234, y: 0.565902, z: -1.274583} + - time: 0.433333 + value: {x: 2.162733, y: 0.528958, z: -1.319470} + - time: 0.466667 + value: {x: 2.224353, y: 0.493758, z: -1.388641} + - time: 0.500000 + value: {x: 2.308673, y: 0.464843, z: -1.474334} + - time: 0.533333 + value: {x: 2.407650, y: 0.442501, z: -1.571989} + - time: 0.566667 + value: {x: 2.514207, y: 0.426263, z: -1.680094} + - time: 0.600000 + value: {x: 2.623435, y: 0.415872, z: -1.798486} + - time: 0.633333 + value: {x: 2.732848, y: 0.410200, z: -1.924338} + - time: 0.666667 + value: {x: 2.841767, y: 0.408474, z: -2.055456} + - time: 0.700000 + value: {x: 2.950333, y: 0.410400, z: -2.190195} + - time: 0.733333 + value: {x: 3.059750, y: 0.414894, z: -2.325343} + - time: 0.766667 + value: {x: 3.170366, y: 0.421432, z: -2.459780} + - time: 0.800000 + value: {x: 3.281433, y: 0.429325, z: -2.593615} + - time: 0.833333 + value: {x: 3.392978, y: 0.437982, z: -2.726338} + - time: 0.866667 + value: {x: 3.505342, y: 0.446951, z: -2.857285} + - time: 0.900000 + value: {x: 3.618982, y: 0.455888, z: -2.985713} + - time: 0.933333 + value: {x: 3.734150, y: 0.464561, z: -3.111149} + - time: 0.966667 + value: {x: 3.850313, y: 0.472789, z: -3.234025} + - time: 1.000000 + value: {x: 3.967417, y: 0.480544, z: -3.354216} + - time: 1.033333 + value: {x: 4.086076, y: 0.487736, z: -3.470951} + - time: 1.066667 + value: {x: 4.205791, y: 0.494372, z: -3.584620} + - time: 1.100000 + value: {x: 4.325784, y: 0.500524, z: -3.695920} + - time: 1.133333 + value: {x: 4.446005, y: 0.506246, z: -3.804769} + - time: 1.166667 + value: {x: 4.566209, y: 0.511592, z: -3.911206} + - time: 1.200000 + value: {x: 4.685070, y: 0.516741, z: -4.016514} + - time: 1.233333 + value: {x: 4.801749, y: 0.521859, z: -4.121404} + - time: 1.266667 + value: {x: 4.915709, y: 0.527129, z: -4.226240} + - time: 1.300000 + value: {x: 5.026618, y: 0.532751, z: -4.331145} + - time: 1.333333 + value: {x: 5.134268, y: 0.538927, z: -4.436078} + - time: 1.366667 + value: {x: 5.238614, y: 0.545856, z: -4.540801} + - time: 1.400000 + value: {x: 5.339641, y: 0.553725, z: -4.645014} + - time: 1.433333 + value: {x: 5.437349, y: 0.562701, z: -4.748363} + - time: 1.466667 + value: {x: 5.531724, y: 0.572925, z: -4.850475} + - time: 1.500000 + value: {x: 5.622755, y: 0.584507, z: -4.950947} + - time: 1.533333 + value: {x: 5.710397, y: 0.597518, z: -5.049402} + - time: 1.566667 + value: {x: 5.794547, y: 0.611985, z: -5.145495} + - time: 1.600000 + value: {x: 5.875084, y: 0.627900, z: -5.238928} + - time: 1.633333 + value: {x: 5.951899, y: 0.645218, z: -5.329416} + - time: 1.666667 + value: {x: 6.024945, y: 0.663862, z: -5.416688} + - time: 1.700000 + value: {x: 6.094175, y: 0.683771, z: -5.500436} + - time: 1.733333 + value: {x: 6.158638, y: 0.705395, z: -5.579162} + - time: 1.766667 + value: {x: 6.219281, y: 0.728058, z: -5.653277} + - time: 1.800000 + value: {x: 6.276248, y: 0.751560, z: -5.722770} + - time: 1.833333 + value: {x: 6.329160, y: 0.775952, z: -5.787004} + - time: 1.866667 + value: {x: 6.376621, y: 0.801359, z: -5.844302} + - time: 1.900000 + value: {x: 6.420341, y: 0.826858, z: -5.897023} + - time: 1.933333 + value: {x: 6.459364, y: 0.852546, z: -5.944126} + - time: 1.966667 + value: {x: 6.492281, y: 0.877833, z: -5.984377} + - time: 2.000000 + value: {x: 6.522497, y: 0.902422, z: -6.021536} + - time: 2.033333 + value: {x: 6.545086, y: 0.925148, z: -6.050905} + - time: 2.066667 + value: {x: 6.565674, y: 0.946479, z: -6.078112} + - time: 2.100000 + value: {x: 6.580675, y: 0.964898, z: -6.099760} + - time: 2.133333 + value: {x: 6.594120, y: 0.981740, z: -6.119680} + - time: 2.166667 + value: {x: 6.603422, y: 0.995229, z: -6.135473} + - time: 2.200000 + value: {x: 6.612417, y: 1.007958, z: -6.150705} + - time: 2.233333 + value: {x: 6.617891, y: 1.016971, z: -6.162407} + - time: 2.266667 + value: {x: 6.623480, y: 1.025647, z: -6.173933} + - time: 2.300000 + value: {x: 6.627548, y: 1.032166, z: -6.183771} + - time: 2.366667 + value: {x: 6.634356, y: 1.042486, z: -6.201361} + - time: 2.400000 + value: {x: 6.636734, y: 1.045721, z: -6.208769} + - time: 2.466667 + value: {x: 6.641493, y: 1.051173, z: -6.222715} + - time: 2.500000 + value: {x: 6.643745, y: 1.053255, z: -6.229132} + - time: 2.533333 + value: {x: 6.645700, y: 1.054651, z: -6.234978} + - time: 2.600000 + value: {x: 6.649904, y: 1.057256, z: -6.246077} + - time: 2.633333 + value: {x: 6.652092, y: 1.058454, z: -6.251270} + - time: 2.666667 + value: {x: 6.654083, y: 1.059271, z: -6.255997} + - time: 2.700000 + value: {x: 6.656036, y: 1.059987, z: -6.260401} + - time: 2.733333 + value: {x: 6.657951, y: 1.060652, z: -6.264488} + - time: 2.766667 + value: {x: 6.659796, y: 1.061261, z: -6.268225} + - time: 2.800000 + value: {x: 6.661526, y: 1.061808, z: -6.271576} + - time: 2.833333 + value: {x: 6.663103, y: 1.062288, z: -6.274509} + - time: 2.866667 + value: {x: 6.664490, y: 1.062694, z: -6.276993} + - time: 2.900000 + value: {x: 6.665642, y: 1.063021, z: -6.278984} + - time: 2.933333 + value: {x: 6.666521, y: 1.063262, z: -6.280453} + - time: 2.966667 + value: {x: 6.667080, y: 1.063411, z: -6.281363} + - time: 3.000000 + value: {x: 6.667276, y: 1.063463, z: -6.281675} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.305456, y: 0.305456, z: 0.305456} + - time: 0.033333 + value: {x: 0.305261, y: 0.305261, z: 0.305261} + - time: 0.066667 + value: {x: 0.349265, y: 0.349265, z: 0.349265} + - time: 0.100000 + value: {x: 0.403570, y: 0.403570, z: 0.403570} + - time: 0.133333 + value: {x: 0.456599, y: 0.456599, z: 0.456599} + - time: 0.166667 + value: {x: 0.505978, y: 0.505978, z: 0.505978} + - time: 0.200000 + value: {x: 0.560508, y: 0.560508, z: 0.560508} + - time: 0.233333 + value: {x: 0.619647, y: 0.619647, z: 0.619647} + - time: 0.266667 + value: {x: 0.682751, y: 0.682751, z: 0.682751} + - time: 0.300000 + value: {x: 0.749283, y: 0.749283, z: 0.749283} + - time: 0.333333 + value: {x: 0.818838, y: 0.818838, z: 0.818838} + - time: 0.366667 + value: {x: 0.891023, y: 0.891023, z: 0.891023} + - time: 0.400000 + value: {x: 0.965448, y: 0.965448, z: 0.965448} + - time: 0.433333 + value: {x: 1.041827, y: 1.041827, z: 1.041827} + - time: 0.466667 + value: {x: 1.120039, y: 1.120039, z: 1.120039} + - time: 0.500000 + value: {x: 1.199698, y: 1.199698, z: 1.199698} + - time: 0.533333 + value: {x: 1.279708, y: 1.279708, z: 1.279708} + - time: 0.566667 + value: {x: 1.358437, y: 1.358437, z: 1.358437} + - time: 0.600000 + value: {x: 1.434700, y: 1.434700, z: 1.434700} + - time: 0.633333 + value: {x: 1.508936, y: 1.508936, z: 1.508936} + - time: 0.666667 + value: {x: 1.582488, y: 1.582488, z: 1.582488} + - time: 0.700000 + value: {x: 1.656291, y: 1.656291, z: 1.656291} + - time: 0.733333 + value: {x: 1.729828, y: 1.729828, z: 1.729828} + - time: 0.766667 + value: {x: 1.802361, y: 1.802361, z: 1.802361} + - time: 0.800000 + value: {x: 1.873282, y: 1.873282, z: 1.873282} + - time: 0.833333 + value: {x: 1.942118, y: 1.942118, z: 1.942118} + - time: 0.866667 + value: {x: 2.008887, y: 2.008887, z: 2.008887} + - time: 0.900000 + value: {x: 2.073236, y: 2.073236, z: 2.073236} + - time: 0.933333 + value: {x: 2.134370, y: 2.134370, z: 2.134370} + - time: 0.966667 + value: {x: 2.191604, y: 2.191604, z: 2.191604} + - time: 1.000000 + value: {x: 2.245045, y: 2.245045, z: 2.245045} + - time: 1.033333 + value: {x: 2.295985, y: 2.295985, z: 2.295985} + - time: 1.100000 + value: {x: 2.396729, y: 2.396729, z: 2.396729} + - time: 1.133333 + value: {x: 2.447815, y: 2.447815, z: 2.447815} + - time: 1.166667 + value: {x: 2.500238, y: 2.500238, z: 2.500238} + - time: 1.233333 + value: {x: 2.607040, y: 2.607040, z: 2.607040} + - time: 1.266667 + value: {x: 2.659310, y: 2.659310, z: 2.659310} + - time: 1.300000 + value: {x: 2.709847, y: 2.709847, z: 2.709847} + - time: 1.333333 + value: {x: 2.758610, y: 2.758610, z: 2.758610} + - time: 1.400000 + value: {x: 2.854125, y: 2.854125, z: 2.854125} + - time: 1.433333 + value: {x: 2.902599, y: 2.902599, z: 2.902599} + - time: 1.466667 + value: {x: 2.952245, y: 2.952245, z: 2.952245} + - time: 1.500000 + value: {x: 3.003535, y: 3.003535, z: 3.003535} + - time: 1.533333 + value: {x: 3.056317, y: 3.056317, z: 3.056317} + - time: 1.566667 + value: {x: 3.110025, y: 3.110025, z: 3.110025} + - time: 1.600000 + value: {x: 3.163994, y: 3.163994, z: 3.163994} + - time: 1.633333 + value: {x: 3.217548, y: 3.217548, z: 3.217548} + - time: 1.666667 + value: {x: 3.270034, y: 3.270034, z: 3.270034} + - time: 1.700000 + value: {x: 3.321037, y: 3.321037, z: 3.321037} + - time: 1.733333 + value: {x: 3.370892, y: 3.370892, z: 3.370892} + - time: 1.766667 + value: {x: 3.420002, y: 3.420002, z: 3.420002} + - time: 1.833333 + value: {x: 3.517556, y: 3.517556, z: 3.517556} + - time: 1.866667 + value: {x: 3.565836, y: 3.565836, z: 3.565836} + - time: 1.900000 + value: {x: 3.613345, y: 3.613345, z: 3.613345} + - time: 1.933333 + value: {x: 3.660507, y: 3.660507, z: 3.660507} + - time: 1.966667 + value: {x: 3.708055, y: 3.708055, z: 3.708055} + - time: 2.000000 + value: {x: 3.756689, y: 3.756689, z: 3.756689} + - time: 2.033333 + value: {x: 3.807090, y: 3.807090, z: 3.807090} + - time: 2.066667 + value: {x: 3.859324, y: 3.859324, z: 3.859324} + - time: 2.100000 + value: {x: 3.912361, y: 3.912361, z: 3.912361} + - time: 2.133333 + value: {x: 3.964450, y: 3.964450, z: 3.964450} + - time: 2.166667 + value: {x: 4.013481, y: 4.013481, z: 4.013481} + - time: 2.200000 + value: {x: 4.057796, y: 4.057796, z: 4.057796} + - time: 2.233333 + value: {x: 4.096527, y: 4.096527, z: 4.096527} + - time: 2.266667 + value: {x: 4.130331, y: 4.130331, z: 4.130331} + - time: 2.300000 + value: {x: 4.160835, y: 4.160835, z: 4.160835} + - time: 2.366667 + value: {x: 4.219070, y: 4.219070, z: 4.219070} + - time: 2.400000 + value: {x: 4.249386, y: 4.249386, z: 4.249386} + - time: 2.433333 + value: {x: 4.281102, y: 4.281102, z: 4.281102} + - time: 2.466667 + value: {x: 4.313612, y: 4.313612, z: 4.313612} + - time: 2.500000 + value: {x: 4.345721, y: 4.345721, z: 4.345721} + - time: 2.533333 + value: {x: 4.375462, y: 4.375462, z: 4.375462} + - time: 2.566667 + value: {x: 4.401260, y: 4.401260, z: 4.401260} + - time: 2.600000 + value: {x: 4.422766, y: 4.422766, z: 4.422766} + - time: 2.633333 + value: {x: 4.440441, y: 4.440441, z: 4.440441} + - time: 2.666667 + value: {x: 4.455609, y: 4.455609, z: 4.455609} + - time: 2.700000 + value: {x: 4.470020, y: 4.470020, z: 4.470020} + - time: 2.733333 + value: {x: 4.485042, y: 4.485042, z: 4.485042} + - time: 2.766667 + value: {x: 4.501250, y: 4.501250, z: 4.501250} + - time: 2.800000 + value: {x: 4.518235, y: 4.518235, z: 4.518235} + - time: 2.833333 + value: {x: 4.534754, y: 4.534754, z: 4.534754} + - time: 2.866667 + value: {x: 4.549276, y: 4.549276, z: 4.549276} + - time: 2.900000 + value: {x: 4.561105, y: 4.561105, z: 4.561105} + - time: 2.933333 + value: {x: 4.570828, y: 4.570828, z: 4.570828} + - time: 2.966667 + value: {x: 4.579170, y: 4.579170, z: 4.579170} + - time: 3.000000 + value: {x: 4.586533, y: 4.586533, z: 4.586533} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_8: + position: + - time: 0.000000 + value: {x: 0.160608, y: 2.511905, z: 0.030516} + - time: 0.033333 + value: {x: 0.160608, y: 2.511905, z: 0.030516} + - time: 0.066667 + value: {x: 0.025200, y: 1.579751, z: -0.055128} + - time: 0.100000 + value: {x: 0.168896, y: 0.674692, z: -0.217692} + - time: 0.133333 + value: {x: 0.607444, y: 0.255545, z: -0.740883} + - time: 0.166667 + value: {x: 0.885494, y: 0.245855, z: -1.399015} + - time: 0.200000 + value: {x: 0.999475, y: 0.319772, z: -1.887930} + - time: 0.233333 + value: {x: 1.048423, y: 0.426117, z: -2.134866} + - time: 0.266667 + value: {x: 1.063003, y: 0.499509, z: -2.214083} + - time: 0.300000 + value: {x: 1.063197, y: 0.553920, z: -2.235700} + - time: 0.333333 + value: {x: 1.053233, y: 0.585831, z: -2.231516} + - time: 0.366667 + value: {x: 1.038081, y: 0.589038, z: -2.225599} + - time: 0.400000 + value: {x: 1.024240, y: 0.565903, z: -2.240802} + - time: 0.433333 + value: {x: 1.017201, y: 0.528958, z: -2.295202} + - time: 0.466667 + value: {x: 1.020470, y: 0.493758, z: -2.389789} + - time: 0.500000 + value: {x: 1.031991, y: 0.464843, z: -2.511003} + - time: 0.533333 + value: {x: 1.049083, y: 0.442502, z: -2.650265} + - time: 0.566667 + value: {x: 1.070418, y: 0.426264, z: -2.801523} + - time: 0.600000 + value: {x: 1.091437, y: 0.415872, z: -2.962173} + - time: 0.633333 + value: {x: 1.109600, y: 0.410200, z: -3.129007} + - time: 0.666667 + value: {x: 1.126255, y: 0.408475, z: -3.299604} + - time: 0.700000 + value: {x: 1.142366, y: 0.410400, z: -3.472647} + - time: 0.733333 + value: {x: 1.157883, y: 0.414895, z: -3.646778} + - time: 0.766667 + value: {x: 1.175014, y: 0.421432, z: -3.820881} + - time: 0.800000 + value: {x: 1.195353, y: 0.429325, z: -3.994048} + - time: 0.833333 + value: {x: 1.216986, y: 0.437982, z: -4.166445} + - time: 0.866667 + value: {x: 1.237798, y: 0.446951, z: -4.338415} + - time: 0.900000 + value: {x: 1.258391, y: 0.455888, z: -4.509617} + - time: 0.933333 + value: {x: 1.279734, y: 0.464562, z: -4.679649} + - time: 0.966667 + value: {x: 1.302296, y: 0.472789, z: -4.848291} + - time: 1.000000 + value: {x: 1.326047, y: 0.480544, z: -5.015423} + - time: 1.033333 + value: {x: 1.350352, y: 0.487736, z: -5.181128} + - time: 1.066667 + value: {x: 1.376843, y: 0.494372, z: -5.344874} + - time: 1.100000 + value: {x: 1.408177, y: 0.500524, z: -5.505872} + - time: 1.133333 + value: {x: 1.445043, y: 0.506246, z: -5.663836} + - time: 1.166667 + value: {x: 1.486616, y: 0.511592, z: -5.818839} + - time: 1.200000 + value: {x: 1.530116, y: 0.516742, z: -5.971519} + - time: 1.233333 + value: {x: 1.574841, y: 0.521859, z: -6.121933} + - time: 1.266667 + value: {x: 1.619531, y: 0.527129, z: -6.270275} + - time: 1.300000 + value: {x: 1.662755, y: 0.532751, z: -6.416756} + - time: 1.333333 + value: {x: 1.703662, y: 0.538927, z: -6.561414} + - time: 1.366667 + value: {x: 1.741740, y: 0.545856, z: -6.704185} + - time: 1.400000 + value: {x: 1.776874, y: 0.553725, z: -6.844873} + - time: 1.433333 + value: {x: 1.809273, y: 0.562701, z: -6.983175} + - time: 1.466667 + value: {x: 1.839338, y: 0.572925, z: -7.118705} + - time: 1.500000 + value: {x: 1.867444, y: 0.584507, z: -7.251072} + - time: 1.533333 + value: {x: 1.893791, y: 0.597518, z: -7.379921} + - time: 1.566667 + value: {x: 1.918725, y: 0.611985, z: -7.504842} + - time: 1.600000 + value: {x: 1.942698, y: 0.627900, z: -7.625410} + - time: 1.633333 + value: {x: 1.965873, y: 0.645218, z: -7.741295} + - time: 1.666667 + value: {x: 1.988333, y: 0.663862, z: -7.852253} + - time: 1.700000 + value: {x: 2.010223, y: 0.683771, z: -7.957990} + - time: 1.733333 + value: {x: 2.031439, y: 0.705395, z: -8.056753} + - time: 1.766667 + value: {x: 2.051916, y: 0.728059, z: -8.149567} + - time: 1.800000 + value: {x: 2.071593, y: 0.751560, z: -8.236544} + - time: 1.833333 + value: {x: 2.090314, y: 0.775953, z: -8.316992} + - time: 1.866667 + value: {x: 2.108342, y: 0.801359, z: -8.388599} + - time: 1.900000 + value: {x: 2.125835, y: 0.826858, z: -8.454285} + - time: 1.933333 + value: {x: 2.142735, y: 0.852546, z: -8.512604} + - time: 1.966667 + value: {x: 2.158957, y: 0.877833, z: -8.561649} + - time: 2.000000 + value: {x: 2.174679, y: 0.902422, z: -8.606598} + - time: 2.033333 + value: {x: 2.189350, y: 0.925148, z: -8.640560} + - time: 2.066667 + value: {x: 2.203329, y: 0.946479, z: -8.671661} + - time: 2.100000 + value: {x: 2.215858, y: 0.964898, z: -8.695000} + - time: 2.133333 + value: {x: 2.227655, y: 0.981739, z: -8.716137} + - time: 2.166667 + value: {x: 2.237958, y: 0.995229, z: -8.731617} + - time: 2.200000 + value: {x: 2.247867, y: 1.007958, z: -8.746578} + - time: 2.233333 + value: {x: 2.256193, y: 1.016971, z: -8.756798} + - time: 2.266667 + value: {x: 2.264279, y: 1.025647, z: -8.767044} + - time: 2.300000 + value: {x: 2.271423, y: 1.032166, z: -8.775196} + - time: 2.366667 + value: {x: 2.284281, y: 1.042486, z: -8.789402} + - time: 2.400000 + value: {x: 2.289794, y: 1.045721, z: -8.794991} + - time: 2.466667 + value: {x: 2.299971, y: 1.051174, z: -8.805779} + - time: 2.500000 + value: {x: 2.304574, y: 1.053255, z: -8.810810} + - time: 2.566667 + value: {x: 2.312720, y: 1.055986, z: -8.819839} + - time: 2.633333 + value: {x: 2.319962, y: 1.058453, z: -8.828728} + - time: 2.666667 + value: {x: 2.323114, y: 1.059271, z: -8.832748} + - time: 2.700000 + value: {x: 2.326002, y: 1.059987, z: -8.836578} + - time: 2.733333 + value: {x: 2.328633, y: 1.060652, z: -8.840225} + - time: 2.766667 + value: {x: 2.330997, y: 1.061261, z: -8.843639} + - time: 2.800000 + value: {x: 2.333083, y: 1.061808, z: -8.846767} + - time: 2.833333 + value: {x: 2.334879, y: 1.062288, z: -8.849564} + - time: 2.866667 + value: {x: 2.336374, y: 1.062695, z: -8.851971} + - time: 2.900000 + value: {x: 2.337557, y: 1.063021, z: -8.853939} + - time: 2.933333 + value: {x: 2.338416, y: 1.063262, z: -8.855415} + - time: 2.966667 + value: {x: 2.338942, y: 1.063412, z: -8.856342} + - time: 3.000000 + value: {x: 2.339118, y: 1.063463, z: -8.856667} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.364875, y: 0.364875, z: 0.364875} + - time: 0.033333 + value: {x: 0.364700, y: 0.364700, z: 0.364700} + - time: 0.066667 + value: {x: 0.417565, y: 0.417565, z: 0.417565} + - time: 0.100000 + value: {x: 0.485171, y: 0.485171, z: 0.485171} + - time: 0.166667 + value: {x: 0.614926, y: 0.614926, z: 0.614926} + - time: 0.200000 + value: {x: 0.689177, y: 0.689177, z: 0.689177} + - time: 0.233333 + value: {x: 0.771034, y: 0.771034, z: 0.771034} + - time: 0.266667 + value: {x: 0.857384, y: 0.857384, z: 0.857384} + - time: 0.300000 + value: {x: 0.948149, y: 0.948149, z: 0.948149} + - time: 0.333333 + value: {x: 1.043027, y: 1.043027, z: 1.043027} + - time: 0.366667 + value: {x: 1.141730, y: 1.141730, z: 1.141730} + - time: 0.400000 + value: {x: 1.243806, y: 1.243806, z: 1.243806} + - time: 0.433333 + value: {x: 1.348618, y: 1.348618, z: 1.348618} + - time: 0.466667 + value: {x: 1.455565, y: 1.455565, z: 1.455565} + - time: 0.500000 + value: {x: 1.564385, y: 1.564385, z: 1.564385} + - time: 0.533333 + value: {x: 1.674997, y: 1.674997, z: 1.674997} + - time: 0.566667 + value: {x: 1.787060, y: 1.787060, z: 1.787060} + - time: 0.600000 + value: {x: 1.900291, y: 1.900291, z: 1.900291} + - time: 0.666667 + value: {x: 2.128243, y: 2.128243, z: 2.128243} + - time: 0.700000 + value: {x: 2.240990, y: 2.240990, z: 2.240990} + - time: 0.733333 + value: {x: 2.351260, y: 2.351260, z: 2.351260} + - time: 0.766667 + value: {x: 2.458035, y: 2.458035, z: 2.458035} + - time: 0.800000 + value: {x: 2.561476, y: 2.561476, z: 2.561476} + - time: 0.833333 + value: {x: 2.662024, y: 2.662024, z: 2.662024} + - time: 0.866667 + value: {x: 2.759766, y: 2.759766, z: 2.759766} + - time: 0.900000 + value: {x: 2.853908, y: 2.853908, z: 2.853908} + - time: 0.933333 + value: {x: 2.943368, y: 2.943368, z: 2.943368} + - time: 0.966667 + value: {x: 3.027635, y: 3.027635, z: 3.027635} + - time: 1.000000 + value: {x: 3.107595, y: 3.107595, z: 3.107595} + - time: 1.033333 + value: {x: 3.185520, y: 3.185520, z: 3.185520} + - time: 1.066667 + value: {x: 3.264226, y: 3.264226, z: 3.264226} + - time: 1.100000 + value: {x: 3.345415, y: 3.345415, z: 3.345415} + - time: 1.133333 + value: {x: 3.428939, y: 3.428939, z: 3.428939} + - time: 1.166667 + value: {x: 3.513240, y: 3.513240, z: 3.513240} + - time: 1.200000 + value: {x: 3.596264, y: 3.596264, z: 3.596264} + - time: 1.233333 + value: {x: 3.676713, y: 3.676713, z: 3.676713} + - time: 1.266667 + value: {x: 3.754340, y: 3.754340, z: 3.754340} + - time: 1.300000 + value: {x: 3.830012, y: 3.830012, z: 3.830012} + - time: 1.366667 + value: {x: 3.980311, y: 3.980311, z: 3.980311} + - time: 1.400000 + value: {x: 4.054488, y: 4.054488, z: 4.054488} + - time: 1.433333 + value: {x: 4.125751, y: 4.125751, z: 4.125751} + - time: 1.466667 + value: {x: 4.192610, y: 4.192610, z: 4.192610} + - time: 1.500000 + value: {x: 4.255235, y: 4.255235, z: 4.255235} + - time: 1.533333 + value: {x: 4.315096, y: 4.315096, z: 4.315096} + - time: 1.633333 + value: {x: 4.491156, y: 4.491156, z: 4.491156} + - time: 1.666667 + value: {x: 4.548428, y: 4.548428, z: 4.548428} + - time: 1.700000 + value: {x: 4.602907, y: 4.602907, z: 4.602907} + - time: 1.733333 + value: {x: 4.653599, y: 4.653599, z: 4.653599} + - time: 1.766667 + value: {x: 4.700390, y: 4.700390, z: 4.700390} + - time: 1.800000 + value: {x: 4.743394, y: 4.743394, z: 4.743394} + - time: 1.833333 + value: {x: 4.782815, y: 4.782815, z: 4.782815} + - time: 1.866667 + value: {x: 4.819191, y: 4.819191, z: 4.819191} + - time: 1.900000 + value: {x: 4.852920, y: 4.852920, z: 4.852920} + - time: 1.933333 + value: {x: 4.885005, y: 4.885005, z: 4.885005} + - time: 1.966667 + value: {x: 4.916419, y: 4.916419, z: 4.916419} + - time: 2.033333 + value: {x: 4.978145, y: 4.978145, z: 4.978145} + - time: 2.066667 + value: {x: 5.008393, y: 5.008393, z: 5.008393} + - time: 2.100000 + value: {x: 5.038139, y: 5.038139, z: 5.038139} + - time: 2.133333 + value: {x: 5.066773, y: 5.066773, z: 5.066773} + - time: 2.200000 + value: {x: 5.122181, y: 5.122181, z: 5.122181} + - time: 2.233333 + value: {x: 5.150683, y: 5.150683, z: 5.150683} + - time: 2.266667 + value: {x: 5.180132, y: 5.180132, z: 5.180132} + - time: 2.333333 + value: {x: 5.240897, y: 5.240897, z: 5.240897} + - time: 2.366667 + value: {x: 5.271636, y: 5.271636, z: 5.271636} + - time: 2.400000 + value: {x: 5.303414, y: 5.303414, z: 5.303414} + - time: 2.433333 + value: {x: 5.335784, y: 5.335784, z: 5.335784} + - time: 2.466667 + value: {x: 5.367422, y: 5.367422, z: 5.367422} + - time: 2.500000 + value: {x: 5.396399, y: 5.396399, z: 5.396399} + - time: 2.533333 + value: {x: 5.419656, y: 5.419656, z: 5.419656} + - time: 2.566667 + value: {x: 5.434987, y: 5.434987, z: 5.434987} + - time: 2.600000 + value: {x: 5.442514, y: 5.442514, z: 5.442514} + - time: 2.633333 + value: {x: 5.443630, y: 5.443630, z: 5.443630} + - time: 2.666667 + value: {x: 5.440647, y: 5.440647, z: 5.440647} + - time: 2.700000 + value: {x: 5.435886, y: 5.435886, z: 5.435886} + - time: 2.733333 + value: {x: 5.431375, y: 5.431375, z: 5.431375} + - time: 2.766667 + value: {x: 5.429311, y: 5.429311, z: 5.429311} + - time: 2.800000 + value: {x: 5.431765, y: 5.431765, z: 5.431765} + - time: 2.833333 + value: {x: 5.440210, y: 5.440210, z: 5.440210} + - time: 2.866667 + value: {x: 5.455093, y: 5.455093, z: 5.455093} + - time: 2.900000 + value: {x: 5.475668, y: 5.475668, z: 5.475668} + - time: 2.933333 + value: {x: 5.500459, y: 5.500459, z: 5.500459} + - time: 2.966667 + value: {x: 5.527860, y: 5.527860, z: 5.527860} + - time: 3.000000 + value: {x: 5.556602, y: 5.556602, z: 5.556602} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_9: + position: + - time: 0.000000 + value: {x: 0.149805, y: 2.511905, z: -0.058142} + - time: 0.033333 + value: {x: 0.149805, y: 2.511905, z: -0.058142} + - time: 0.066667 + value: {x: -0.016842, y: 1.579751, z: -0.057318} + - time: 0.100000 + value: {x: -0.008699, y: 0.674692, z: -0.262668} + - time: 0.133333 + value: {x: 0.061545, y: 0.255545, z: -0.930713} + - time: 0.166667 + value: {x: -0.011862, y: 0.245855, z: -1.648168} + - time: 0.200000 + value: {x: -0.141684, y: 0.319772, z: -2.133250} + - time: 0.233333 + value: {x: -0.243974, y: 0.426117, z: -2.364650} + - time: 0.266667 + value: {x: -0.293431, y: 0.499509, z: -2.433462} + - time: 0.300000 + value: {x: -0.329946, y: 0.553920, z: -2.444147} + - time: 0.333333 + value: {x: -0.357381, y: 0.585831, z: -2.428812} + - time: 0.366667 + value: {x: -0.373384, y: 0.589038, z: -2.413854} + - time: 0.400000 + value: {x: -0.384224, y: 0.565903, z: -2.422198} + - time: 0.433333 + value: {x: -0.399313, y: 0.528958, z: -2.470703} + - time: 0.466667 + value: {x: -0.421261, y: 0.493758, z: -2.560503} + - time: 0.500000 + value: {x: -0.447267, y: 0.464843, z: -2.678195} + - time: 0.533333 + value: {x: -0.475921, y: 0.442501, z: -2.814816} + - time: 0.566667 + value: {x: -0.508722, y: 0.426264, z: -2.963431} + - time: 0.600000 + value: {x: -0.546792, y: 0.415872, z: -3.119841} + - time: 0.633333 + value: {x: -0.589708, y: 0.410200, z: -3.280252} + - time: 0.666667 + value: {x: -0.636724, y: 0.408475, z: -3.442804} + - time: 0.700000 + value: {x: -0.687540, y: 0.410400, z: -3.606517} + - time: 0.733333 + value: {x: -0.741130, y: 0.414894, z: -3.770319} + - time: 0.766667 + value: {x: -0.797210, y: 0.421432, z: -3.933757} + - time: 0.800000 + value: {x: -0.854732, y: 0.429325, z: -4.096663} + - time: 0.833333 + value: {x: -0.912718, y: 0.437982, z: -4.258993} + - time: 0.866667 + value: {x: -0.970424, y: 0.446951, z: -4.420757} + - time: 0.900000 + value: {x: -1.027451, y: 0.455888, z: -4.581894} + - time: 0.933333 + value: {x: -1.083750, y: 0.464562, z: -4.742271} + - time: 0.966667 + value: {x: -1.139324, y: 0.472790, z: -4.901793} + - time: 1.000000 + value: {x: -1.193717, y: 0.480544, z: -5.060467} + - time: 1.033333 + value: {x: -1.245572, y: 0.487736, z: -5.218629} + - time: 1.066667 + value: {x: -1.294489, y: 0.494372, z: -5.376296} + - time: 1.100000 + value: {x: -1.340680, y: 0.500524, z: -5.533316} + - time: 1.133333 + value: {x: -1.384703, y: 0.506246, z: -5.689415} + - time: 1.166667 + value: {x: -1.427325, y: 0.511592, z: -5.844203} + - time: 1.200000 + value: {x: -1.468887, y: 0.516742, z: -5.997484} + - time: 1.233333 + value: {x: -1.509482, y: 0.521859, z: -6.149101} + - time: 1.266667 + value: {x: -1.549560, y: 0.527129, z: -6.298767} + - time: 1.300000 + value: {x: -1.589718, y: 0.532751, z: -6.446136} + - time: 1.333333 + value: {x: -1.630291, y: 0.538927, z: -6.590915} + - time: 1.366667 + value: {x: -1.671167, y: 0.545856, z: -6.732937} + - time: 1.400000 + value: {x: -1.712123, y: 0.553725, z: -6.872038} + - time: 1.433333 + value: {x: -1.753137, y: 0.562701, z: -7.007977} + - time: 1.466667 + value: {x: -1.794254, y: 0.572925, z: -7.140457} + - time: 1.500000 + value: {x: -1.835248, y: 0.584507, z: -7.269251} + - time: 1.533333 + value: {x: -1.875948, y: 0.597518, z: -7.394108} + - time: 1.566667 + value: {x: -1.916294, y: 0.611985, z: -7.514725} + - time: 1.600000 + value: {x: -1.956262, y: 0.627900, z: -7.630793} + - time: 1.633333 + value: {x: -1.995731, y: 0.645218, z: -7.742069} + - time: 1.666667 + value: {x: -2.034598, y: 0.663862, z: -7.848351} + - time: 1.700000 + value: {x: -2.072825, y: 0.683771, z: -7.949398} + - time: 1.733333 + value: {x: -2.110260, y: 0.705395, z: -8.043453} + - time: 1.766667 + value: {x: -2.146868, y: 0.728059, z: -8.131546} + - time: 1.800000 + value: {x: -2.182586, y: 0.751560, z: -8.213802} + - time: 1.833333 + value: {x: -2.217320, y: 0.775953, z: -8.289494} + - time: 1.866667 + value: {x: -2.250813, y: 0.801359, z: -8.356441} + - time: 1.900000 + value: {x: -2.283165, y: 0.826858, z: -8.417610} + - time: 1.933333 + value: {x: -2.314204, y: 0.852546, z: -8.471569} + - time: 1.966667 + value: {x: -2.343480, y: 0.877834, z: -8.516510} + - time: 2.000000 + value: {x: -2.371597, y: 0.902422, z: -8.557529} + - time: 2.033333 + value: {x: -2.397284, y: 0.925148, z: -8.587902} + - time: 2.066667 + value: {x: -2.421782, y: 0.946478, z: -8.615566} + - time: 2.100000 + value: {x: -2.444023, y: 0.964898, z: -8.635681} + - time: 2.133333 + value: {x: -2.465118, y: 0.981739, z: -8.653721} + - time: 2.166667 + value: {x: -2.484163, y: 0.995229, z: -8.666279} + - time: 2.200000 + value: {x: -2.502477, y: 1.007958, z: -8.678421} + - time: 2.233333 + value: {x: -2.518787, y: 1.016971, z: -8.685970} + - time: 2.266667 + value: {x: -2.534525, y: 1.025648, z: -8.693649} + - time: 2.300000 + value: {x: -2.548980, y: 1.032166, z: -8.699364} + - time: 2.333333 + value: {x: -2.562490, y: 1.037434, z: -8.704105} + - time: 2.366667 + value: {x: -2.575442, y: 1.042486, z: -8.709026} + - time: 2.400000 + value: {x: -2.587251, y: 1.045721, z: -8.712521} + - time: 2.433333 + value: {x: -2.598399, y: 1.048508, z: -8.715900} + - time: 2.466667 + value: {x: -2.608994, y: 1.051174, z: -8.719460} + - time: 2.500000 + value: {x: -2.618864, y: 1.053255, z: -8.722744} + - time: 2.533333 + value: {x: -2.627964, y: 1.054651, z: -8.725624} + - time: 2.566667 + value: {x: -2.636504, y: 1.055986, z: -8.728630} + - time: 2.600000 + value: {x: -2.644472, y: 1.057255, z: -8.731712} + - time: 2.633333 + value: {x: -2.651860, y: 1.058454, z: -8.734833} + - time: 2.666667 + value: {x: -2.658547, y: 1.059271, z: -8.737682} + - time: 2.700000 + value: {x: -2.664624, y: 1.059987, z: -8.740463} + - time: 2.733333 + value: {x: -2.670102, y: 1.060652, z: -8.743168} + - time: 2.766667 + value: {x: -2.674970, y: 1.061261, z: -8.745754} + - time: 2.800000 + value: {x: -2.679219, y: 1.061808, z: -8.748169} + - time: 2.833333 + value: {x: -2.682839, y: 1.062288, z: -8.750362} + - time: 2.866667 + value: {x: -2.685822, y: 1.062695, z: -8.752281} + - time: 2.900000 + value: {x: -2.688157, y: 1.063021, z: -8.753872} + - time: 2.933333 + value: {x: -2.689835, y: 1.063262, z: -8.755077} + - time: 2.966667 + value: {x: -2.690847, y: 1.063411, z: -8.755844} + - time: 3.000000 + value: {x: -2.691189, y: 1.063463, z: -8.756115} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.429120, y: 0.429120, z: 0.429120} + - time: 0.033333 + value: {x: 0.429076, y: 0.429076, z: 0.429076} + - time: 0.066667 + value: {x: 0.480216, y: 0.480216, z: 0.480216} + - time: 0.100000 + value: {x: 0.546318, y: 0.546318, z: 0.546318} + - time: 0.133333 + value: {x: 0.609240, y: 0.609240, z: 0.609240} + - time: 0.166667 + value: {x: 0.675071, y: 0.675071, z: 0.675071} + - time: 0.200000 + value: {x: 0.749555, y: 0.749555, z: 0.749555} + - time: 0.233333 + value: {x: 0.829844, y: 0.829844, z: 0.829844} + - time: 0.266667 + value: {x: 0.916265, y: 0.916265, z: 0.916265} + - time: 0.300000 + value: {x: 1.008149, y: 1.008149, z: 1.008149} + - time: 0.333333 + value: {x: 1.104926, y: 1.104926, z: 1.104926} + - time: 0.366667 + value: {x: 1.205932, y: 1.205932, z: 1.205932} + - time: 0.400000 + value: {x: 1.310573, y: 1.310573, z: 1.310573} + - time: 0.433333 + value: {x: 1.418356, y: 1.418356, z: 1.418356} + - time: 0.466667 + value: {x: 1.528692, y: 1.528692, z: 1.528692} + - time: 0.500000 + value: {x: 1.640996, y: 1.640996, z: 1.640996} + - time: 0.533333 + value: {x: 1.754819, y: 1.754819, z: 1.754819} + - time: 0.600000 + value: {x: 1.984387, y: 1.984387, z: 1.984387} + - time: 0.666667 + value: {x: 2.213399, y: 2.213399, z: 2.213399} + - time: 0.700000 + value: {x: 2.329056, y: 2.329056, z: 2.329056} + - time: 0.733333 + value: {x: 2.446326, y: 2.446326, z: 2.446326} + - time: 0.766667 + value: {x: 2.563287, y: 2.563287, z: 2.563287} + - time: 0.800000 + value: {x: 2.677835, y: 2.677835, z: 2.677835} + - time: 0.833333 + value: {x: 2.788884, y: 2.788884, z: 2.788884} + - time: 0.866667 + value: {x: 2.896000, y: 2.896000, z: 2.896000} + - time: 0.900000 + value: {x: 2.998692, y: 2.998692, z: 2.998692} + - time: 0.933333 + value: {x: 3.096425, y: 3.096425, z: 3.096425} + - time: 0.966667 + value: {x: 3.189410, y: 3.189410, z: 3.189410} + - time: 1.000000 + value: {x: 3.279125, y: 3.279125, z: 3.279125} + - time: 1.033333 + value: {x: 3.366926, y: 3.366926, z: 3.366926} + - time: 1.066667 + value: {x: 3.454247, y: 3.454247, z: 3.454247} + - time: 1.100000 + value: {x: 3.542201, y: 3.542201, z: 3.542201} + - time: 1.133333 + value: {x: 3.630726, y: 3.630726, z: 3.630726} + - time: 1.166667 + value: {x: 3.718964, y: 3.718964, z: 3.718964} + - time: 1.200000 + value: {x: 3.806156, y: 3.806156, z: 3.806156} + - time: 1.233333 + value: {x: 3.891534, y: 3.891534, z: 3.891534} + - time: 1.266667 + value: {x: 3.974648, y: 3.974648, z: 3.974648} + - time: 1.300000 + value: {x: 4.055739, y: 4.055739, z: 4.055739} + - time: 1.333333 + value: {x: 4.135700, y: 4.135700, z: 4.135700} + - time: 1.366667 + value: {x: 4.215913, y: 4.215913, z: 4.215913} + - time: 1.400000 + value: {x: 4.297329, y: 4.297329, z: 4.297329} + - time: 1.433333 + value: {x: 4.379995, y: 4.379995, z: 4.379995} + - time: 1.500000 + value: {x: 4.546878, y: 4.546878, z: 4.546878} + - time: 1.533333 + value: {x: 4.629396, y: 4.629396, z: 4.629396} + - time: 1.566667 + value: {x: 4.710046, y: 4.710046, z: 4.710046} + - time: 1.600000 + value: {x: 4.788202, y: 4.788202, z: 4.788202} + - time: 1.633333 + value: {x: 4.863794, y: 4.863794, z: 4.863794} + - time: 1.666667 + value: {x: 4.936876, y: 4.936876, z: 4.936876} + - time: 1.700000 + value: {x: 5.007202, y: 5.007202, z: 5.007202} + - time: 1.733333 + value: {x: 5.074266, y: 5.074266, z: 5.074266} + - time: 1.766667 + value: {x: 5.137583, y: 5.137583, z: 5.137583} + - time: 1.800000 + value: {x: 5.196984, y: 5.196984, z: 5.196984} + - time: 1.833333 + value: {x: 5.252935, y: 5.252935, z: 5.252935} + - time: 1.866667 + value: {x: 5.306781, y: 5.306781, z: 5.306781} + - time: 1.900000 + value: {x: 5.359325, y: 5.359325, z: 5.359325} + - time: 1.966667 + value: {x: 5.463231, y: 5.463231, z: 5.463231} + - time: 2.000000 + value: {x: 5.514866, y: 5.514866, z: 5.514866} + - time: 2.033333 + value: {x: 5.566201, y: 5.566201, z: 5.566201} + - time: 2.066667 + value: {x: 5.615898, y: 5.615898, z: 5.615898} + - time: 2.100000 + value: {x: 5.663519, y: 5.663519, z: 5.663519} + - time: 2.133333 + value: {x: 5.708436, y: 5.708436, z: 5.708436} + - time: 2.166667 + value: {x: 5.751014, y: 5.751014, z: 5.751014} + - time: 2.200000 + value: {x: 5.791909, y: 5.791909, z: 5.791909} + - time: 2.233333 + value: {x: 5.832503, y: 5.832503, z: 5.832503} + - time: 2.266667 + value: {x: 5.873744, y: 5.873744, z: 5.873744} + - time: 2.300000 + value: {x: 5.916320, y: 5.916320, z: 5.916320} + - time: 2.333333 + value: {x: 5.960261, y: 5.960261, z: 5.960261} + - time: 2.400000 + value: {x: 6.050096, y: 6.050096, z: 6.050096} + - time: 2.433333 + value: {x: 6.094234, y: 6.094234, z: 6.094234} + - time: 2.466667 + value: {x: 6.136650, y: 6.136650, z: 6.136650} + - time: 2.500000 + value: {x: 6.176860, y: 6.176860, z: 6.176860} + - time: 2.533333 + value: {x: 6.213499, y: 6.213499, z: 6.213499} + - time: 2.566667 + value: {x: 6.245884, y: 6.245884, z: 6.245884} + - time: 2.600000 + value: {x: 6.274937, y: 6.274937, z: 6.274937} + - time: 2.633333 + value: {x: 6.301198, y: 6.301198, z: 6.301198} + - time: 2.666667 + value: {x: 6.325159, y: 6.325159, z: 6.325159} + - time: 2.700000 + value: {x: 6.347247, y: 6.347247, z: 6.347247} + - time: 2.733333 + value: {x: 6.367830, y: 6.367830, z: 6.367830} + - time: 2.766667 + value: {x: 6.387131, y: 6.387131, z: 6.387131} + - time: 2.800000 + value: {x: 6.405187, y: 6.405187, z: 6.405187} + - time: 2.833333 + value: {x: 6.422065, y: 6.422065, z: 6.422065} + - time: 2.866667 + value: {x: 6.438094, y: 6.438094, z: 6.438094} + - time: 2.900000 + value: {x: 6.453204, y: 6.453204, z: 6.453204} + - time: 2.933333 + value: {x: 6.467197, y: 6.467197, z: 6.467197} + - time: 2.966667 + value: {x: 6.480073, y: 6.480073, z: 6.480073} + - time: 3.000000 + value: {x: 6.492090, y: 6.492090, z: 6.492090} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/CloudsLanding.animationAsset.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/CloudsLanding.animationAsset.meta new file mode 100644 index 00000000..9df7fd19 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/CloudsLanding.animationAsset.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + AnimationAsset: ! a1870ff2-5d72-4d88-be6d-d60f99e08159 + ImporterName: AnimationAssetImporter + PrimaryAsset: ! a1870ff2-5d72-4d88-be6d-d60f99e08159 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/line1.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/line1.mesh new file mode 100644 index 00000000..93f02094 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/line1.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3db92ffcef6ee16da368ff28e09b1382eea2b5dd2a69a854caf41c0545c1c0c0 +size 102654 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/line1.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/line1.mesh.meta new file mode 100644 index 00000000..92cdfbd8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Landing/line1.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 9934a5e0-3212-454d-ab26-f7e91e6027e3 + ImporterName: FileMeshImporter + PrimaryAsset: ! 9934a5e0-3212-454d-ab26-f7e91e6027e3 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + boneData: Float + color: UNorm Byte + normal: Float + position: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_ANIM_mat_takeoff.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_ANIM_mat_takeoff.mat new file mode 100644 index 00000000..c9932db4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_ANIM_mat_takeoff.mat @@ -0,0 +1,163 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 0758ccca-126b-4b99-8c7e-a43f0b779172 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Extend + FrustumCullPad: 10000.000000 + InstanceCount: 1 + Defines: + - NODE_7_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Amount_N080: + typeIdx: 1 + value: 1.000000 + Port_Default_N025: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Default_N038: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Default_N066: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Exponent_N014: + typeIdx: 1 + value: 7.000000 + Port_Input1_N002: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Input1_N017: + typeIdx: 1 + value: 2000.000000 + Port_Input1_N021: + typeIdx: 1 + value: 0.000000 + Port_Input1_N040: + typeIdx: 1 + value: 0.100000 + Port_Input1_N043: + typeIdx: 1 + value: 5.000000 + Port_Input1_N069: + typeIdx: 1 + value: 0.000000 + Port_Input1_N070: + typeIdx: 1 + value: 3.000000 + Port_Input1_N071: + typeIdx: 1 + value: 2.000000 + Port_Input1_N072: + typeIdx: 1 + value: 1.100000 + Port_Input1_N097: + typeIdx: 1 + value: 0.005000 + Port_Input2_N002: + typeIdx: 1 + value: 0.500000 + Port_Input2_N069: + typeIdx: 1 + value: 1.000000 + Port_Intensity_N014: + typeIdx: 1 + value: 1.000000 + Port_Normal_N014: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + Port_Position1_N068: + typeIdx: 1 + value: 0.500000 + Port_Position1_N077: + typeIdx: 1 + value: 0.140000 + Port_Position2_N077: + typeIdx: 1 + value: 0.270000 + Port_Position3_N077: + typeIdx: 1 + value: 0.500000 + Port_RangeMaxA_N103: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N103: + typeIdx: 1 + value: -1.000000 + Port_RangeMinA_N103: + typeIdx: 1 + value: 0.000000 + Port_RangeMinB_N103: + typeIdx: 1 + value: -100.000000 + Port_Value0_N068: + typeIdx: 5 + value: {x: 0.837415, y: 0.837430, z: 0.837430, w: 1.000000} + Port_Value0_N077: + typeIdx: 5 + value: {x: 1.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value1_N025: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Value1_N038: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_Value1_N068: + typeIdx: 5 + value: {x: 0.921431, y: 0.921447, z: 0.921447, w: 1.000000} + Port_Value1_N076: + typeIdx: 1 + value: 0.000000 + Port_Value1_N077: + typeIdx: 5 + value: {x: 1.000000, y: 0.578103, z: 0.000000, w: 1.000000} + Port_Value2_N068: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Value2_N077: + typeIdx: 5 + value: {x: 1.000000, y: 0.832349, z: 0.473213, w: 1.000000} + Port_Value3_N076: + typeIdx: 1 + value: 0.000000 + Port_Value3_N077: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Value4_N077: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + alpha: + typeIdx: 1 + value: 1.000000 + distance_gradient: + typeIdx: 1 + value: 0.550000 + height_gradient: + typeIdx: 1 + value: 0.000000 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 2f9a482b-6734-404f-9ee9-3d140b609738 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_ANIM_mat_takeoff.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_ANIM_mat_takeoff.mat.meta new file mode 100644 index 00000000..9cc80149 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_ANIM_mat_takeoff.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 091e16fd-f8bf-4785-a36e-528fdf1c8e8e + ImporterName: MaterialImporter + PrimaryAsset: ! 091e16fd-f8bf-4785-a36e-528fdf1c8e8e + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_material_start_.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_material_start_.ss_graph new file mode 100644 index 00000000..be7ef8be --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_material_start_.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37ed39e3b5256d7412adad5cdfd4434422b7e69b48a12649669406de36edb220 +size 277840 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_material_start_.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_material_start_.ss_graph.meta new file mode 100644 index 00000000..221ca721 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/Bones_clouds_material_start_.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 2f9a482b-6734-404f-9ee9-3d140b609738 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 2f9a482b-6734-404f-9ee9-3d140b609738 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/CloudsStart.animationAsset b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/CloudsStart.animationAsset new file mode 100644 index 00000000..79224f59 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/CloudsStart.animationAsset @@ -0,0 +1,10515 @@ +- ! + PackagePath: "" + AnimationPropertiesLayers: + point_0: + position: + - time: 0.000000 + value: {x: -0.035571, y: 0.457263, z: -0.005534} + - time: 0.033333 + value: {x: -0.036031, y: 0.457257, z: -0.005607} + - time: 0.066667 + value: {x: -0.056084, y: 0.281862, z: -0.008822} + - time: 0.100000 + value: {x: -0.071783, y: 0.160204, z: -0.011671} + - time: 0.133333 + value: {x: -0.084518, y: 0.084069, z: -0.014285} + - time: 0.166667 + value: {x: -0.095016, y: 0.042052, z: -0.016734} + - time: 0.200000 + value: {x: -0.103572, y: 0.020984, z: -0.019035} + - time: 0.233333 + value: {x: -0.109946, y: 0.010016, z: -0.021219} + - time: 0.266667 + value: {x: -0.112410, y: 0.004832, z: -0.023337} + - time: 0.300000 + value: {x: -0.109189, y: 0.002419, z: -0.025366} + - time: 0.333333 + value: {x: -0.098909, y: 0.001393, z: -0.027276} + - time: 0.366667 + value: {x: -0.080382, y: 0.001440, z: -0.029217} + - time: 0.400000 + value: {x: -0.053707, y: 0.002493, z: -0.031075} + - time: 0.433333 + value: {x: -0.024441, y: 0.004578, z: -0.032842} + - time: 0.466667 + value: {x: 0.001154, y: 0.007747, z: -0.034658} + - time: 0.500000 + value: {x: 0.019787, y: 0.012319, z: -0.036351} + - time: 0.533333 + value: {x: 0.033282, y: 0.018500, z: -0.038063} + - time: 0.566667 + value: {x: 0.043203, y: 0.026711, z: -0.039802} + - time: 0.600000 + value: {x: 0.049614, y: 0.036898, z: -0.041472} + - time: 0.633333 + value: {x: 0.050843, y: 0.049002, z: -0.043043} + - time: 0.666667 + value: {x: 0.046084, y: 0.062381, z: -0.044667} + - time: 0.700000 + value: {x: 0.035402, y: 0.074905, z: -0.046259} + - time: 0.733333 + value: {x: 0.020187, y: 0.083901, z: -0.047909} + - time: 0.766667 + value: {x: 0.001578, y: 0.087199, z: -0.049396} + - time: 0.800000 + value: {x: -0.017331, y: 0.084599, z: -0.051032} + - time: 0.833333 + value: {x: -0.033491, y: 0.076794, z: -0.052482} + - time: 0.866667 + value: {x: -0.044291, y: 0.064233, z: -0.054081} + - time: 0.900000 + value: {x: -0.049482, y: 0.049255, z: -0.055612} + - time: 0.933333 + value: {x: -0.049588, y: 0.034328, z: -0.057125} + - time: 0.966667 + value: {x: -0.044436, y: 0.021442, z: -0.058585} + - time: 1.000000 + value: {x: -0.030590, y: 0.011243, z: -0.060092} + - time: 1.033333 + value: {x: -0.003419, y: 0.003873, z: -0.061479} + - time: 1.066667 + value: {x: 0.040997, y: -0.000772, z: -0.062965} + - time: 1.100000 + value: {x: 0.101520, y: -0.002919, z: -0.064399} + - time: 1.133333 + value: {x: 0.171971, y: -0.003232, z: -0.065863} + - time: 1.166667 + value: {x: 0.246449, y: -0.002306, z: -0.067381} + - time: 1.200000 + value: {x: 0.319977, y: -0.000521, z: -0.068829} + - time: 1.233333 + value: {x: 0.389028, y: 0.002125, z: -0.070151} + - time: 1.266667 + value: {x: 0.450791, y: 0.005677, z: -0.071656} + - time: 1.300000 + value: {x: 0.502879, y: 0.010455, z: -0.072968} + - time: 1.333333 + value: {x: 0.544716, y: 0.016243, z: -0.074372} + - time: 1.366667 + value: {x: 0.575845, y: 0.023057, z: -0.075795} + - time: 1.400000 + value: {x: 0.599330, y: 0.030378, z: -0.077282} + - time: 1.433333 + value: {x: 0.615553, y: 0.038180, z: -0.078666} + - time: 1.466667 + value: {x: 0.626804, y: 0.046046, z: -0.080048} + - time: 1.500000 + value: {x: 0.633994, y: 0.053872, z: -0.081311} + - time: 1.533333 + value: {x: 0.637856, y: 0.061472, z: -0.082790} + - time: 1.566667 + value: {x: 0.639054, y: 0.069074, z: -0.084018} + - time: 1.600000 + value: {x: 0.638259, y: 0.076450, z: -0.085429} + - time: 1.633333 + value: {x: 0.635803, y: 0.083745, z: -0.086754} + - time: 1.666667 + value: {x: 0.632019, y: 0.090910, z: -0.088093} + - time: 1.700000 + value: {x: 0.627165, y: 0.097945, z: -0.089452} + - time: 1.733333 + value: {x: 0.621327, y: 0.104894, z: -0.090784} + - time: 1.766667 + value: {x: 0.614533, y: 0.111730, z: -0.092126} + - time: 1.800000 + value: {x: 0.606856, y: 0.118442, z: -0.093464} + - time: 1.833333 + value: {x: 0.598341, y: 0.125045, z: -0.094757} + - time: 1.866667 + value: {x: 0.589107, y: 0.131410, z: -0.096250} + - time: 1.900000 + value: {x: 0.578696, y: 0.137857, z: -0.097397} + - time: 1.933333 + value: {x: 0.567527, y: 0.144032, z: -0.098826} + - time: 1.966667 + value: {x: 0.555748, y: 0.150092, z: -0.100196} + - time: 2.000000 + value: {x: 0.542978, y: 0.156094, z: -0.101475} + - time: 2.033333 + value: {x: 0.529445, y: 0.161949, z: -0.102764} + - time: 2.066667 + value: {x: 0.515582, y: 0.167641, z: -0.104055} + - time: 2.100000 + value: {x: 0.500721, y: 0.173143, z: -0.105192} + - time: 2.133333 + value: {x: 0.485807, y: 0.178244, z: -0.106617} + - time: 2.166667 + value: {x: 0.470436, y: 0.183073, z: -0.107910} + - time: 2.200000 + value: {x: 0.454837, y: 0.187620, z: -0.109009} + - time: 2.233333 + value: {x: 0.439190, y: 0.191643, z: -0.110487} + - time: 2.266667 + value: {x: 0.423322, y: 0.195355, z: -0.111590} + - time: 2.300000 + value: {x: 0.407518, y: 0.198679, z: -0.112851} + - time: 2.333333 + value: {x: 0.391705, y: 0.201355, z: -0.114273} + - time: 2.366667 + value: {x: 0.375924, y: 0.203866, z: -0.115385} + - time: 2.400000 + value: {x: 0.360281, y: 0.205715, z: -0.116763} + - time: 2.433333 + value: {x: 0.344698, y: 0.207267, z: -0.117881} + - time: 2.466667 + value: {x: 0.329312, y: 0.208446, z: -0.119082} + - time: 2.533333 + value: {x: 0.299055, y: 0.209406, z: -0.121699} + - time: 2.600000 + value: {x: 0.269515, y: 0.208787, z: -0.124214} + - time: 2.633333 + value: {x: 0.255042, y: 0.208173, z: -0.125426} + - time: 2.700000 + value: {x: 0.226651, y: 0.206331, z: -0.127688} + - time: 2.733333 + value: {x: 0.212797, y: 0.204958, z: -0.128858} + - time: 2.800000 + value: {x: 0.185696, y: 0.201920, z: -0.131473} + - time: 2.833333 + value: {x: 0.172462, y: 0.200135, z: -0.132507} + - time: 2.866667 + value: {x: 0.159458, y: 0.198200, z: -0.133855} + - time: 2.900000 + value: {x: 0.146543, y: 0.196485, z: -0.134846} + - time: 2.933333 + value: {x: 0.133957, y: 0.194388, z: -0.135994} + - time: 3.000000 + value: {x: 0.109309, y: 0.190120, z: -0.138507} + - time: 3.033333 + value: {x: 0.097269, y: 0.187994, z: -0.139531} + - time: 3.066667 + value: {x: 0.085477, y: 0.185717, z: -0.140686} + - time: 3.133333 + value: {x: 0.062333, y: 0.181194, z: -0.143227} + - time: 3.233333 + value: {x: 0.029007, y: 0.174342, z: -0.146498} + - time: 3.266667 + value: {x: 0.018185, y: 0.172035, z: -0.147819} + - time: 3.300000 + value: {x: 0.007422, y: 0.169800, z: -0.148748} + - time: 3.366667 + value: {x: -0.013685, y: 0.165286, z: -0.151003} + - time: 3.500000 + value: {x: -0.054969, y: 0.156529, z: -0.155463} + - time: 3.633333 + value: {x: -0.095181, y: 0.148258, z: -0.159888} + - time: 3.700000 + value: {x: -0.114891, y: 0.144244, z: -0.162258} + - time: 3.733333 + value: {x: -0.124641, y: 0.142478, z: -0.163113} + - time: 3.766667 + value: {x: -0.134241, y: 0.140512, z: -0.164444} + - time: 3.800000 + value: {x: -0.144131, y: 0.138783, z: -0.165298} + - time: 3.866667 + value: {x: -0.163433, y: 0.135160, z: -0.167631} + - time: 3.933333 + value: {x: -0.182350, y: 0.131960, z: -0.169513} + - time: 3.966667 + value: {x: -0.191568, y: 0.130262, z: -0.170794} + - time: 4.000000 + value: {x: -0.200900, y: 0.128840, z: -0.171597} + - time: 4.033333 + value: {x: -0.210262, y: 0.127169, z: -0.172943} + - time: 4.066667 + value: {x: -0.219612, y: 0.125850, z: -0.173691} + - time: 4.100000 + value: {x: -0.228724, y: 0.124285, z: -0.175018} + - time: 4.133333 + value: {x: -0.237825, y: 0.123072, z: -0.175744} + - time: 4.166667 + value: {x: -0.246745, y: 0.121763, z: -0.176754} + - time: 4.200000 + value: {x: -0.255477, y: 0.120332, z: -0.178094} + - time: 4.266666 + value: {x: -0.272747, y: 0.118084, z: -0.179842} + - time: 4.300000 + value: {x: -0.281263, y: 0.116834, z: -0.181091} + - time: 4.333333 + value: {x: -0.289954, y: 0.115886, z: -0.181822} + - time: 4.400000 + value: {x: -0.306764, y: 0.113724, z: -0.184085} + - time: 4.433333 + value: {x: -0.315052, y: 0.112952, z: -0.184743} + - time: 4.500000 + value: {x: -0.331070, y: 0.111167, z: -0.186804} + - time: 4.533333 + value: {x: -0.338829, y: 0.110232, z: -0.188056} + - time: 4.566667 + value: {x: -0.346566, y: 0.109648, z: -0.188705} + - time: 4.600000 + value: {x: -0.354041, y: 0.108787, z: -0.189994} + - time: 4.666667 + value: {x: -0.368768, y: 0.107710, z: -0.191572} + - time: 4.700000 + value: {x: -0.375826, y: 0.106981, z: -0.192873} + - time: 4.733333 + value: {x: -0.382816, y: 0.106490, z: -0.193794} + - time: 4.766666 + value: {x: -0.389721, y: 0.106188, z: -0.194439} + - time: 4.800000 + value: {x: -0.396422, y: 0.105765, z: -0.195413} + - time: 4.866667 + value: {x: -0.409358, y: 0.104949, z: -0.197586} + - time: 4.900000 + value: {x: -0.415693, y: 0.104831, z: -0.198246} + - time: 4.933333 + value: {x: -0.421796, y: 0.104519, z: -0.199382} + - time: 5.000000 + value: {x: -0.433634, y: 0.104224, z: -0.201299} + - time: 5.333333 + value: {x: -0.489772, y: 0.103472, z: -0.210220} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.400714, y: 0.400714, z: 0.400714} + - time: 0.033333 + value: {x: 0.419434, y: 0.419434, z: 0.419434} + - time: 0.066667 + value: {x: 0.438520, y: 0.438520, z: 0.438520} + - time: 0.100000 + value: {x: 0.457968, y: 0.457968, z: 0.457968} + - time: 0.133333 + value: {x: 0.477777, y: 0.477777, z: 0.477777} + - time: 0.166667 + value: {x: 0.497945, y: 0.497945, z: 0.497945} + - time: 0.200000 + value: {x: 0.518469, y: 0.518469, z: 0.518469} + - time: 0.233333 + value: {x: 0.539347, y: 0.539347, z: 0.539347} + - time: 0.266667 + value: {x: 0.560577, y: 0.560577, z: 0.560577} + - time: 0.300000 + value: {x: 0.582158, y: 0.582158, z: 0.582158} + - time: 0.333333 + value: {x: 0.604087, y: 0.604087, z: 0.604087} + - time: 0.366667 + value: {x: 0.626363, y: 0.626363, z: 0.626363} + - time: 0.400000 + value: {x: 0.648983, y: 0.648983, z: 0.648983} + - time: 0.433333 + value: {x: 0.671946, y: 0.671946, z: 0.671946} + - time: 0.466667 + value: {x: 0.695251, y: 0.695251, z: 0.695251} + - time: 0.500000 + value: {x: 0.718896, y: 0.718896, z: 0.718896} + - time: 0.533333 + value: {x: 0.742878, y: 0.742878, z: 0.742878} + - time: 0.566667 + value: {x: 0.767198, y: 0.767198, z: 0.767198} + - time: 0.600000 + value: {x: 0.791851, y: 0.791851, z: 0.791851} + - time: 0.633333 + value: {x: 0.816839, y: 0.816839, z: 0.816839} + - time: 0.666667 + value: {x: 0.842159, y: 0.842159, z: 0.842159} + - time: 0.700000 + value: {x: 0.867808, y: 0.867808, z: 0.867808} + - time: 0.733333 + value: {x: 0.893788, y: 0.893788, z: 0.893788} + - time: 0.766667 + value: {x: 0.920095, y: 0.920095, z: 0.920095} + - time: 0.800000 + value: {x: 0.946728, y: 0.946728, z: 0.946728} + - time: 0.833333 + value: {x: 0.973686, y: 0.973686, z: 0.973686} + - time: 0.866667 + value: {x: 1.000968, y: 1.000968, z: 1.000968} + - time: 0.900000 + value: {x: 1.028572, y: 1.028572, z: 1.028572} + - time: 0.933333 + value: {x: 1.056498, y: 1.056498, z: 1.056498} + - time: 0.966667 + value: {x: 1.084744, y: 1.084744, z: 1.084744} + - time: 1.000000 + value: {x: 1.113308, y: 1.113308, z: 1.113308} + - time: 1.033333 + value: {x: 1.142190, y: 1.142190, z: 1.142190} + - time: 1.066667 + value: {x: 1.171389, y: 1.171389, z: 1.171389} + - time: 1.100000 + value: {x: 1.200902, y: 1.200902, z: 1.200902} + - time: 1.133333 + value: {x: 1.230731, y: 1.230731, z: 1.230731} + - time: 1.166667 + value: {x: 1.260872, y: 1.260872, z: 1.260872} + - time: 1.200000 + value: {x: 1.291324, y: 1.291324, z: 1.291324} + - time: 1.233333 + value: {x: 1.322089, y: 1.322089, z: 1.322089} + - time: 1.266667 + value: {x: 1.353163, y: 1.353163, z: 1.353163} + - time: 1.300000 + value: {x: 1.384545, y: 1.384545, z: 1.384545} + - time: 1.333333 + value: {x: 1.416236, y: 1.416236, z: 1.416236} + - time: 1.366667 + value: {x: 1.448234, y: 1.448234, z: 1.448234} + - time: 1.400000 + value: {x: 1.480537, y: 1.480537, z: 1.480537} + - time: 1.433333 + value: {x: 1.513146, y: 1.513146, z: 1.513146} + - time: 1.466667 + value: {x: 1.546058, y: 1.546058, z: 1.546058} + - time: 1.500000 + value: {x: 1.579273, y: 1.579273, z: 1.579273} + - time: 1.533333 + value: {x: 1.612791, y: 1.612791, z: 1.612791} + - time: 1.566667 + value: {x: 1.646609, y: 1.646609, z: 1.646609} + - time: 1.600000 + value: {x: 1.680728, y: 1.680728, z: 1.680728} + - time: 1.633333 + value: {x: 1.715147, y: 1.715147, z: 1.715147} + - time: 1.666667 + value: {x: 1.749864, y: 1.749864, z: 1.749864} + - time: 1.700000 + value: {x: 1.784878, y: 1.784878, z: 1.784878} + - time: 1.733333 + value: {x: 1.820190, y: 1.820190, z: 1.820190} + - time: 1.766667 + value: {x: 1.855798, y: 1.855798, z: 1.855798} + - time: 1.800000 + value: {x: 1.891701, y: 1.891701, z: 1.891701} + - time: 1.833333 + value: {x: 1.927899, y: 1.927899, z: 1.927899} + - time: 1.866667 + value: {x: 1.964390, y: 1.964390, z: 1.964390} + - time: 1.900000 + value: {x: 2.001174, y: 2.001174, z: 2.001174} + - time: 1.933333 + value: {x: 2.038250, y: 2.038250, z: 2.038250} + - time: 1.966667 + value: {x: 2.075617, y: 2.075617, z: 2.075617} + - time: 2.000000 + value: {x: 2.113275, y: 2.113275, z: 2.113275} + - time: 2.033333 + value: {x: 2.151223, y: 2.151223, z: 2.151223} + - time: 2.066667 + value: {x: 2.189460, y: 2.189460, z: 2.189460} + - time: 2.100000 + value: {x: 2.227985, y: 2.227985, z: 2.227985} + - time: 2.133333 + value: {x: 2.266797, y: 2.266797, z: 2.266797} + - time: 2.166667 + value: {x: 2.305897, y: 2.305897, z: 2.305897} + - time: 2.200000 + value: {x: 2.345283, y: 2.345283, z: 2.345283} + - time: 2.233333 + value: {x: 2.384955, y: 2.384955, z: 2.384955} + - time: 2.266667 + value: {x: 2.424911, y: 2.424911, z: 2.424911} + - time: 2.300000 + value: {x: 2.465151, y: 2.465151, z: 2.465151} + - time: 2.333333 + value: {x: 2.505676, y: 2.505676, z: 2.505676} + - time: 2.366667 + value: {x: 2.546482, y: 2.546482, z: 2.546482} + - time: 2.400000 + value: {x: 2.587570, y: 2.587570, z: 2.587570} + - time: 2.433333 + value: {x: 2.628942, y: 2.628942, z: 2.628942} + - time: 2.466667 + value: {x: 2.670593, y: 2.670593, z: 2.670593} + - time: 2.500000 + value: {x: 2.712525, y: 2.712525, z: 2.712525} + - time: 2.533333 + value: {x: 2.754737, y: 2.754737, z: 2.754737} + - time: 2.566667 + value: {x: 2.797227, y: 2.797227, z: 2.797227} + - time: 2.600000 + value: {x: 2.839996, y: 2.839996, z: 2.839996} + - time: 2.633333 + value: {x: 2.883043, y: 2.883043, z: 2.883043} + - time: 2.666667 + value: {x: 2.926366, y: 2.926366, z: 2.926366} + - time: 2.700000 + value: {x: 2.969967, y: 2.969967, z: 2.969967} + - time: 2.733333 + value: {x: 3.013844, y: 3.013844, z: 3.013844} + - time: 2.766667 + value: {x: 3.057996, y: 3.057996, z: 3.057996} + - time: 2.800000 + value: {x: 3.102423, y: 3.102423, z: 3.102423} + - time: 2.833333 + value: {x: 3.147125, y: 3.147125, z: 3.147125} + - time: 2.866667 + value: {x: 3.192100, y: 3.192100, z: 3.192100} + - time: 2.900000 + value: {x: 3.237348, y: 3.237348, z: 3.237348} + - time: 2.933333 + value: {x: 3.282870, y: 3.282870, z: 3.282870} + - time: 2.966667 + value: {x: 3.328663, y: 3.328663, z: 3.328663} + - time: 3.000000 + value: {x: 3.374727, y: 3.374727, z: 3.374727} + - time: 3.033333 + value: {x: 3.421064, y: 3.421064, z: 3.421064} + - time: 3.066667 + value: {x: 3.467670, y: 3.467670, z: 3.467670} + - time: 3.100000 + value: {x: 3.514546, y: 3.514546, z: 3.514546} + - time: 3.133333 + value: {x: 3.561692, y: 3.561692, z: 3.561692} + - time: 3.166667 + value: {x: 3.609108, y: 3.609108, z: 3.609108} + - time: 3.200000 + value: {x: 3.656791, y: 3.656791, z: 3.656791} + - time: 3.233333 + value: {x: 3.704742, y: 3.704742, z: 3.704742} + - time: 3.266667 + value: {x: 3.752961, y: 3.752961, z: 3.752961} + - time: 3.300000 + value: {x: 3.801447, y: 3.801447, z: 3.801447} + - time: 3.333333 + value: {x: 3.850199, y: 3.850199, z: 3.850199} + - time: 3.366667 + value: {x: 3.899218, y: 3.899218, z: 3.899218} + - time: 3.400000 + value: {x: 3.948502, y: 3.948502, z: 3.948502} + - time: 3.433333 + value: {x: 3.998051, y: 3.998051, z: 3.998051} + - time: 3.466667 + value: {x: 4.047864, y: 4.047864, z: 4.047864} + - time: 3.500000 + value: {x: 4.097942, y: 4.097942, z: 4.097942} + - time: 3.533333 + value: {x: 4.148283, y: 4.148283, z: 4.148283} + - time: 3.566667 + value: {x: 4.198888, y: 4.198888, z: 4.198888} + - time: 3.600000 + value: {x: 4.249756, y: 4.249756, z: 4.249756} + - time: 3.633333 + value: {x: 4.300885, y: 4.300885, z: 4.300885} + - time: 3.666667 + value: {x: 4.352276, y: 4.352276, z: 4.352276} + - time: 3.700000 + value: {x: 4.403930, y: 4.403930, z: 4.403930} + - time: 3.733333 + value: {x: 4.455843, y: 4.455843, z: 4.455843} + - time: 3.766667 + value: {x: 4.508018, y: 4.508018, z: 4.508018} + - time: 3.800000 + value: {x: 4.560452, y: 4.560452, z: 4.560452} + - time: 3.833333 + value: {x: 4.613145, y: 4.613145, z: 4.613145} + - time: 3.866667 + value: {x: 4.666099, y: 4.666099, z: 4.666099} + - time: 3.900000 + value: {x: 4.719311, y: 4.719311, z: 4.719311} + - time: 3.933333 + value: {x: 4.772781, y: 4.772781, z: 4.772781} + - time: 3.966667 + value: {x: 4.826510, y: 4.826510, z: 4.826510} + - time: 4.000000 + value: {x: 4.880496, y: 4.880496, z: 4.880496} + - time: 4.033333 + value: {x: 4.934739, y: 4.934739, z: 4.934739} + - time: 4.066667 + value: {x: 4.989239, y: 4.989239, z: 4.989239} + - time: 4.100000 + value: {x: 5.043995, y: 5.043995, z: 5.043995} + - time: 4.133333 + value: {x: 5.099007, y: 5.099007, z: 5.099007} + - time: 4.166667 + value: {x: 5.154274, y: 5.154274, z: 5.154274} + - time: 4.200000 + value: {x: 5.209797, y: 5.209797, z: 5.209797} + - time: 4.233333 + value: {x: 5.265574, y: 5.265574, z: 5.265574} + - time: 4.266666 + value: {x: 5.321607, y: 5.321607, z: 5.321607} + - time: 4.300000 + value: {x: 5.377894, y: 5.377894, z: 5.377894} + - time: 4.333333 + value: {x: 5.434433, y: 5.434433, z: 5.434433} + - time: 4.366667 + value: {x: 5.491226, y: 5.491226, z: 5.491226} + - time: 4.400000 + value: {x: 5.548272, y: 5.548272, z: 5.548272} + - time: 4.433333 + value: {x: 5.605569, y: 5.605569, z: 5.605569} + - time: 4.466667 + value: {x: 5.663120, y: 5.663120, z: 5.663120} + - time: 4.500000 + value: {x: 5.720922, y: 5.720922, z: 5.720922} + - time: 4.533333 + value: {x: 5.778975, y: 5.778975, z: 5.778975} + - time: 4.566667 + value: {x: 5.837280, y: 5.837280, z: 5.837280} + - time: 4.600000 + value: {x: 5.895835, y: 5.895835, z: 5.895835} + - time: 4.633333 + value: {x: 5.954640, y: 5.954640, z: 5.954640} + - time: 4.666667 + value: {x: 6.013695, y: 6.013695, z: 6.013695} + - time: 4.700000 + value: {x: 6.072999, y: 6.072999, z: 6.072999} + - time: 4.733333 + value: {x: 6.132553, y: 6.132553, z: 6.132553} + - time: 4.766666 + value: {x: 6.192357, y: 6.192357, z: 6.192357} + - time: 4.800000 + value: {x: 6.252409, y: 6.252409, z: 6.252409} + - time: 4.833333 + value: {x: 6.312710, y: 6.312710, z: 6.312710} + - time: 4.866667 + value: {x: 6.373257, y: 6.373257, z: 6.373257} + - time: 4.900000 + value: {x: 6.434052, y: 6.434052, z: 6.434052} + - time: 4.933333 + value: {x: 6.495093, y: 6.495093, z: 6.495093} + - time: 4.966667 + value: {x: 6.556385, y: 6.556385, z: 6.556385} + - time: 5.000000 + value: {x: 6.617919, y: 6.617919, z: 6.617919} + - time: 5.033333 + value: {x: 6.679702, y: 6.679702, z: 6.679702} + - time: 5.066667 + value: {x: 6.741729, y: 6.741729, z: 6.741729} + - time: 5.100000 + value: {x: 6.804002, y: 6.804002, z: 6.804002} + - time: 5.133333 + value: {x: 6.866521, y: 6.866521, z: 6.866521} + - time: 5.166667 + value: {x: 6.929286, y: 6.929286, z: 6.929286} + - time: 5.200000 + value: {x: 6.992294, y: 6.992294, z: 6.992294} + - time: 5.233333 + value: {x: 7.055546, y: 7.055546, z: 7.055546} + - time: 5.266666 + value: {x: 7.119041, y: 7.119041, z: 7.119041} + - time: 5.300000 + value: {x: 7.182782, y: 7.182782, z: 7.182782} + - time: 5.333333 + value: {x: 7.246766, y: 7.246766, z: 7.246766} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_1: + position: + - time: 0.000000 + value: {x: 0.029026, y: 0.462110, z: 0.018861} + - time: 0.033333 + value: {x: 0.029419, y: 0.462168, z: 0.019110} + - time: 0.066667 + value: {x: 0.046863, y: 0.289587, z: 0.030055} + - time: 0.100000 + value: {x: 0.064603, y: 0.170431, z: 0.039835} + - time: 0.133333 + value: {x: 0.082476, y: 0.096588, z: 0.048781} + - time: 0.166667 + value: {x: 0.100485, y: 0.056714, z: 0.057097} + - time: 0.200000 + value: {x: 0.118798, y: 0.037661, z: 0.064942} + - time: 0.233333 + value: {x: 0.137984, y: 0.028608, z: 0.072410} + - time: 0.266667 + value: {x: 0.160022, y: 0.025271, z: 0.079545} + - time: 0.300000 + value: {x: 0.186849, y: 0.024632, z: 0.086430} + - time: 0.333333 + value: {x: 0.219954, y: 0.025297, z: 0.093143} + - time: 0.366667 + value: {x: 0.260699, y: 0.027028, z: 0.099590} + - time: 0.400000 + value: {x: 0.309015, y: 0.029706, z: 0.105905} + - time: 0.433333 + value: {x: 0.359406, y: 0.033357, z: 0.112118} + - time: 0.466667 + value: {x: 0.405736, y: 0.038100, z: 0.118129} + - time: 0.500000 + value: {x: 0.444674, y: 0.044175, z: 0.124107} + - time: 0.533333 + value: {x: 0.478153, y: 0.051855, z: 0.129942} + - time: 0.566667 + value: {x: 0.507772, y: 0.061567, z: 0.135639} + - time: 0.600000 + value: {x: 0.533579, y: 0.073213, z: 0.141293} + - time: 0.633333 + value: {x: 0.553912, y: 0.086720, z: 0.146941} + - time: 0.666667 + value: {x: 0.568057, y: 0.101520, z: 0.152455} + - time: 0.700000 + value: {x: 0.576059, y: 0.115442, z: 0.157919} + - time: 0.733333 + value: {x: 0.579365, y: 0.125855, z: 0.163261} + - time: 0.766667 + value: {x: 0.579024, y: 0.130489, z: 0.168677} + - time: 0.800000 + value: {x: 0.578291, y: 0.129290, z: 0.173900} + - time: 0.833333 + value: {x: 0.580067, y: 0.122791, z: 0.179229} + - time: 0.866667 + value: {x: 0.587132, y: 0.111600, z: 0.184373} + - time: 0.900000 + value: {x: 0.599641, y: 0.097958, z: 0.189524} + - time: 0.933333 + value: {x: 0.617101, y: 0.084352, z: 0.194645} + - time: 0.966667 + value: {x: 0.639675, y: 0.072758, z: 0.199767} + - time: 1.000000 + value: {x: 0.670856, y: 0.063869, z: 0.204805} + - time: 1.033333 + value: {x: 0.715198, y: 0.057750, z: 0.209907} + - time: 1.066667 + value: {x: 0.776732, y: 0.054399, z: 0.214884} + - time: 1.100000 + value: {x: 0.854252, y: 0.053516, z: 0.219871} + - time: 1.133333 + value: {x: 0.941624, y: 0.054479, z: 0.224795} + - time: 1.166667 + value: {x: 1.032959, y: 0.056703, z: 0.229639} + - time: 1.200000 + value: {x: 1.123229, y: 0.059751, z: 0.234512} + - time: 1.233333 + value: {x: 1.208880, y: 0.063597, z: 0.239466} + - time: 1.266667 + value: {x: 1.287253, y: 0.068432, z: 0.244228} + - time: 1.300000 + value: {x: 1.355784, y: 0.074400, z: 0.249132} + - time: 1.333333 + value: {x: 1.414035, y: 0.081419, z: 0.253926} + - time: 1.366667 + value: {x: 1.461518, y: 0.089470, z: 0.258678} + - time: 1.400000 + value: {x: 1.501317, y: 0.098055, z: 0.263346} + - time: 1.433333 + value: {x: 1.533741, y: 0.107071, z: 0.268080} + - time: 1.466667 + value: {x: 1.561125, y: 0.116146, z: 0.272792} + - time: 1.500000 + value: {x: 1.584331, y: 0.125126, z: 0.277583} + - time: 1.533333 + value: {x: 1.604249, y: 0.133977, z: 0.282161} + - time: 1.566667 + value: {x: 1.621322, y: 0.142709, z: 0.286938} + - time: 1.600000 + value: {x: 1.636433, y: 0.151301, z: 0.291529} + - time: 1.633333 + value: {x: 1.649782, y: 0.159768, z: 0.296175} + - time: 1.666667 + value: {x: 1.661754, y: 0.168110, z: 0.300787} + - time: 1.700000 + value: {x: 1.672610, y: 0.176331, z: 0.305359} + - time: 1.733333 + value: {x: 1.682412, y: 0.184450, z: 0.309935} + - time: 1.766667 + value: {x: 1.691211, y: 0.192459, z: 0.314480} + - time: 1.800000 + value: {x: 1.699071, y: 0.200339, z: 0.319009} + - time: 1.833333 + value: {x: 1.706017, y: 0.208087, z: 0.323559} + - time: 1.866667 + value: {x: 1.712289, y: 0.215691, z: 0.327909} + - time: 1.900000 + value: {x: 1.717168, y: 0.223211, z: 0.332547} + - time: 1.933333 + value: {x: 1.721370, y: 0.230588, z: 0.336918} + - time: 1.966667 + value: {x: 1.724885, y: 0.237825, z: 0.341318} + - time: 2.000000 + value: {x: 1.727316, y: 0.244958, z: 0.345780} + - time: 2.033333 + value: {x: 1.728938, y: 0.251944, z: 0.350216} + - time: 2.066667 + value: {x: 1.730182, y: 0.258767, z: 0.354630} + - time: 2.100000 + value: {x: 1.730306, y: 0.265328, z: 0.359160} + - time: 2.133333 + value: {x: 1.730463, y: 0.271620, z: 0.363420} + - time: 2.166667 + value: {x: 1.730053, y: 0.277577, z: 0.367776} + - time: 2.200000 + value: {x: 1.729275, y: 0.283157, z: 0.372285} + - time: 2.233333 + value: {x: 1.728581, y: 0.288393, z: 0.376441} + - time: 2.266667 + value: {x: 1.727440, y: 0.293137, z: 0.380909} + - time: 2.300000 + value: {x: 1.726389, y: 0.297568, z: 0.385219} + - time: 2.333333 + value: {x: 1.725359, y: 0.301424, z: 0.389370} + - time: 2.366667 + value: {x: 1.724167, y: 0.304968, z: 0.393774} + - time: 2.400000 + value: {x: 1.723188, y: 0.307969, z: 0.397930} + - time: 2.433333 + value: {x: 1.722103, y: 0.310556, z: 0.402293} + - time: 2.466667 + value: {x: 1.721204, y: 0.312801, z: 0.406567} + - time: 2.500000 + value: {x: 1.720418, y: 0.314409, z: 0.410783} + - time: 2.533333 + value: {x: 1.719883, y: 0.315994, z: 0.414869} + - time: 2.600000 + value: {x: 1.719044, y: 0.317555, z: 0.423189} + - time: 2.633333 + value: {x: 1.718829, y: 0.318008, z: 0.427361} + - time: 2.666667 + value: {x: 1.718651, y: 0.318106, z: 0.431670} + - time: 2.700000 + value: {x: 1.718736, y: 0.318213, z: 0.435796} + - time: 2.766667 + value: {x: 1.719401, y: 0.317454, z: 0.444045} + - time: 2.800000 + value: {x: 1.720062, y: 0.317050, z: 0.447967} + - time: 2.833333 + value: {x: 1.720719, y: 0.316236, z: 0.452189} + - time: 2.866667 + value: {x: 1.721709, y: 0.315418, z: 0.456116} + - time: 2.900000 + value: {x: 1.722570, y: 0.314650, z: 0.460340} + - time: 2.933333 + value: {x: 1.723788, y: 0.313572, z: 0.464409} + - time: 3.033333 + value: {x: 1.728275, y: 0.310273, z: 0.476419} + - time: 3.066667 + value: {x: 1.730101, y: 0.309013, z: 0.480409} + - time: 3.133333 + value: {x: 1.734162, y: 0.306626, z: 0.488128} + - time: 3.233333 + value: {x: 1.741033, y: 0.302714, z: 0.500046} + - time: 3.266667 + value: {x: 1.743623, y: 0.301489, z: 0.503780} + - time: 3.333333 + value: {x: 1.748668, y: 0.298858, z: 0.511690} + - time: 3.533333 + value: {x: 1.765086, y: 0.291641, z: 0.534606} + - time: 3.666667 + value: {x: 1.776379, y: 0.287330, z: 0.549386} + - time: 3.733333 + value: {x: 1.782033, y: 0.285424, z: 0.556944} + - time: 3.766667 + value: {x: 1.785131, y: 0.284521, z: 0.560393} + - time: 3.800000 + value: {x: 1.787665, y: 0.283629, z: 0.564244} + - time: 3.833333 + value: {x: 1.790526, y: 0.282772, z: 0.567738} + - time: 3.933333 + value: {x: 1.799036, y: 0.280512, z: 0.578758} + - time: 3.966667 + value: {x: 1.802202, y: 0.279840, z: 0.582141} + - time: 4.000000 + value: {x: 1.804981, y: 0.279222, z: 0.585925} + - time: 4.033333 + value: {x: 1.807937, y: 0.278609, z: 0.589212} + - time: 4.066667 + value: {x: 1.810572, y: 0.278062, z: 0.593009} + - time: 4.100000 + value: {x: 1.813675, y: 0.277541, z: 0.596275} + - time: 4.133333 + value: {x: 1.816453, y: 0.277087, z: 0.600055} + - time: 4.166667 + value: {x: 1.819498, y: 0.276668, z: 0.603566} + - time: 4.200000 + value: {x: 1.822842, y: 0.276283, z: 0.606765} + - time: 4.266666 + value: {x: 1.829134, y: 0.275678, z: 0.613932} + - time: 4.300000 + value: {x: 1.832505, y: 0.275425, z: 0.617158} + - time: 4.333333 + value: {x: 1.835406, y: 0.275228, z: 0.620822} + - time: 4.400000 + value: {x: 1.842019, y: 0.274938, z: 0.627388} + - time: 4.433333 + value: {x: 1.845144, y: 0.274876, z: 0.631063} + - time: 4.500000 + value: {x: 1.852168, y: 0.274861, z: 0.637695} + - time: 4.533333 + value: {x: 1.855962, y: 0.274912, z: 0.640789} + - time: 4.566667 + value: {x: 1.859446, y: 0.275028, z: 0.644397} + - time: 4.600000 + value: {x: 1.863447, y: 0.275167, z: 0.647422} + - time: 4.666667 + value: {x: 1.871054, y: 0.275611, z: 0.654304} + - time: 4.700000 + value: {x: 1.875339, y: 0.275883, z: 0.657263} + - time: 4.766666 + value: {x: 1.883492, y: 0.276599, z: 0.664046} + - time: 4.800000 + value: {x: 1.887837, y: 0.277019, z: 0.667239} + - time: 4.866667 + value: {x: 1.896960, y: 0.277987, z: 0.673378} + - time: 4.900000 + value: {x: 1.901382, y: 0.278555, z: 0.676798} + - time: 5.333333 + value: {x: 1.963936, y: 0.287568, z: 0.716405} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.400714, y: 0.400714, z: 0.400714} + - time: 0.033333 + value: {x: 0.419434, y: 0.419434, z: 0.419434} + - time: 0.066667 + value: {x: 0.438520, y: 0.438520, z: 0.438520} + - time: 0.100000 + value: {x: 0.457968, y: 0.457968, z: 0.457968} + - time: 0.133333 + value: {x: 0.477777, y: 0.477777, z: 0.477777} + - time: 0.166667 + value: {x: 0.497945, y: 0.497945, z: 0.497945} + - time: 0.200000 + value: {x: 0.518469, y: 0.518469, z: 0.518469} + - time: 0.233333 + value: {x: 0.539347, y: 0.539347, z: 0.539347} + - time: 0.266667 + value: {x: 0.560577, y: 0.560577, z: 0.560577} + - time: 0.300000 + value: {x: 0.582158, y: 0.582158, z: 0.582158} + - time: 0.333333 + value: {x: 0.604087, y: 0.604087, z: 0.604087} + - time: 0.366667 + value: {x: 0.626363, y: 0.626363, z: 0.626363} + - time: 0.400000 + value: {x: 0.648983, y: 0.648983, z: 0.648983} + - time: 0.433333 + value: {x: 0.671946, y: 0.671946, z: 0.671946} + - time: 0.466667 + value: {x: 0.695251, y: 0.695251, z: 0.695251} + - time: 0.500000 + value: {x: 0.718896, y: 0.718896, z: 0.718896} + - time: 0.533333 + value: {x: 0.742878, y: 0.742878, z: 0.742878} + - time: 0.566667 + value: {x: 0.767198, y: 0.767198, z: 0.767198} + - time: 0.600000 + value: {x: 0.791851, y: 0.791851, z: 0.791851} + - time: 0.633333 + value: {x: 0.816839, y: 0.816839, z: 0.816839} + - time: 0.666667 + value: {x: 0.842159, y: 0.842159, z: 0.842159} + - time: 0.700000 + value: {x: 0.867808, y: 0.867808, z: 0.867808} + - time: 0.733333 + value: {x: 0.893788, y: 0.893788, z: 0.893788} + - time: 0.766667 + value: {x: 0.920095, y: 0.920095, z: 0.920095} + - time: 0.800000 + value: {x: 0.946728, y: 0.946728, z: 0.946728} + - time: 0.833333 + value: {x: 0.973686, y: 0.973686, z: 0.973686} + - time: 0.866667 + value: {x: 1.000968, y: 1.000968, z: 1.000968} + - time: 0.900000 + value: {x: 1.028572, y: 1.028572, z: 1.028572} + - time: 0.933333 + value: {x: 1.056498, y: 1.056498, z: 1.056498} + - time: 0.966667 + value: {x: 1.084744, y: 1.084744, z: 1.084744} + - time: 1.000000 + value: {x: 1.113308, y: 1.113308, z: 1.113308} + - time: 1.033333 + value: {x: 1.142190, y: 1.142190, z: 1.142190} + - time: 1.066667 + value: {x: 1.171389, y: 1.171389, z: 1.171389} + - time: 1.100000 + value: {x: 1.200902, y: 1.200902, z: 1.200902} + - time: 1.133333 + value: {x: 1.230731, y: 1.230731, z: 1.230731} + - time: 1.166667 + value: {x: 1.260872, y: 1.260872, z: 1.260872} + - time: 1.200000 + value: {x: 1.291324, y: 1.291324, z: 1.291324} + - time: 1.233333 + value: {x: 1.322089, y: 1.322089, z: 1.322089} + - time: 1.266667 + value: {x: 1.353163, y: 1.353163, z: 1.353163} + - time: 1.300000 + value: {x: 1.384545, y: 1.384545, z: 1.384545} + - time: 1.333333 + value: {x: 1.416236, y: 1.416236, z: 1.416236} + - time: 1.366667 + value: {x: 1.448234, y: 1.448234, z: 1.448234} + - time: 1.400000 + value: {x: 1.480537, y: 1.480537, z: 1.480537} + - time: 1.433333 + value: {x: 1.513146, y: 1.513146, z: 1.513146} + - time: 1.466667 + value: {x: 1.546058, y: 1.546058, z: 1.546058} + - time: 1.500000 + value: {x: 1.579273, y: 1.579273, z: 1.579273} + - time: 1.533333 + value: {x: 1.612791, y: 1.612791, z: 1.612791} + - time: 1.566667 + value: {x: 1.646609, y: 1.646609, z: 1.646609} + - time: 1.600000 + value: {x: 1.680728, y: 1.680728, z: 1.680728} + - time: 1.633333 + value: {x: 1.715147, y: 1.715147, z: 1.715147} + - time: 1.666667 + value: {x: 1.749864, y: 1.749864, z: 1.749864} + - time: 1.700000 + value: {x: 1.784878, y: 1.784878, z: 1.784878} + - time: 1.733333 + value: {x: 1.820190, y: 1.820190, z: 1.820190} + - time: 1.766667 + value: {x: 1.855798, y: 1.855798, z: 1.855798} + - time: 1.800000 + value: {x: 1.891701, y: 1.891701, z: 1.891701} + - time: 1.833333 + value: {x: 1.927899, y: 1.927899, z: 1.927899} + - time: 1.866667 + value: {x: 1.964390, y: 1.964390, z: 1.964390} + - time: 1.900000 + value: {x: 2.001174, y: 2.001174, z: 2.001174} + - time: 1.933333 + value: {x: 2.038250, y: 2.038250, z: 2.038250} + - time: 1.966667 + value: {x: 2.075617, y: 2.075617, z: 2.075617} + - time: 2.000000 + value: {x: 2.113275, y: 2.113275, z: 2.113275} + - time: 2.033333 + value: {x: 2.151223, y: 2.151223, z: 2.151223} + - time: 2.066667 + value: {x: 2.189460, y: 2.189460, z: 2.189460} + - time: 2.100000 + value: {x: 2.227985, y: 2.227985, z: 2.227985} + - time: 2.133333 + value: {x: 2.266797, y: 2.266797, z: 2.266797} + - time: 2.166667 + value: {x: 2.305897, y: 2.305897, z: 2.305897} + - time: 2.200000 + value: {x: 2.345283, y: 2.345283, z: 2.345283} + - time: 2.233333 + value: {x: 2.384955, y: 2.384955, z: 2.384955} + - time: 2.266667 + value: {x: 2.424911, y: 2.424911, z: 2.424911} + - time: 2.300000 + value: {x: 2.465151, y: 2.465151, z: 2.465151} + - time: 2.333333 + value: {x: 2.505676, y: 2.505676, z: 2.505676} + - time: 2.366667 + value: {x: 2.546482, y: 2.546482, z: 2.546482} + - time: 2.400000 + value: {x: 2.587570, y: 2.587570, z: 2.587570} + - time: 2.433333 + value: {x: 2.628942, y: 2.628942, z: 2.628942} + - time: 2.466667 + value: {x: 2.670593, y: 2.670593, z: 2.670593} + - time: 2.500000 + value: {x: 2.712525, y: 2.712525, z: 2.712525} + - time: 2.533333 + value: {x: 2.754737, y: 2.754737, z: 2.754737} + - time: 2.566667 + value: {x: 2.797227, y: 2.797227, z: 2.797227} + - time: 2.600000 + value: {x: 2.839996, y: 2.839996, z: 2.839996} + - time: 2.633333 + value: {x: 2.883043, y: 2.883043, z: 2.883043} + - time: 2.666667 + value: {x: 2.926366, y: 2.926366, z: 2.926366} + - time: 2.700000 + value: {x: 2.969967, y: 2.969967, z: 2.969967} + - time: 2.733333 + value: {x: 3.013844, y: 3.013844, z: 3.013844} + - time: 2.766667 + value: {x: 3.057996, y: 3.057996, z: 3.057996} + - time: 2.800000 + value: {x: 3.102423, y: 3.102423, z: 3.102423} + - time: 2.833333 + value: {x: 3.147125, y: 3.147125, z: 3.147125} + - time: 2.866667 + value: {x: 3.192100, y: 3.192100, z: 3.192100} + - time: 2.900000 + value: {x: 3.237348, y: 3.237348, z: 3.237348} + - time: 2.933333 + value: {x: 3.282870, y: 3.282870, z: 3.282870} + - time: 2.966667 + value: {x: 3.328663, y: 3.328663, z: 3.328663} + - time: 3.000000 + value: {x: 3.374727, y: 3.374727, z: 3.374727} + - time: 3.033333 + value: {x: 3.421064, y: 3.421064, z: 3.421064} + - time: 3.066667 + value: {x: 3.467670, y: 3.467670, z: 3.467670} + - time: 3.100000 + value: {x: 3.514546, y: 3.514546, z: 3.514546} + - time: 3.133333 + value: {x: 3.561692, y: 3.561692, z: 3.561692} + - time: 3.166667 + value: {x: 3.609108, y: 3.609108, z: 3.609108} + - time: 3.200000 + value: {x: 3.656791, y: 3.656791, z: 3.656791} + - time: 3.233333 + value: {x: 3.704742, y: 3.704742, z: 3.704742} + - time: 3.266667 + value: {x: 3.752961, y: 3.752961, z: 3.752961} + - time: 3.300000 + value: {x: 3.801447, y: 3.801447, z: 3.801447} + - time: 3.333333 + value: {x: 3.850199, y: 3.850199, z: 3.850199} + - time: 3.366667 + value: {x: 3.899218, y: 3.899218, z: 3.899218} + - time: 3.400000 + value: {x: 3.948502, y: 3.948502, z: 3.948502} + - time: 3.433333 + value: {x: 3.998051, y: 3.998051, z: 3.998051} + - time: 3.466667 + value: {x: 4.047864, y: 4.047864, z: 4.047864} + - time: 3.500000 + value: {x: 4.097942, y: 4.097942, z: 4.097942} + - time: 3.533333 + value: {x: 4.148283, y: 4.148283, z: 4.148283} + - time: 3.566667 + value: {x: 4.198888, y: 4.198888, z: 4.198888} + - time: 3.600000 + value: {x: 4.249756, y: 4.249756, z: 4.249756} + - time: 3.633333 + value: {x: 4.300885, y: 4.300885, z: 4.300885} + - time: 3.666667 + value: {x: 4.352276, y: 4.352276, z: 4.352276} + - time: 3.700000 + value: {x: 4.403930, y: 4.403930, z: 4.403930} + - time: 3.733333 + value: {x: 4.455843, y: 4.455843, z: 4.455843} + - time: 3.766667 + value: {x: 4.508018, y: 4.508018, z: 4.508018} + - time: 3.800000 + value: {x: 4.560452, y: 4.560452, z: 4.560452} + - time: 3.833333 + value: {x: 4.613145, y: 4.613145, z: 4.613145} + - time: 3.866667 + value: {x: 4.666099, y: 4.666099, z: 4.666099} + - time: 3.900000 + value: {x: 4.719311, y: 4.719311, z: 4.719311} + - time: 3.933333 + value: {x: 4.772781, y: 4.772781, z: 4.772781} + - time: 3.966667 + value: {x: 4.826510, y: 4.826510, z: 4.826510} + - time: 4.000000 + value: {x: 4.880496, y: 4.880496, z: 4.880496} + - time: 4.033333 + value: {x: 4.934739, y: 4.934739, z: 4.934739} + - time: 4.066667 + value: {x: 4.989239, y: 4.989239, z: 4.989239} + - time: 4.100000 + value: {x: 5.043995, y: 5.043995, z: 5.043995} + - time: 4.133333 + value: {x: 5.099007, y: 5.099007, z: 5.099007} + - time: 4.166667 + value: {x: 5.154274, y: 5.154274, z: 5.154274} + - time: 4.200000 + value: {x: 5.209797, y: 5.209797, z: 5.209797} + - time: 4.233333 + value: {x: 5.265574, y: 5.265574, z: 5.265574} + - time: 4.266666 + value: {x: 5.321607, y: 5.321607, z: 5.321607} + - time: 4.300000 + value: {x: 5.377894, y: 5.377894, z: 5.377894} + - time: 4.333333 + value: {x: 5.434433, y: 5.434433, z: 5.434433} + - time: 4.366667 + value: {x: 5.491226, y: 5.491226, z: 5.491226} + - time: 4.400000 + value: {x: 5.548272, y: 5.548272, z: 5.548272} + - time: 4.433333 + value: {x: 5.605569, y: 5.605569, z: 5.605569} + - time: 4.466667 + value: {x: 5.663120, y: 5.663120, z: 5.663120} + - time: 4.500000 + value: {x: 5.720922, y: 5.720922, z: 5.720922} + - time: 4.533333 + value: {x: 5.778975, y: 5.778975, z: 5.778975} + - time: 4.566667 + value: {x: 5.837280, y: 5.837280, z: 5.837280} + - time: 4.600000 + value: {x: 5.895835, y: 5.895835, z: 5.895835} + - time: 4.633333 + value: {x: 5.954640, y: 5.954640, z: 5.954640} + - time: 4.666667 + value: {x: 6.013695, y: 6.013695, z: 6.013695} + - time: 4.700000 + value: {x: 6.072999, y: 6.072999, z: 6.072999} + - time: 4.733333 + value: {x: 6.132553, y: 6.132553, z: 6.132553} + - time: 4.766666 + value: {x: 6.192357, y: 6.192357, z: 6.192357} + - time: 4.800000 + value: {x: 6.252409, y: 6.252409, z: 6.252409} + - time: 4.833333 + value: {x: 6.312710, y: 6.312710, z: 6.312710} + - time: 4.866667 + value: {x: 6.373257, y: 6.373257, z: 6.373257} + - time: 4.900000 + value: {x: 6.434052, y: 6.434052, z: 6.434052} + - time: 4.933333 + value: {x: 6.495093, y: 6.495093, z: 6.495093} + - time: 4.966667 + value: {x: 6.556385, y: 6.556385, z: 6.556385} + - time: 5.000000 + value: {x: 6.617919, y: 6.617919, z: 6.617919} + - time: 5.033333 + value: {x: 6.679702, y: 6.679702, z: 6.679702} + - time: 5.066667 + value: {x: 6.741729, y: 6.741729, z: 6.741729} + - time: 5.100000 + value: {x: 6.804002, y: 6.804002, z: 6.804002} + - time: 5.133333 + value: {x: 6.866521, y: 6.866521, z: 6.866521} + - time: 5.166667 + value: {x: 6.929286, y: 6.929286, z: 6.929286} + - time: 5.200000 + value: {x: 6.992294, y: 6.992294, z: 6.992294} + - time: 5.233333 + value: {x: 7.055546, y: 7.055546, z: 7.055546} + - time: 5.266666 + value: {x: 7.119041, y: 7.119041, z: 7.119041} + - time: 5.300000 + value: {x: 7.182782, y: 7.182782, z: 7.182782} + - time: 5.333333 + value: {x: 7.246766, y: 7.246766, z: 7.246766} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_10: + position: + - time: 0.000000 + value: {x: 0.012226, y: 0.483325, z: -0.008963} + - time: 0.033333 + value: {x: 0.012286, y: 0.483451, z: -0.009011} + - time: 0.066667 + value: {x: 0.019184, y: 0.322740, z: -0.014635} + - time: 0.100000 + value: {x: 0.025285, y: 0.213928, z: -0.021770} + - time: 0.133333 + value: {x: 0.030809, y: 0.149345, z: -0.029847} + - time: 0.166667 + value: {x: 0.035896, y: 0.117908, z: -0.038640} + - time: 0.200000 + value: {x: 0.040643, y: 0.106631, z: -0.048209} + - time: 0.233333 + value: {x: 0.045130, y: 0.104816, z: -0.059022} + - time: 0.266667 + value: {x: 0.049452, y: 0.108277, z: -0.072946} + - time: 0.300000 + value: {x: 0.053699, y: 0.114046, z: -0.091916} + - time: 0.333333 + value: {x: 0.057942, y: 0.120765, z: -0.117443} + - time: 0.366667 + value: {x: 0.062224, y: 0.128298, z: -0.150656} + - time: 0.400000 + value: {x: 0.066574, y: 0.136506, z: -0.191634} + - time: 0.433333 + value: {x: 0.070864, y: 0.145436, z: -0.234882} + - time: 0.466667 + value: {x: 0.074931, y: 0.155291, z: -0.274057} + - time: 0.500000 + value: {x: 0.078717, y: 0.166251, z: -0.306068} + - time: 0.533333 + value: {x: 0.082266, y: 0.178668, z: -0.332638} + - time: 0.566667 + value: {x: 0.085629, y: 0.192983, z: -0.355354} + - time: 0.600000 + value: {x: 0.088822, y: 0.209071, z: -0.374387} + - time: 0.633333 + value: {x: 0.091811, y: 0.226855, z: -0.388117} + - time: 0.666667 + value: {x: 0.094567, y: 0.245840, z: -0.395615} + - time: 0.700000 + value: {x: 0.097105, y: 0.263828, z: -0.397040} + - time: 0.733333 + value: {x: 0.099457, y: 0.278231, z: -0.393716} + - time: 0.766667 + value: {x: 0.101677, y: 0.286693, z: -0.386987} + - time: 0.800000 + value: {x: 0.103823, y: 0.289297, z: -0.379682} + - time: 0.833333 + value: {x: 0.106005, y: 0.286442, z: -0.375156} + - time: 0.866667 + value: {x: 0.108268, y: 0.278879, z: -0.375731} + - time: 0.900000 + value: {x: 0.110638, y: 0.268761, z: -0.381852} + - time: 0.933333 + value: {x: 0.113100, y: 0.258603, z: -0.392963} + - time: 0.966667 + value: {x: 0.115663, y: 0.250369, z: -0.409269} + - time: 1.000000 + value: {x: 0.118412, y: 0.244795, z: -0.434127} + - time: 1.033333 + value: {x: 0.121482, y: 0.241883, z: -0.472312} + - time: 1.066667 + value: {x: 0.124962, y: 0.241720, z: -0.527562} + - time: 1.100000 + value: {x: 0.128833, y: 0.243951, z: -0.598872} + - time: 1.133333 + value: {x: 0.132930, y: 0.247986, z: -0.679999} + - time: 1.166667 + value: {x: 0.137098, y: 0.253253, z: -0.765027} + - time: 1.200000 + value: {x: 0.141217, y: 0.259267, z: -0.849091} + - time: 1.233333 + value: {x: 0.145201, y: 0.265983, z: -0.928711} + - time: 1.266667 + value: {x: 0.148952, y: 0.273716, z: -1.000824} + - time: 1.300000 + value: {x: 0.152439, y: 0.282462, z: -1.063360} + - time: 1.333333 + value: {x: 0.155625, y: 0.292254, z: -1.115504} + - time: 1.366667 + value: {x: 0.158506, y: 0.303045, z: -1.156867} + - time: 1.400000 + value: {x: 0.161158, y: 0.314356, z: -1.190474} + - time: 1.433333 + value: {x: 0.163605, y: 0.326019, z: -1.216849} + - time: 1.466667 + value: {x: 0.165900, y: 0.337706, z: -1.238198} + - time: 1.500000 + value: {x: 0.168076, y: 0.349216, z: -1.255529} + - time: 1.533333 + value: {x: 0.170128, y: 0.360646, z: -1.269300} + - time: 1.566667 + value: {x: 0.172109, y: 0.371829, z: -1.280562} + - time: 1.600000 + value: {x: 0.174005, y: 0.382909, z: -1.289629} + - time: 1.633333 + value: {x: 0.175844, y: 0.393800, z: -1.297056} + - time: 1.666667 + value: {x: 0.177629, y: 0.404542, z: -1.303093} + - time: 1.700000 + value: {x: 0.179367, y: 0.415139, z: -1.307996} + - time: 1.733333 + value: {x: 0.181064, y: 0.425597, z: -1.311889} + - time: 1.766667 + value: {x: 0.182717, y: 0.435920, z: -1.314771} + - time: 1.800000 + value: {x: 0.184331, y: 0.446087, z: -1.316727} + - time: 1.833333 + value: {x: 0.185909, y: 0.456078, z: -1.317837} + - time: 1.866667 + value: {x: 0.187439, y: 0.465971, z: -1.318024} + - time: 1.900000 + value: {x: 0.188946, y: 0.475630, z: -1.317265} + - time: 1.933333 + value: {x: 0.190399, y: 0.485224, z: -1.315482} + - time: 1.966667 + value: {x: 0.191825, y: 0.494631, z: -1.313091} + - time: 2.000000 + value: {x: 0.193217, y: 0.503878, z: -1.309739} + - time: 2.033333 + value: {x: 0.194573, y: 0.512961, z: -1.305575} + - time: 2.066667 + value: {x: 0.195906, y: 0.521858, z: -1.301037} + - time: 2.100000 + value: {x: 0.197210, y: 0.530415, z: -1.295581} + - time: 2.133333 + value: {x: 0.198479, y: 0.538785, z: -1.289807} + - time: 2.166667 + value: {x: 0.199731, y: 0.546752, z: -1.283638} + - time: 2.200000 + value: {x: 0.200978, y: 0.554253, z: -1.277351} + - time: 2.233333 + value: {x: 0.202185, y: 0.561523, z: -1.270682} + - time: 2.266667 + value: {x: 0.203398, y: 0.568150, z: -1.264043} + - time: 2.300000 + value: {x: 0.204590, y: 0.574499, z: -1.257306} + - time: 2.333333 + value: {x: 0.205759, y: 0.580311, z: -1.250399} + - time: 2.366667 + value: {x: 0.206937, y: 0.585684, z: -1.243721} + - time: 2.400000 + value: {x: 0.208087, y: 0.590590, z: -1.236941} + - time: 2.433333 + value: {x: 0.209247, y: 0.594970, z: -1.230379} + - time: 2.466667 + value: {x: 0.210393, y: 0.599023, z: -1.223913} + - time: 2.533333 + value: {x: 0.212650, y: 0.605852, z: -1.211219} + - time: 2.600000 + value: {x: 0.214889, y: 0.610944, z: -1.199169} + - time: 2.633333 + value: {x: 0.216002, y: 0.613123, z: -1.193417} + - time: 2.700000 + value: {x: 0.218221, y: 0.616679, z: -1.182479} + - time: 2.800000 + value: {x: 0.221488, y: 0.620558, z: -1.167132} + - time: 2.866667 + value: {x: 0.223651, y: 0.622167, z: -1.157886} + - time: 2.900000 + value: {x: 0.224735, y: 0.622931, z: -1.153559} + - time: 3.000000 + value: {x: 0.227924, y: 0.624464, z: -1.141363} + - time: 3.066667 + value: {x: 0.230045, y: 0.625040, z: -1.134229} + - time: 3.133333 + value: {x: 0.232123, y: 0.625726, z: -1.127375} + - time: 3.166667 + value: {x: 0.233163, y: 0.625860, z: -1.124314} + - time: 3.266667 + value: {x: 0.236253, y: 0.626422, z: -1.115725} + - time: 3.433333 + value: {x: 0.241296, y: 0.627041, z: -1.103102} + - time: 3.533333 + value: {x: 0.244243, y: 0.627517, z: -1.096057} + - time: 3.666667 + value: {x: 0.248058, y: 0.628480, z: -1.086810} + - time: 3.733333 + value: {x: 0.249949, y: 0.629044, z: -1.082643} + - time: 3.866667 + value: {x: 0.253603, y: 0.630588, z: -1.073807} + - time: 4.000000 + value: {x: 0.257199, y: 0.632512, z: -1.066111} + - time: 4.033333 + value: {x: 0.258059, y: 0.633151, z: -1.063855} + - time: 4.100000 + value: {x: 0.259795, y: 0.634371, z: -1.059931} + - time: 4.200000 + value: {x: 0.262371, y: 0.636464, z: -1.054743} + - time: 4.266666 + value: {x: 0.264083, y: 0.637958, z: -1.051882} + - time: 4.400000 + value: {x: 0.267389, y: 0.641538, z: -1.045750} + - time: 4.433333 + value: {x: 0.268226, y: 0.642413, z: -1.044621} + - time: 4.533333 + value: {x: 0.270648, y: 0.645616, z: -1.041199} + - time: 4.600000 + value: {x: 0.272260, y: 0.647860, z: -1.039570} + - time: 4.700000 + value: {x: 0.274655, y: 0.651496, z: -1.037924} + - time: 4.733333 + value: {x: 0.275449, y: 0.652772, z: -1.037604} + - time: 4.800000 + value: {x: 0.277041, y: 0.655379, z: -1.037390} + - time: 4.866667 + value: {x: 0.278591, y: 0.658287, z: -1.037339} + - time: 4.966667 + value: {x: 0.280922, y: 0.662825, z: -1.038311} + - time: 5.333333 + value: {x: 0.289064, y: 0.679822, z: -1.044707} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.493883, y: 0.493883, z: 0.493883} + - time: 0.166667 + value: {x: 0.529612, y: 0.529612, z: 0.529612} + - time: 0.300000 + value: {x: 0.558962, y: 0.558962, z: 0.558962} + - time: 0.433333 + value: {x: 0.588988, y: 0.588988, z: 0.588988} + - time: 0.566667 + value: {x: 0.619684, y: 0.619684, z: 0.619684} + - time: 0.700000 + value: {x: 0.651047, y: 0.651047, z: 0.651047} + - time: 0.833333 + value: {x: 0.683070, y: 0.683070, z: 0.683070} + - time: 0.966667 + value: {x: 0.715751, y: 0.715751, z: 0.715751} + - time: 1.100000 + value: {x: 0.749084, y: 0.749084, z: 0.749084} + - time: 1.233333 + value: {x: 0.783065, y: 0.783065, z: 0.783065} + - time: 1.366667 + value: {x: 0.817690, y: 0.817690, z: 0.817690} + - time: 1.500000 + value: {x: 0.852955, y: 0.852955, z: 0.852955} + - time: 1.666667 + value: {x: 0.897930, y: 0.897930, z: 0.897930} + - time: 1.833333 + value: {x: 0.943893, y: 0.943893, z: 0.943893} + - time: 2.000000 + value: {x: 0.990835, y: 0.990835, z: 0.990835} + - time: 2.166667 + value: {x: 1.038750, y: 1.038750, z: 1.038750} + - time: 2.333333 + value: {x: 1.087632, y: 1.087632, z: 1.087632} + - time: 2.500000 + value: {x: 1.137474, y: 1.137474, z: 1.137474} + - time: 2.666667 + value: {x: 1.188270, y: 1.188270, z: 1.188270} + - time: 2.833333 + value: {x: 1.240014, y: 1.240014, z: 1.240014} + - time: 3.000000 + value: {x: 1.292700, y: 1.292700, z: 1.292700} + - time: 3.166667 + value: {x: 1.346323, y: 1.346323, z: 1.346323} + - time: 3.333333 + value: {x: 1.400878, y: 1.400878, z: 1.400878} + - time: 3.500000 + value: {x: 1.456358, y: 1.456358, z: 1.456358} + - time: 3.666667 + value: {x: 1.512760, y: 1.512760, z: 1.512760} + - time: 3.833333 + value: {x: 1.570077, y: 1.570077, z: 1.570077} + - time: 4.000000 + value: {x: 1.628306, y: 1.628306, z: 1.628306} + - time: 4.166667 + value: {x: 1.687441, y: 1.687441, z: 1.687441} + - time: 4.333333 + value: {x: 1.747478, y: 1.747478, z: 1.747478} + - time: 4.500000 + value: {x: 1.808412, y: 1.808412, z: 1.808412} + - time: 4.666667 + value: {x: 1.870239, y: 1.870239, z: 1.870239} + - time: 4.833333 + value: {x: 1.932955, y: 1.932955, z: 1.932955} + - time: 5.000000 + value: {x: 1.996554, y: 1.996554, z: 1.996554} + - time: 5.166667 + value: {x: 2.061035, y: 2.061035, z: 2.061035} + - time: 5.333333 + value: {x: 2.126391, y: 2.126391, z: 2.126391} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_11: + position: + - time: 0.000000 + value: {x: -0.043337, y: 0.457145, z: -0.006286} + - time: 0.033333 + value: {x: -0.043418, y: 0.457144, z: -0.006299} + - time: 0.066667 + value: {x: -0.067806, y: 0.281693, z: -0.010309} + - time: 0.100000 + value: {x: -0.090044, y: 0.159995, z: -0.015712} + - time: 0.133333 + value: {x: -0.110669, y: 0.083830, z: -0.022027} + - time: 0.166667 + value: {x: -0.130059, y: 0.041789, z: -0.029052} + - time: 0.200000 + value: {x: -0.148561, y: 0.020704, z: -0.036786} + - time: 0.233333 + value: {x: -0.166622, y: 0.009726, z: -0.045639} + - time: 0.266667 + value: {x: -0.185285, y: 0.004535, z: -0.057308} + - time: 0.300000 + value: {x: -0.205580, y: 0.002120, z: -0.073430} + - time: 0.333333 + value: {x: -0.228310, y: 0.001100, z: -0.095261} + - time: 0.366667 + value: {x: -0.254101, y: 0.001151, z: -0.124050} + - time: 0.400000 + value: {x: -0.283038, y: 0.002213, z: -0.159646} + - time: 0.433333 + value: {x: -0.312590, y: 0.004313, z: -0.197172} + - time: 0.466667 + value: {x: -0.339842, y: 0.007496, z: -0.231261} + - time: 0.500000 + value: {x: -0.363353, y: 0.012088, z: -0.258872} + - time: 0.533333 + value: {x: -0.383985, y: 0.018289, z: -0.281769} + - time: 0.566667 + value: {x: -0.402509, y: 0.026521, z: -0.301357} + - time: 0.600000 + value: {x: -0.419018, y: 0.036733, z: -0.317622} + - time: 0.633333 + value: {x: -0.432767, y: 0.048865, z: -0.329078} + - time: 0.666667 + value: {x: -0.443358, y: 0.062273, z: -0.335156} + - time: 0.700000 + value: {x: -0.450872, y: 0.074827, z: -0.335853} + - time: 0.733333 + value: {x: -0.455955, y: 0.083855, z: -0.332479} + - time: 0.766667 + value: {x: -0.459222, y: 0.087186, z: -0.325863} + - time: 0.800000 + value: {x: -0.462057, y: 0.084622, z: -0.319005} + - time: 0.833333 + value: {x: -0.465998, y: 0.076853, z: -0.314327} + - time: 0.866667 + value: {x: -0.472193, y: 0.064331, z: -0.314414} + - time: 0.900000 + value: {x: -0.480829, y: 0.049392, z: -0.319314} + - time: 0.933333 + value: {x: -0.491659, y: 0.034506, z: -0.328610} + - time: 0.966667 + value: {x: -0.504784, y: 0.021661, z: -0.342432} + - time: 1.000000 + value: {x: -0.521798, y: 0.011505, z: -0.363897} + - time: 1.033333 + value: {x: -0.544930, y: 0.004177, z: -0.396967} + - time: 1.066667 + value: {x: -0.575968, y: -0.000422, z: -0.445276} + - time: 1.100000 + value: {x: -0.614427, y: -0.002525, z: -0.507706} + - time: 1.133333 + value: {x: -0.657391, y: -0.002791, z: -0.578865} + - time: 1.166667 + value: {x: -0.702087, y: -0.001814, z: -0.653564} + - time: 1.200000 + value: {x: -0.746220, y: 0.000021, z: -0.727318} + - time: 1.233333 + value: {x: -0.788153, y: 0.002711, z: -0.796973} + - time: 1.266667 + value: {x: -0.826490, y: 0.006318, z: -0.860280} + - time: 1.300000 + value: {x: -0.860214, y: 0.011142, z: -0.914854} + - time: 1.333333 + value: {x: -0.888983, y: 0.016981, z: -0.960397} + - time: 1.366667 + value: {x: -0.912608, y: 0.023849, z: -0.996455} + - time: 1.400000 + value: {x: -0.932517, y: 0.031229, z: -1.025763} + - time: 1.433333 + value: {x: -0.948939, y: 0.039084, z: -1.048545} + - time: 1.466667 + value: {x: -0.962924, y: 0.047005, z: -1.066893} + - time: 1.500000 + value: {x: -0.974933, y: 0.054879, z: -1.081535} + - time: 1.533333 + value: {x: -0.985229, y: 0.062542, z: -1.093346} + - time: 1.566667 + value: {x: -0.994244, y: 0.070189, z: -1.102596} + - time: 1.600000 + value: {x: -1.002186, y: 0.077626, z: -1.110174} + - time: 1.633333 + value: {x: -1.009281, y: 0.084975, z: -1.116190} + - time: 1.666667 + value: {x: -1.015663, y: 0.092197, z: -1.121008} + - time: 1.700000 + value: {x: -1.021454, y: 0.099292, z: -1.124858} + - time: 1.733333 + value: {x: -1.026708, y: 0.106299, z: -1.127787} + - time: 1.766667 + value: {x: -1.031431, y: 0.113195, z: -1.129845} + - time: 1.800000 + value: {x: -1.035663, y: 0.119967, z: -1.131087} + - time: 1.833333 + value: {x: -1.039436, y: 0.126627, z: -1.131527} + - time: 1.866667 + value: {x: -1.042749, y: 0.133070, z: -1.131427} + - time: 1.900000 + value: {x: -1.045521, y: 0.139560, z: -1.130038} + - time: 1.933333 + value: {x: -1.047797, y: 0.145808, z: -1.128124} + - time: 1.966667 + value: {x: -1.049731, y: 0.151938, z: -1.125603} + - time: 2.000000 + value: {x: -1.051155, y: 0.157999, z: -1.122121} + - time: 2.033333 + value: {x: -1.052150, y: 0.163916, z: -1.117940} + - time: 2.066667 + value: {x: -1.052925, y: 0.169669, z: -1.113440} + - time: 2.100000 + value: {x: -1.053204, y: 0.175216, z: -1.107938} + - time: 2.133333 + value: {x: -1.053326, y: 0.180397, z: -1.102529} + - time: 2.166667 + value: {x: -1.053203, y: 0.185291, z: -1.096610} + - time: 2.200000 + value: {x: -1.052958, y: 0.189880, z: -1.090348} + - time: 2.233333 + value: {x: -1.052541, y: 0.193993, z: -1.084234} + - time: 2.266667 + value: {x: -1.052050, y: 0.197748, z: -1.077681} + - time: 2.300000 + value: {x: -1.051493, y: 0.201137, z: -1.071247} + - time: 2.366667 + value: {x: -1.050215, y: 0.206455, z: -1.058314} + - time: 2.400000 + value: {x: -1.049539, y: 0.208386, z: -1.052003} + - time: 2.433333 + value: {x: -1.048897, y: 0.209987, z: -1.045573} + - time: 2.466667 + value: {x: -1.048274, y: 0.211224, z: -1.039335} + - time: 2.500000 + value: {x: -1.047654, y: 0.211812, z: -1.033217} + - time: 2.533333 + value: {x: -1.047063, y: 0.212337, z: -1.027352} + - time: 2.600000 + value: {x: -1.046007, y: 0.211859, z: -1.015835} + - time: 2.633333 + value: {x: -1.045553, y: 0.211310, z: -1.010274} + - time: 2.666667 + value: {x: -1.045167, y: 0.210466, z: -1.004740} + - time: 2.700000 + value: {x: -1.044795, y: 0.209575, z: -0.999477} + - time: 2.766667 + value: {x: -1.044229, y: 0.206841, z: -0.989423} + - time: 2.800000 + value: {x: -1.043974, y: 0.205391, z: -0.984728} + - time: 2.833333 + value: {x: -1.043853, y: 0.203648, z: -0.980009} + - time: 2.900000 + value: {x: -1.043671, y: 0.200125, z: -0.971119} + - time: 2.966667 + value: {x: -1.043742, y: 0.196033, z: -0.962940} + - time: 3.033333 + value: {x: -1.043971, y: 0.191898, z: -0.955291} + - time: 3.066667 + value: {x: -1.044187, y: 0.189686, z: -0.951725} + - time: 3.133333 + value: {x: -1.044648, y: 0.185335, z: -0.945017} + - time: 3.233333 + value: {x: -1.045794, y: 0.178656, z: -0.935724} + - time: 3.333333 + value: {x: -1.047077, y: 0.172018, z: -0.927261} + - time: 3.466667 + value: {x: -1.048872, y: 0.163450, z: -0.916782} + - time: 3.633333 + value: {x: -1.050997, y: 0.153375, z: -0.904426} + - time: 3.733333 + value: {x: -1.052213, y: 0.147789, z: -0.897368} + - time: 3.766667 + value: {x: -1.052596, y: 0.145940, z: -0.895270} + - time: 3.800000 + value: {x: -1.052905, y: 0.144235, z: -0.892681} + - time: 3.900000 + value: {x: -1.053880, y: 0.139226, z: -0.885782} + - time: 3.966667 + value: {x: -1.054612, y: 0.136087, z: -0.881669} + - time: 4.066667 + value: {x: -1.055499, y: 0.131828, z: -0.874954} + - time: 4.100000 + value: {x: -1.055764, y: 0.130390, z: -0.873026} + - time: 4.133333 + value: {x: -1.056123, y: 0.129179, z: -0.870830} + - time: 4.166667 + value: {x: -1.056476, y: 0.127933, z: -0.868887} + - time: 4.200000 + value: {x: -1.056818, y: 0.126636, z: -0.867222} + - time: 4.233333 + value: {x: -1.057248, y: 0.125552, z: -0.865312} + - time: 4.300000 + value: {x: -1.058046, y: 0.123327, z: -0.862013} + - time: 4.333333 + value: {x: -1.058400, y: 0.122385, z: -0.860034} + - time: 4.433333 + value: {x: -1.059583, y: 0.119632, z: -0.855104} + - time: 4.500000 + value: {x: -1.060529, y: 0.117997, z: -0.852369} + - time: 4.533333 + value: {x: -1.061029, y: 0.117188, z: -0.851271} + - time: 4.566667 + value: {x: -1.061629, y: 0.116596, z: -0.849933} + - time: 4.600000 + value: {x: -1.062195, y: 0.115870, z: -0.849050} + - time: 4.666667 + value: {x: -1.063539, y: 0.114843, z: -0.847021} + - time: 4.700000 + value: {x: -1.064211, y: 0.114256, z: -0.846437} + - time: 4.766666 + value: {x: -1.065772, y: 0.113516, z: -0.844994} + - time: 4.833333 + value: {x: -1.067418, y: 0.112798, z: -0.844284} + - time: 4.900000 + value: {x: -1.069274, y: 0.112424, z: -0.843685} + - time: 4.933333 + value: {x: -1.070228, y: 0.112224, z: -0.843711} + - time: 5.333333 + value: {x: -1.082188, y: 0.111939, z: -0.845459} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.493883, y: 0.493883, z: 0.493883} + - time: 0.166667 + value: {x: 0.529612, y: 0.529612, z: 0.529612} + - time: 0.300000 + value: {x: 0.558962, y: 0.558962, z: 0.558962} + - time: 0.433333 + value: {x: 0.588988, y: 0.588988, z: 0.588988} + - time: 0.566667 + value: {x: 0.619684, y: 0.619684, z: 0.619684} + - time: 0.700000 + value: {x: 0.651047, y: 0.651047, z: 0.651047} + - time: 0.833333 + value: {x: 0.683070, y: 0.683070, z: 0.683070} + - time: 0.966667 + value: {x: 0.715751, y: 0.715751, z: 0.715751} + - time: 1.100000 + value: {x: 0.749084, y: 0.749084, z: 0.749084} + - time: 1.233333 + value: {x: 0.783065, y: 0.783065, z: 0.783065} + - time: 1.366667 + value: {x: 0.817690, y: 0.817690, z: 0.817690} + - time: 1.500000 + value: {x: 0.852955, y: 0.852955, z: 0.852955} + - time: 1.666667 + value: {x: 0.897930, y: 0.897930, z: 0.897930} + - time: 1.833333 + value: {x: 0.943893, y: 0.943893, z: 0.943893} + - time: 2.000000 + value: {x: 0.990835, y: 0.990835, z: 0.990835} + - time: 2.166667 + value: {x: 1.038750, y: 1.038750, z: 1.038750} + - time: 2.333333 + value: {x: 1.087632, y: 1.087632, z: 1.087632} + - time: 2.500000 + value: {x: 1.137474, y: 1.137474, z: 1.137474} + - time: 2.666667 + value: {x: 1.188270, y: 1.188270, z: 1.188270} + - time: 2.833333 + value: {x: 1.240014, y: 1.240014, z: 1.240014} + - time: 3.000000 + value: {x: 1.292700, y: 1.292700, z: 1.292700} + - time: 3.166667 + value: {x: 1.346323, y: 1.346323, z: 1.346323} + - time: 3.333333 + value: {x: 1.400878, y: 1.400878, z: 1.400878} + - time: 3.500000 + value: {x: 1.456358, y: 1.456358, z: 1.456358} + - time: 3.666667 + value: {x: 1.512760, y: 1.512760, z: 1.512760} + - time: 3.833333 + value: {x: 1.570077, y: 1.570077, z: 1.570077} + - time: 4.000000 + value: {x: 1.628306, y: 1.628306, z: 1.628306} + - time: 4.166667 + value: {x: 1.687441, y: 1.687441, z: 1.687441} + - time: 4.333333 + value: {x: 1.747478, y: 1.747478, z: 1.747478} + - time: 4.500000 + value: {x: 1.808412, y: 1.808412, z: 1.808412} + - time: 4.666667 + value: {x: 1.870239, y: 1.870239, z: 1.870239} + - time: 4.833333 + value: {x: 1.932955, y: 1.932955, z: 1.932955} + - time: 5.000000 + value: {x: 1.996554, y: 1.996554, z: 1.996554} + - time: 5.166667 + value: {x: 2.061035, y: 2.061035, z: 2.061035} + - time: 5.333333 + value: {x: 2.126391, y: 2.126391, z: 2.126391} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_12: + position: + - time: 0.000000 + value: {x: 0.018476, y: 0.495621, z: -0.013713} + - time: 0.033333 + value: {x: 0.018510, y: 0.495691, z: -0.013739} + - time: 0.066667 + value: {x: 0.028522, y: 0.341658, z: -0.021875} + - time: 0.100000 + value: {x: 0.036198, y: 0.238556, z: -0.030910} + - time: 0.133333 + value: {x: 0.042251, y: 0.178984, z: -0.040451} + - time: 0.166667 + value: {x: 0.047063, y: 0.152018, z: -0.050367} + - time: 0.200000 + value: {x: 0.050801, y: 0.144776, z: -0.060774} + - time: 0.233333 + value: {x: 0.053373, y: 0.146634, z: -0.072117} + - time: 0.266667 + value: {x: 0.053984, y: 0.153467, z: -0.086059} + - time: 0.300000 + value: {x: 0.051813, y: 0.162344, z: -0.104343} + - time: 0.333333 + value: {x: 0.046229, y: 0.171931, z: -0.128338} + - time: 0.366667 + value: {x: 0.036677, y: 0.182144, z: -0.158993} + - time: 0.400000 + value: {x: 0.023214, y: 0.192844, z: -0.196440} + - time: 0.433333 + value: {x: 0.008459, y: 0.204094, z: -0.235837} + - time: 0.466667 + value: {x: -0.004650, y: 0.216137, z: -0.271536} + - time: 0.500000 + value: {x: -0.014557, y: 0.229134, z: -0.300882} + - time: 0.533333 + value: {x: -0.022117, y: 0.243472, z: -0.325348} + - time: 0.566667 + value: {x: -0.028062, y: 0.259603, z: -0.346339} + - time: 0.600000 + value: {x: -0.032414, y: 0.277393, z: -0.364046} + - time: 0.633333 + value: {x: -0.034386, y: 0.296769, z: -0.377055} + - time: 0.666667 + value: {x: -0.033599, y: 0.317267, z: -0.384489} + - time: 0.700000 + value: {x: -0.030080, y: 0.336678, z: -0.386528} + - time: 0.733333 + value: {x: -0.024480, y: 0.352436, z: -0.384309} + - time: 0.766667 + value: {x: -0.017327, y: 0.362155, z: -0.379102} + - time: 0.800000 + value: {x: -0.010077, y: 0.365969, z: -0.373296} + - time: 0.833333 + value: {x: -0.004155, y: 0.364231, z: -0.369974} + - time: 0.866667 + value: {x: -0.000790, y: 0.357744, z: -0.371075} + - time: 0.900000 + value: {x: -0.000093, y: 0.348635, z: -0.377066} + - time: 0.933333 + value: {x: -0.001817, y: 0.339425, z: -0.387442} + - time: 0.966667 + value: {x: -0.006044, y: 0.332080, z: -0.402396} + - time: 1.000000 + value: {x: -0.014383, y: 0.327350, z: -0.424862} + - time: 1.033333 + value: {x: -0.029007, y: 0.325218, z: -0.459112} + - time: 1.066667 + value: {x: -0.051757, y: 0.325801, z: -0.508378} + - time: 1.100000 + value: {x: -0.082097, y: 0.328727, z: -0.571824} + - time: 1.133333 + value: {x: -0.117124, y: 0.333418, z: -0.643909} + - time: 1.166667 + value: {x: -0.154068, y: 0.339307, z: -0.719403} + - time: 1.200000 + value: {x: -0.190590, y: 0.345896, z: -0.794046} + - time: 1.233333 + value: {x: -0.225033, y: 0.353134, z: -0.864783} + - time: 1.266667 + value: {x: -0.256079, y: 0.361373, z: -0.928816} + - time: 1.300000 + value: {x: -0.282603, y: 0.370568, z: -0.984429} + - time: 1.333333 + value: {x: -0.304336, y: 0.380787, z: -1.030819} + - time: 1.366667 + value: {x: -0.321061, y: 0.391974, z: -1.067666} + - time: 1.400000 + value: {x: -0.334218, y: 0.403657, z: -1.097628} + - time: 1.433333 + value: {x: -0.343984, y: 0.415651, z: -1.121216} + - time: 1.466667 + value: {x: -0.351434, y: 0.427638, z: -1.140351} + - time: 1.500000 + value: {x: -0.356994, y: 0.439409, z: -1.155954} + - time: 1.533333 + value: {x: -0.361007, y: 0.451095, z: -1.168342} + - time: 1.566667 + value: {x: -0.363787, y: 0.462481, z: -1.178566} + - time: 1.600000 + value: {x: -0.365645, y: 0.473758, z: -1.186791} + - time: 1.633333 + value: {x: -0.366739, y: 0.484812, z: -1.193576} + - time: 1.666667 + value: {x: -0.367224, y: 0.495695, z: -1.199119} + - time: 1.700000 + value: {x: -0.367218, y: 0.506412, z: -1.203642} + - time: 1.733333 + value: {x: -0.366764, y: 0.516965, z: -1.207269} + - time: 1.766667 + value: {x: -0.365873, y: 0.527362, z: -1.209990} + - time: 1.800000 + value: {x: -0.364581, y: 0.537581, z: -1.211883} + - time: 1.833333 + value: {x: -0.362906, y: 0.547600, z: -1.213029} + - time: 1.866667 + value: {x: -0.360903, y: 0.557520, z: -1.213301} + - time: 1.900000 + value: {x: -0.358361, y: 0.567154, z: -1.212811} + - time: 1.933333 + value: {x: -0.355471, y: 0.576730, z: -1.211340} + - time: 1.966667 + value: {x: -0.352302, y: 0.586096, z: -1.209337} + - time: 2.000000 + value: {x: -0.348680, y: 0.595276, z: -1.206497} + - time: 2.033333 + value: {x: -0.344708, y: 0.604275, z: -1.202929} + - time: 2.066667 + value: {x: -0.340589, y: 0.613071, z: -1.199021} + - time: 2.100000 + value: {x: -0.336010, y: 0.621500, z: -1.194327} + - time: 2.133333 + value: {x: -0.331412, y: 0.629748, z: -1.189281} + - time: 2.166667 + value: {x: -0.326608, y: 0.637568, z: -1.183907} + - time: 2.200000 + value: {x: -0.321706, y: 0.644891, z: -1.178463} + - time: 2.233333 + value: {x: -0.316781, y: 0.651998, z: -1.172592} + - time: 2.266667 + value: {x: -0.311766, y: 0.658420, z: -1.166820} + - time: 2.300000 + value: {x: -0.306783, y: 0.664561, z: -1.160921} + - time: 2.333333 + value: {x: -0.301799, y: 0.670164, z: -1.154830} + - time: 2.366667 + value: {x: -0.296840, y: 0.675292, z: -1.148999} + - time: 2.400000 + value: {x: -0.291948, y: 0.679959, z: -1.143018} + - time: 2.433333 + value: {x: -0.287089, y: 0.684070, z: -1.137274} + - time: 2.466667 + value: {x: -0.282329, y: 0.687847, z: -1.131592} + - time: 2.533333 + value: {x: -0.273056, y: 0.694105, z: -1.120376} + - time: 2.600000 + value: {x: -0.264134, y: 0.698574, z: -1.109725} + - time: 2.633333 + value: {x: -0.259817, y: 0.700422, z: -1.104640} + - time: 2.700000 + value: {x: -0.251455, y: 0.703275, z: -1.094985} + - time: 2.800000 + value: {x: -0.239685, y: 0.706051, z: -1.081323} + - time: 2.866667 + value: {x: -0.232348, y: 0.706869, z: -1.073086} + - time: 2.900000 + value: {x: -0.228781, y: 0.707213, z: -1.069256} + - time: 3.000000 + value: {x: -0.218780, y: 0.707477, z: -1.058311} + - time: 3.100000 + value: {x: -0.209616, y: 0.707058, z: -1.048705} + - time: 3.166667 + value: {x: -0.203924, y: 0.706591, z: -1.042907} + - time: 3.266667 + value: {x: -0.195936, y: 0.705692, z: -1.035086} + - time: 3.333333 + value: {x: -0.190883, y: 0.704815, z: -1.030365} + - time: 3.500000 + value: {x: -0.178979, y: 0.702950, z: -1.019085} + - time: 3.700000 + value: {x: -0.165650, y: 0.701094, z: -1.006259} + - time: 3.733333 + value: {x: -0.163535, y: 0.700777, z: -1.004420} + - time: 3.833333 + value: {x: -0.157180, y: 0.700167, z: -0.998099} + - time: 3.900000 + value: {x: -0.153082, y: 0.699792, z: -0.994237} + - time: 4.000000 + value: {x: -0.147264, y: 0.699516, z: -0.988751} + - time: 4.033333 + value: {x: -0.145282, y: 0.699558, z: -0.986577} + - time: 4.066667 + value: {x: -0.143321, y: 0.699447, z: -0.984824} + - time: 4.100000 + value: {x: -0.141450, y: 0.699550, z: -0.982819} + - time: 4.133333 + value: {x: -0.139596, y: 0.699500, z: -0.981233} + - time: 4.200000 + value: {x: -0.136106, y: 0.699776, z: -0.977785} + - time: 4.266666 + value: {x: -0.132794, y: 0.700000, z: -0.974982} + - time: 4.400000 + value: {x: -0.126333, y: 0.701035, z: -0.968898} + - time: 4.433333 + value: {x: -0.124819, y: 0.701255, z: -0.967776} + - time: 4.533333 + value: {x: -0.120710, y: 0.702520, z: -0.964211} + - time: 4.566667 + value: {x: -0.119433, y: 0.702875, z: -0.963450} + - time: 4.600000 + value: {x: -0.118252, y: 0.703454, z: -0.962433} + - time: 4.700000 + value: {x: -0.115008, y: 0.705109, z: -0.960459} + - time: 4.733333 + value: {x: -0.114043, y: 0.705720, z: -0.960003} + - time: 4.800000 + value: {x: -0.112280, y: 0.706988, z: -0.959488} + - time: 4.866667 + value: {x: -0.110789, y: 0.708565, z: -0.959052} + - time: 4.966667 + value: {x: -0.108983, y: 0.711083, z: -0.959363} + - time: 5.333333 + value: {x: -0.104400, y: 0.720581, z: -0.962921} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.299833, y: 0.299833, z: 0.299833} + - time: 0.166667 + value: {x: 0.326207, y: 0.326207, z: 0.326207} + - time: 0.333333 + value: {x: 0.353527, y: 0.353527, z: 0.353527} + - time: 0.500000 + value: {x: 0.381785, y: 0.381785, z: 0.381785} + - time: 0.666667 + value: {x: 0.410968, y: 0.410968, z: 0.410968} + - time: 0.833333 + value: {x: 0.441068, y: 0.441068, z: 0.441068} + - time: 1.000000 + value: {x: 0.472075, y: 0.472075, z: 0.472075} + - time: 1.166667 + value: {x: 0.503980, y: 0.503980, z: 0.503980} + - time: 1.333333 + value: {x: 0.536776, y: 0.536776, z: 0.536776} + - time: 1.500000 + value: {x: 0.570453, y: 0.570453, z: 0.570453} + - time: 1.666667 + value: {x: 0.605005, y: 0.605005, z: 0.605005} + - time: 1.833333 + value: {x: 0.640424, y: 0.640424, z: 0.640424} + - time: 2.000000 + value: {x: 0.676704, y: 0.676704, z: 0.676704} + - time: 2.166667 + value: {x: 0.713836, y: 0.713836, z: 0.713836} + - time: 2.333333 + value: {x: 0.751816, y: 0.751816, z: 0.751816} + - time: 2.500000 + value: {x: 0.790636, y: 0.790636, z: 0.790636} + - time: 2.666667 + value: {x: 0.830290, y: 0.830290, z: 0.830290} + - time: 2.833333 + value: {x: 0.870774, y: 0.870774, z: 0.870774} + - time: 3.000000 + value: {x: 0.912081, y: 0.912081, z: 0.912081} + - time: 3.166667 + value: {x: 0.954205, y: 0.954205, z: 0.954205} + - time: 3.333333 + value: {x: 0.997142, y: 0.997142, z: 0.997142} + - time: 3.500000 + value: {x: 1.040886, y: 1.040886, z: 1.040886} + - time: 3.666667 + value: {x: 1.085433, y: 1.085433, z: 1.085433} + - time: 3.833333 + value: {x: 1.130777, y: 1.130777, z: 1.130777} + - time: 4.000000 + value: {x: 1.176914, y: 1.176914, z: 1.176914} + - time: 4.166667 + value: {x: 1.223840, y: 1.223840, z: 1.223840} + - time: 4.333333 + value: {x: 1.271550, y: 1.271550, z: 1.271550} + - time: 4.500000 + value: {x: 1.320039, y: 1.320039, z: 1.320039} + - time: 4.666667 + value: {x: 1.369305, y: 1.369305, z: 1.369305} + - time: 4.833333 + value: {x: 1.419342, y: 1.419342, z: 1.419342} + - time: 5.000000 + value: {x: 1.470146, y: 1.470146, z: 1.470146} + - time: 5.166667 + value: {x: 1.521715, y: 1.521715, z: 1.521715} + - time: 5.333333 + value: {x: 1.574043, y: 1.574043, z: 1.574043} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_13: + position: + - time: 0.000000 + value: {x: -0.047420, y: 0.457087, z: -0.007235} + - time: 0.033333 + value: {x: -0.047642, y: 0.457083, z: -0.007270} + - time: 0.066667 + value: {x: -0.074796, y: 0.281597, z: -0.011654} + - time: 0.100000 + value: {x: -0.100414, y: 0.159866, z: -0.016645} + - time: 0.133333 + value: {x: -0.124824, y: 0.083670, z: -0.022033} + - time: 0.166667 + value: {x: -0.148321, y: 0.041598, z: -0.027739} + - time: 0.200000 + value: {x: -0.171264, y: 0.020483, z: -0.033776} + - time: 0.233333 + value: {x: -0.194273, y: 0.009476, z: -0.040413} + - time: 0.266667 + value: {x: -0.219094, y: 0.004255, z: -0.048714} + - time: 0.300000 + value: {x: -0.247471, y: 0.001811, z: -0.059663} + - time: 0.333333 + value: {x: -0.280756, y: 0.000766, z: -0.074006} + - time: 0.366667 + value: {x: -0.320033, y: 0.000786, z: -0.092595} + - time: 0.400000 + value: {x: -0.365384, y: 0.001821, z: -0.115268} + - time: 0.433333 + value: {x: -0.412218, y: 0.003896, z: -0.139057} + - time: 0.466667 + value: {x: -0.455278, y: 0.007048, z: -0.160776} + - time: 0.500000 + value: {x: -0.491923, y: 0.011617, z: -0.178475} + - time: 0.533333 + value: {x: -0.523692, y: 0.017790, z: -0.193312} + - time: 0.566667 + value: {x: -0.551950, y: 0.025990, z: -0.206143} + - time: 0.600000 + value: {x: -0.576828, y: 0.036173, z: -0.216908} + - time: 0.633333 + value: {x: -0.596966, y: 0.048284, z: -0.224686} + - time: 0.666667 + value: {x: -0.611655, y: 0.061663, z: -0.229216} + - time: 0.700000 + value: {x: -0.621012, y: 0.074191, z: -0.230449} + - time: 0.733333 + value: {x: -0.626199, y: 0.083185, z: -0.229232} + - time: 0.766667 + value: {x: -0.628283, y: 0.086496, z: -0.225947} + - time: 0.800000 + value: {x: -0.629773, y: 0.083897, z: -0.222595} + - time: 0.833333 + value: {x: -0.633389, y: 0.076108, z: -0.220461} + - time: 0.866667 + value: {x: -0.641218, y: 0.063551, z: -0.221307} + - time: 0.900000 + value: {x: -0.653568, y: 0.048583, z: -0.225040} + - time: 0.933333 + value: {x: -0.669992, y: 0.033668, z: -0.231434} + - time: 0.966667 + value: {x: -0.690658, y: 0.020799, z: -0.240551} + - time: 1.000000 + value: {x: -0.718441, y: 0.010612, z: -0.254341} + - time: 1.033333 + value: {x: -0.757316, y: 0.003263, z: -0.275124} + - time: 1.066667 + value: {x: -0.810516, y: -0.001366, z: -0.305232} + - time: 1.100000 + value: {x: -0.877148, y: -0.003494, z: -0.343902} + - time: 1.133333 + value: {x: -0.951976, y: -0.003790, z: -0.387897} + - time: 1.166667 + value: {x: -1.030021, y: -0.002849, z: -0.434073} + - time: 1.200000 + value: {x: -1.107140, y: -0.001043, z: -0.479635} + - time: 1.233333 + value: {x: -1.180382, y: 0.001628, z: -0.522631} + - time: 1.266667 + value: {x: -1.247271, y: 0.005199, z: -0.561861} + - time: 1.300000 + value: {x: -1.305935, y: 0.010003, z: -0.595670} + - time: 1.333333 + value: {x: -1.355788, y: 0.015814, z: -0.624031} + - time: 1.366667 + value: {x: -1.396478, y: 0.022652, z: -0.646628} + - time: 1.400000 + value: {x: -1.430574, y: 0.029994, z: -0.665150} + - time: 1.433333 + value: {x: -1.458465, y: 0.037821, z: -0.679643} + - time: 1.466667 + value: {x: -1.482049, y: 0.045713, z: -0.691435} + - time: 1.500000 + value: {x: -1.502140, y: 0.053569, z: -0.700908} + - time: 1.533333 + value: {x: -1.519236, y: 0.061194, z: -0.708770} + - time: 1.566667 + value: {x: -1.534071, y: 0.068826, z: -0.714940} + - time: 1.600000 + value: {x: -1.547058, y: 0.076229, z: -0.720186} + - time: 1.633333 + value: {x: -1.558573, y: 0.083553, z: -0.724436} + - time: 1.666667 + value: {x: -1.568866, y: 0.090747, z: -0.727963} + - time: 1.700000 + value: {x: -1.578154, y: 0.097811, z: -0.730909} + - time: 1.733333 + value: {x: -1.586529, y: 0.104791, z: -0.733279} + - time: 1.766667 + value: {x: -1.594002, y: 0.111657, z: -0.735123} + - time: 1.800000 + value: {x: -1.600644, y: 0.118399, z: -0.736468} + - time: 1.833333 + value: {x: -1.606507, y: 0.125034, z: -0.737299} + - time: 1.866667 + value: {x: -1.611607, y: 0.131431, z: -0.737904} + - time: 1.900000 + value: {x: -1.615753, y: 0.137909, z: -0.737545} + - time: 1.933333 + value: {x: -1.619078, y: 0.144117, z: -0.737010} + - time: 1.966667 + value: {x: -1.621828, y: 0.150211, z: -0.736074} + - time: 2.000000 + value: {x: -1.623694, y: 0.156246, z: -0.734506} + - time: 2.033333 + value: {x: -1.624835, y: 0.162135, z: -0.732517} + - time: 2.066667 + value: {x: -1.625620, y: 0.167860, z: -0.730333} + - time: 2.100000 + value: {x: -1.625541, y: 0.173395, z: -0.727460} + - time: 2.133333 + value: {x: -1.625242, y: 0.178532, z: -0.724789} + - time: 2.166667 + value: {x: -1.624530, y: 0.183396, z: -0.721740} + - time: 2.200000 + value: {x: -1.623621, y: 0.187975, z: -0.718383} + - time: 2.233333 + value: {x: -1.622467, y: 0.192037, z: -0.715307} + - time: 2.266667 + value: {x: -1.621186, y: 0.195782, z: -0.711774} + - time: 2.300000 + value: {x: -1.619834, y: 0.199142, z: -0.708391} + - time: 2.333333 + value: {x: -1.618350, y: 0.201858, z: -0.705121} + - time: 2.366667 + value: {x: -1.616932, y: 0.204401, z: -0.701591} + - time: 2.400000 + value: {x: -1.615471, y: 0.206290, z: -0.698339} + - time: 2.433333 + value: {x: -1.614083, y: 0.207876, z: -0.694884} + - time: 2.466667 + value: {x: -1.612766, y: 0.209090, z: -0.691587} + - time: 2.533333 + value: {x: -1.610297, y: 0.210130, z: -0.685398} + - time: 2.600000 + value: {x: -1.608211, y: 0.209589, z: -0.679439} + - time: 2.633333 + value: {x: -1.607338, y: 0.209013, z: -0.676556} + - time: 2.666667 + value: {x: -1.606603, y: 0.208160, z: -0.673603} + - time: 2.700000 + value: {x: -1.605929, y: 0.207239, z: -0.670906} + - time: 2.733333 + value: {x: -1.605406, y: 0.205904, z: -0.668272} + - time: 2.800000 + value: {x: -1.604597, y: 0.202953, z: -0.663501} + - time: 2.833333 + value: {x: -1.604461, y: 0.201199, z: -0.661040} + - time: 2.866667 + value: {x: -1.604353, y: 0.199310, z: -0.658938} + - time: 2.900000 + value: {x: -1.604381, y: 0.197625, z: -0.656583} + - time: 2.933333 + value: {x: -1.604574, y: 0.195565, z: -0.654513} + - time: 3.000000 + value: {x: -1.605156, y: 0.191384, z: -0.650778} + - time: 3.066667 + value: {x: -1.606304, y: 0.187051, z: -0.647151} + - time: 3.133333 + value: {x: -1.607684, y: 0.182620, z: -0.644113} + - time: 3.233333 + value: {x: -1.610680, y: 0.175878, z: -0.639760} + - time: 3.333333 + value: {x: -1.614089, y: 0.169161, z: -0.635969} + - time: 3.533333 + value: {x: -1.621584, y: 0.156331, z: -0.629195} + - time: 3.666667 + value: {x: -1.626503, y: 0.148265, z: -0.625135} + - time: 3.733333 + value: {x: -1.629126, y: 0.144615, z: -0.623013} + - time: 3.766667 + value: {x: -1.630400, y: 0.142710, z: -0.622279} + - time: 3.800000 + value: {x: -1.631532, y: 0.141005, z: -0.621021} + - time: 3.833333 + value: {x: -1.632650, y: 0.139186, z: -0.620136} + - time: 3.933333 + value: {x: -1.636415, y: 0.134341, z: -0.617145} + - time: 3.966667 + value: {x: -1.637719, y: 0.132703, z: -0.616483} + - time: 4.000000 + value: {x: -1.639030, y: 0.131300, z: -0.615396} + - time: 4.033333 + value: {x: -1.640091, y: 0.129697, z: -0.614671} + - time: 4.066667 + value: {x: -1.641303, y: 0.128393, z: -0.613505} + - time: 4.100000 + value: {x: -1.642481, y: 0.126895, z: -0.612869} + - time: 4.133333 + value: {x: -1.643810, y: 0.125695, z: -0.611790} + - time: 4.166667 + value: {x: -1.645151, y: 0.124425, z: -0.610997} + - time: 4.200000 + value: {x: -1.646495, y: 0.123064, z: -0.610527} + - time: 4.233333 + value: {x: -1.647985, y: 0.121984, z: -0.609645} + - time: 4.300000 + value: {x: -1.650908, y: 0.119684, z: -0.608509} + - time: 4.333333 + value: {x: -1.652286, y: 0.118750, z: -0.607565} + - time: 4.400000 + value: {x: -1.655125, y: 0.116695, z: -0.606505} + - time: 4.433333 + value: {x: -1.656721, y: 0.115931, z: -0.605680} + - time: 4.500000 + value: {x: -1.660006, y: 0.114235, z: -0.604813} + - time: 4.533333 + value: {x: -1.661718, y: 0.113368, z: -0.604645} + - time: 4.566667 + value: {x: -1.663592, y: 0.112791, z: -0.604052} + - time: 4.600000 + value: {x: -1.665439, y: 0.112002, z: -0.604032} + - time: 4.666667 + value: {x: -1.669496, y: 0.110969, z: -0.603370} + - time: 4.700000 + value: {x: -1.671553, y: 0.110316, z: -0.603536} + - time: 4.766666 + value: {x: -1.676041, y: 0.109568, z: -0.603226} + - time: 4.800000 + value: {x: -1.678365, y: 0.109188, z: -0.603313} + - time: 4.833333 + value: {x: -1.680729, y: 0.108768, z: -0.603639} + - time: 4.900000 + value: {x: -1.685799, y: 0.108375, z: -0.603874} + - time: 4.933333 + value: {x: -1.688401, y: 0.108125, z: -0.604335} + - time: 5.333333 + value: {x: -1.720912, y: 0.107555, z: -0.609463} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.299833, y: 0.299833, z: 0.299833} + - time: 0.166667 + value: {x: 0.326207, y: 0.326207, z: 0.326207} + - time: 0.333333 + value: {x: 0.353527, y: 0.353527, z: 0.353527} + - time: 0.500000 + value: {x: 0.381785, y: 0.381785, z: 0.381785} + - time: 0.666667 + value: {x: 0.410968, y: 0.410968, z: 0.410968} + - time: 0.833333 + value: {x: 0.441068, y: 0.441068, z: 0.441068} + - time: 1.000000 + value: {x: 0.472075, y: 0.472075, z: 0.472075} + - time: 1.166667 + value: {x: 0.503980, y: 0.503980, z: 0.503980} + - time: 1.333333 + value: {x: 0.536776, y: 0.536776, z: 0.536776} + - time: 1.500000 + value: {x: 0.570453, y: 0.570453, z: 0.570453} + - time: 1.666667 + value: {x: 0.605005, y: 0.605005, z: 0.605005} + - time: 1.833333 + value: {x: 0.640424, y: 0.640424, z: 0.640424} + - time: 2.000000 + value: {x: 0.676704, y: 0.676704, z: 0.676704} + - time: 2.166667 + value: {x: 0.713836, y: 0.713836, z: 0.713836} + - time: 2.333333 + value: {x: 0.751816, y: 0.751816, z: 0.751816} + - time: 2.500000 + value: {x: 0.790636, y: 0.790636, z: 0.790636} + - time: 2.666667 + value: {x: 0.830290, y: 0.830290, z: 0.830290} + - time: 2.833333 + value: {x: 0.870774, y: 0.870774, z: 0.870774} + - time: 3.000000 + value: {x: 0.912081, y: 0.912081, z: 0.912081} + - time: 3.166667 + value: {x: 0.954205, y: 0.954205, z: 0.954205} + - time: 3.333333 + value: {x: 0.997142, y: 0.997142, z: 0.997142} + - time: 3.500000 + value: {x: 1.040886, y: 1.040886, z: 1.040886} + - time: 3.666667 + value: {x: 1.085433, y: 1.085433, z: 1.085433} + - time: 3.833333 + value: {x: 1.130777, y: 1.130777, z: 1.130777} + - time: 4.000000 + value: {x: 1.176914, y: 1.176914, z: 1.176914} + - time: 4.166667 + value: {x: 1.223840, y: 1.223840, z: 1.223840} + - time: 4.333333 + value: {x: 1.271550, y: 1.271550, z: 1.271550} + - time: 4.500000 + value: {x: 1.320039, y: 1.320039, z: 1.320039} + - time: 4.666667 + value: {x: 1.369305, y: 1.369305, z: 1.369305} + - time: 4.833333 + value: {x: 1.419342, y: 1.419342, z: 1.419342} + - time: 5.000000 + value: {x: 1.470146, y: 1.470146, z: 1.470146} + - time: 5.166667 + value: {x: 1.521715, y: 1.521715, z: 1.521715} + - time: 5.333333 + value: {x: 1.574043, y: 1.574043, z: 1.574043} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_14: + position: + - time: 0.000000 + value: {x: 0.041692, y: 0.463772, z: 0.026417} + - time: 0.033333 + value: {x: 0.041881, y: 0.463800, z: 0.026537} + - time: 0.066667 + value: {x: 0.064839, y: 0.292075, z: 0.041077} + - time: 0.100000 + value: {x: 0.083061, y: 0.173624, z: 0.052644} + - time: 0.133333 + value: {x: 0.098015, y: 0.100375, z: 0.062123} + - time: 0.166667 + value: {x: 0.110491, y: 0.061007, z: 0.070000} + - time: 0.200000 + value: {x: 0.120823, y: 0.042388, z: 0.076529} + - time: 0.233333 + value: {x: 0.128891, y: 0.033710, z: 0.081629} + - time: 0.266667 + value: {x: 0.133330, y: 0.030695, z: 0.084377} + - time: 0.300000 + value: {x: 0.132649, y: 0.030333, z: 0.083887} + - time: 0.333333 + value: {x: 0.125684, y: 0.031236, z: 0.079486} + - time: 0.366667 + value: {x: 0.111605, y: 0.033168, z: 0.070411} + - time: 0.400000 + value: {x: 0.090395, y: 0.036016, z: 0.056853} + - time: 0.433333 + value: {x: 0.066751, y: 0.039808, z: 0.041826} + - time: 0.466667 + value: {x: 0.046104, y: 0.044664, z: 0.028568} + - time: 0.500000 + value: {x: 0.031070, y: 0.050828, z: 0.019033} + - time: 0.533333 + value: {x: 0.020261, y: 0.058574, z: 0.012112} + - time: 0.566667 + value: {x: 0.012371, y: 0.068330, z: 0.006969} + - time: 0.600000 + value: {x: 0.007264, y: 0.080002, z: 0.003669} + - time: 0.633333 + value: {x: 0.006325, y: 0.093516, z: 0.003147} + - time: 0.666667 + value: {x: 0.010390, y: 0.108306, z: 0.005698} + - time: 0.700000 + value: {x: 0.019324, y: 0.122202, z: 0.011374} + - time: 0.733333 + value: {x: 0.032047, y: 0.132572, z: 0.019350} + - time: 0.766667 + value: {x: 0.047395, y: 0.137150, z: 0.029223} + - time: 0.800000 + value: {x: 0.063056, y: 0.135881, z: 0.039046} + - time: 0.833333 + value: {x: 0.076147, y: 0.129299, z: 0.047496} + - time: 0.866667 + value: {x: 0.084783, y: 0.118013, z: 0.052864} + - time: 0.900000 + value: {x: 0.088558, y: 0.104264, z: 0.055219} + - time: 0.933333 + value: {x: 0.087958, y: 0.090540, z: 0.054800} + - time: 0.966667 + value: {x: 0.082814, y: 0.078817, z: 0.051548} + - time: 1.000000 + value: {x: 0.070319, y: 0.069789, z: 0.043530} + - time: 1.033333 + value: {x: 0.046419, y: 0.063522, z: 0.028407} + - time: 1.066667 + value: {x: 0.008010, y: 0.060013, z: 0.003883} + - time: 1.100000 + value: {x: -0.044085, y: 0.058963, z: -0.029295} + - time: 1.133333 + value: {x: -0.104577, y: 0.059751, z: -0.067879} + - time: 1.166667 + value: {x: -0.168466, y: 0.061791, z: -0.108714} + - time: 1.200000 + value: {x: -0.231664, y: 0.064648, z: -0.149019} + - time: 1.233333 + value: {x: -0.291243, y: 0.068295, z: -0.186848} + - time: 1.266667 + value: {x: -0.344558, y: 0.072924, z: -0.220956} + - time: 1.300000 + value: {x: -0.389924, y: 0.078679, z: -0.249737} + - time: 1.333333 + value: {x: -0.426603, y: 0.085479, z: -0.273124} + - time: 1.366667 + value: {x: -0.454274, y: 0.093304, z: -0.290806} + - time: 1.400000 + value: {x: -0.475480, y: 0.101656, z: -0.304466} + - time: 1.433333 + value: {x: -0.490687, y: 0.110433, z: -0.314169} + - time: 1.466667 + value: {x: -0.501738, y: 0.119264, z: -0.321228} + - time: 1.500000 + value: {x: -0.509498, y: 0.127994, z: -0.326037} + - time: 1.533333 + value: {x: -0.514298, y: 0.136590, z: -0.329262} + - time: 1.566667 + value: {x: -0.517098, y: 0.145063, z: -0.330877} + - time: 1.600000 + value: {x: -0.518089, y: 0.153390, z: -0.331599} + - time: 1.633333 + value: {x: -0.517782, y: 0.161586, z: -0.331381} + - time: 1.666667 + value: {x: -0.516370, y: 0.169654, z: -0.330487} + - time: 1.700000 + value: {x: -0.514066, y: 0.177595, z: -0.329057} + - time: 1.733333 + value: {x: -0.510980, y: 0.185431, z: -0.327099} + - time: 1.766667 + value: {x: -0.507104, y: 0.193152, z: -0.324657} + - time: 1.800000 + value: {x: -0.502511, y: 0.200741, z: -0.321760} + - time: 1.833333 + value: {x: -0.497271, y: 0.208193, z: -0.318395} + - time: 1.866667 + value: {x: -0.491281, y: 0.215498, z: -0.314823} + - time: 1.900000 + value: {x: -0.484607, y: 0.222714, z: -0.310367} + - time: 1.933333 + value: {x: -0.477081, y: 0.229785, z: -0.305740} + - time: 1.966667 + value: {x: -0.469108, y: 0.236712, z: -0.300761} + - time: 2.000000 + value: {x: -0.460394, y: 0.243531, z: -0.295195} + - time: 2.033333 + value: {x: -0.451046, y: 0.250202, z: -0.289244} + - time: 2.066667 + value: {x: -0.441435, y: 0.256705, z: -0.283134} + - time: 2.100000 + value: {x: -0.431126, y: 0.262943, z: -0.276389} + - time: 2.133333 + value: {x: -0.420554, y: 0.268910, z: -0.269846} + - time: 2.166667 + value: {x: -0.409718, y: 0.274539, z: -0.262974} + - time: 2.200000 + value: {x: -0.398862, y: 0.279788, z: -0.255850} + - time: 2.233333 + value: {x: -0.387675, y: 0.284691, z: -0.248998} + - time: 2.266667 + value: {x: -0.376615, y: 0.289099, z: -0.241763} + - time: 2.300000 + value: {x: -0.365496, y: 0.293192, z: -0.234692} + - time: 2.333333 + value: {x: -0.354255, y: 0.296708, z: -0.227747} + - time: 2.366667 + value: {x: -0.343298, y: 0.299908, z: -0.220606} + - time: 2.400000 + value: {x: -0.332260, y: 0.302565, z: -0.213743} + - time: 2.433333 + value: {x: -0.321487, y: 0.304805, z: -0.206739} + - time: 2.466667 + value: {x: -0.310827, y: 0.306701, z: -0.199909} + - time: 2.533333 + value: {x: -0.289800, y: 0.309191, z: -0.186719} + - time: 2.600000 + value: {x: -0.269494, y: 0.310042, z: -0.173885} + - time: 2.633333 + value: {x: -0.259639, y: 0.310137, z: -0.167609} + - time: 2.666667 + value: {x: -0.250069, y: 0.309875, z: -0.161310} + - time: 2.700000 + value: {x: -0.240547, y: 0.309621, z: -0.155272} + - time: 2.766667 + value: {x: -0.222127, y: 0.308136, z: -0.143539} + - time: 2.800000 + value: {x: -0.213032, y: 0.307367, z: -0.137988} + - time: 2.833333 + value: {x: -0.204399, y: 0.306187, z: -0.132310} + - time: 2.866667 + value: {x: -0.195726, y: 0.305002, z: -0.126982} + - time: 2.900000 + value: {x: -0.187404, y: 0.303865, z: -0.121462} + - time: 2.933333 + value: {x: -0.179246, y: 0.302417, z: -0.116235} + - time: 3.000000 + value: {x: -0.163219, y: 0.299543, z: -0.106236} + - time: 3.066667 + value: {x: -0.148146, y: 0.296368, z: -0.096476} + - time: 3.133333 + value: {x: -0.133393, y: 0.293232, z: -0.087357} + - time: 3.166667 + value: {x: -0.126388, y: 0.291503, z: -0.082939} + - time: 3.233333 + value: {x: -0.112858, y: 0.288188, z: -0.074110} + - time: 3.266667 + value: {x: -0.106087, y: 0.286586, z: -0.070012} + - time: 3.333333 + value: {x: -0.093200, y: 0.283196, z: -0.061607} + - time: 3.466667 + value: {x: -0.068166, y: 0.276766, z: -0.045702} + - time: 3.600000 + value: {x: -0.044177, y: 0.270734, z: -0.030479} + - time: 3.700000 + value: {x: -0.026529, y: 0.266488, z: -0.019464} + - time: 3.733333 + value: {x: -0.020998, y: 0.265179, z: -0.015702} + - time: 3.766667 + value: {x: -0.015247, y: 0.263894, z: -0.012328} + - time: 3.800000 + value: {x: -0.009593, y: 0.262617, z: -0.008497} + - time: 3.866667 + value: {x: 0.001769, y: 0.260190, z: -0.001498} + - time: 3.933333 + value: {x: 0.012494, y: 0.257966, z: 0.005566} + - time: 3.966667 + value: {x: 0.017902, y: 0.256912, z: 0.008752} + - time: 4.000000 + value: {x: 0.023068, y: 0.255909, z: 0.012296} + - time: 4.033333 + value: {x: 0.028651, y: 0.254915, z: 0.015514} + - time: 4.066667 + value: {x: 0.033800, y: 0.253983, z: 0.019099} + - time: 4.100000 + value: {x: 0.039165, y: 0.253081, z: 0.022189} + - time: 4.133333 + value: {x: 0.044097, y: 0.252242, z: 0.025648} + - time: 4.166667 + value: {x: 0.049082, y: 0.251441, z: 0.028832} + - time: 4.200000 + value: {x: 0.054149, y: 0.250675, z: 0.031707} + - time: 4.233333 + value: {x: 0.058807, y: 0.249971, z: 0.034920} + - time: 4.300000 + value: {x: 0.068301, y: 0.248672, z: 0.040737} + - time: 4.333333 + value: {x: 0.072920, y: 0.248092, z: 0.043961} + - time: 4.400000 + value: {x: 0.082255, y: 0.247043, z: 0.049605} + - time: 4.433333 + value: {x: 0.086499, y: 0.246599, z: 0.052652} + - time: 4.500000 + value: {x: 0.095057, y: 0.245826, z: 0.057986} + - time: 4.533333 + value: {x: 0.099287, y: 0.245500, z: 0.060385} + - time: 4.566667 + value: {x: 0.103084, y: 0.245236, z: 0.063135} + - time: 4.600000 + value: {x: 0.107113, y: 0.244998, z: 0.065358} + - time: 4.666667 + value: {x: 0.114301, y: 0.244687, z: 0.070286} + - time: 4.700000 + value: {x: 0.118003, y: 0.244585, z: 0.072276} + - time: 4.733333 + value: {x: 0.121390, y: 0.244539, z: 0.074459} + - time: 4.766666 + value: {x: 0.124519, y: 0.244547, z: 0.076760} + - time: 4.800000 + value: {x: 0.127713, y: 0.244592, z: 0.078753} + - time: 4.866667 + value: {x: 0.133879, y: 0.244815, z: 0.082359} + - time: 4.900000 + value: {x: 0.136567, y: 0.245008, z: 0.084343} + - time: 4.933333 + value: {x: 0.139390, y: 0.245237, z: 0.085923} + - time: 5.000000 + value: {x: 0.144508, y: 0.245848, z: 0.089089} + - time: 5.333333 + value: {x: 0.167601, y: 0.249246, z: 0.103720} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.299833, y: 0.299833, z: 0.299833} + - time: 0.166667 + value: {x: 0.326207, y: 0.326207, z: 0.326207} + - time: 0.333333 + value: {x: 0.353527, y: 0.353527, z: 0.353527} + - time: 0.500000 + value: {x: 0.381785, y: 0.381785, z: 0.381785} + - time: 0.666667 + value: {x: 0.410968, y: 0.410968, z: 0.410968} + - time: 0.833333 + value: {x: 0.441068, y: 0.441068, z: 0.441068} + - time: 1.000000 + value: {x: 0.472075, y: 0.472075, z: 0.472075} + - time: 1.166667 + value: {x: 0.503980, y: 0.503980, z: 0.503980} + - time: 1.333333 + value: {x: 0.536776, y: 0.536776, z: 0.536776} + - time: 1.500000 + value: {x: 0.570453, y: 0.570453, z: 0.570453} + - time: 1.666667 + value: {x: 0.605005, y: 0.605005, z: 0.605005} + - time: 1.833333 + value: {x: 0.640424, y: 0.640424, z: 0.640424} + - time: 2.000000 + value: {x: 0.676704, y: 0.676704, z: 0.676704} + - time: 2.166667 + value: {x: 0.713836, y: 0.713836, z: 0.713836} + - time: 2.333333 + value: {x: 0.751816, y: 0.751816, z: 0.751816} + - time: 2.500000 + value: {x: 0.790636, y: 0.790636, z: 0.790636} + - time: 2.666667 + value: {x: 0.830290, y: 0.830290, z: 0.830290} + - time: 2.833333 + value: {x: 0.870774, y: 0.870774, z: 0.870774} + - time: 3.000000 + value: {x: 0.912081, y: 0.912081, z: 0.912081} + - time: 3.166667 + value: {x: 0.954205, y: 0.954205, z: 0.954205} + - time: 3.333333 + value: {x: 0.997142, y: 0.997142, z: 0.997142} + - time: 3.500000 + value: {x: 1.040886, y: 1.040886, z: 1.040886} + - time: 3.666667 + value: {x: 1.085433, y: 1.085433, z: 1.085433} + - time: 3.833333 + value: {x: 1.130777, y: 1.130777, z: 1.130777} + - time: 4.000000 + value: {x: 1.176914, y: 1.176914, z: 1.176914} + - time: 4.166667 + value: {x: 1.223840, y: 1.223840, z: 1.223840} + - time: 4.333333 + value: {x: 1.271550, y: 1.271550, z: 1.271550} + - time: 4.500000 + value: {x: 1.320039, y: 1.320039, z: 1.320039} + - time: 4.666667 + value: {x: 1.369305, y: 1.369305, z: 1.369305} + - time: 4.833333 + value: {x: 1.419342, y: 1.419342, z: 1.419342} + - time: 5.000000 + value: {x: 1.470146, y: 1.470146, z: 1.470146} + - time: 5.166667 + value: {x: 1.521715, y: 1.521715, z: 1.521715} + - time: 5.333333 + value: {x: 1.574043, y: 1.574043, z: 1.574043} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_15: + position: + - time: 0.000000 + value: {x: 0.020563, y: 0.499403, z: -0.015403} + - time: 0.033333 + value: {x: 0.020655, y: 0.499596, z: -0.015476} + - time: 0.066667 + value: {x: 0.031729, y: 0.347909, z: -0.024445} + - time: 0.100000 + value: {x: 0.039571, y: 0.246979, z: -0.033498} + - time: 0.133333 + value: {x: 0.045199, y: 0.189467, z: -0.042518} + - time: 0.166667 + value: {x: 0.049140, y: 0.164484, z: -0.051502} + - time: 0.200000 + value: {x: 0.051583, y: 0.159171, z: -0.060590} + - time: 0.233333 + value: {x: 0.052288, y: 0.162916, z: -0.070090} + - time: 0.266667 + value: {x: 0.049772, y: 0.171610, z: -0.081022} + - time: 0.300000 + value: {x: 0.042519, y: 0.182326, z: -0.094491} + - time: 0.333333 + value: {x: 0.029353, y: 0.193730, z: -0.111369} + - time: 0.366667 + value: {x: 0.009266, y: 0.205757, z: -0.132166} + - time: 0.400000 + value: {x: -0.017671, y: 0.218259, z: -0.157043} + - time: 0.433333 + value: {x: -0.046776, y: 0.231302, z: -0.183068} + - time: 0.466667 + value: {x: -0.072772, y: 0.245140, z: -0.206736} + - time: 0.500000 + value: {x: -0.092890, y: 0.259923, z: -0.226537} + - time: 0.533333 + value: {x: -0.108670, y: 0.276050, z: -0.243292} + - time: 0.566667 + value: {x: -0.121432, y: 0.293974, z: -0.257861} + - time: 0.600000 + value: {x: -0.131233, y: 0.313555, z: -0.270416} + - time: 0.633333 + value: {x: -0.136671, y: 0.334716, z: -0.280119} + - time: 0.666667 + value: {x: -0.137056, y: 0.357006, z: -0.286355} + - time: 0.700000 + value: {x: -0.132452, y: 0.378212, z: -0.289285} + - time: 0.733333 + value: {x: -0.124027, y: 0.395773, z: -0.289555} + - time: 0.766667 + value: {x: -0.112749, y: 0.407285, z: -0.288058} + - time: 0.800000 + value: {x: -0.101219, y: 0.412910, z: -0.286084} + - time: 0.833333 + value: {x: -0.092020, y: 0.412970, z: -0.285692} + - time: 0.866667 + value: {x: -0.087342, y: 0.408298, z: -0.287881} + - time: 0.900000 + value: {x: -0.087403, y: 0.401002, z: -0.293055} + - time: 0.933333 + value: {x: -0.091759, y: 0.393609, z: -0.300882} + - time: 0.966667 + value: {x: -0.100560, y: 0.388080, z: -0.311499} + - time: 1.000000 + value: {x: -0.116696, y: 0.385173, z: -0.326638} + - time: 1.033333 + value: {x: -0.144081, y: 0.384857, z: -0.348990} + - time: 1.066667 + value: {x: -0.186013, y: 0.387271, z: -0.380407} + - time: 1.100000 + value: {x: -0.241538, y: 0.392025, z: -0.420460} + - time: 1.133333 + value: {x: -0.305440, y: 0.398551, z: -0.465735} + - time: 1.166667 + value: {x: -0.372742, y: 0.406283, z: -0.513039} + - time: 1.200000 + value: {x: -0.439251, y: 0.414712, z: -0.559844} + - time: 1.233333 + value: {x: -0.501994, y: 0.423781, z: -0.604321} + - time: 1.266667 + value: {x: -0.558590, y: 0.433872, z: -0.644608} + - time: 1.300000 + value: {x: -0.607037, y: 0.444903, z: -0.679855} + - time: 1.333333 + value: {x: -0.646838, y: 0.456969, z: -0.709426} + - time: 1.366667 + value: {x: -0.677612, y: 0.470008, z: -0.733166} + - time: 1.400000 + value: {x: -0.701940, y: 0.483553, z: -0.752669} + - time: 1.433333 + value: {x: -0.720152, y: 0.497400, z: -0.768334} + - time: 1.466667 + value: {x: -0.734174, y: 0.511242, z: -0.781277} + - time: 1.500000 + value: {x: -0.744779, y: 0.524858, z: -0.792118} + - time: 1.533333 + value: {x: -0.752569, y: 0.538413, z: -0.800880} + - time: 1.566667 + value: {x: -0.758128, y: 0.551645, z: -0.808441} + - time: 1.600000 + value: {x: -0.761998, y: 0.564787, z: -0.814680} + - time: 1.633333 + value: {x: -0.764474, y: 0.577700, z: -0.820076} + - time: 1.666667 + value: {x: -0.765831, y: 0.590444, z: -0.824697} + - time: 1.700000 + value: {x: -0.766284, y: 0.603025, z: -0.828676} + - time: 1.733333 + value: {x: -0.765910, y: 0.615440, z: -0.832113} + - time: 1.766667 + value: {x: -0.764729, y: 0.627702, z: -0.834983} + - time: 1.800000 + value: {x: -0.762805, y: 0.639786, z: -0.837341} + - time: 1.833333 + value: {x: -0.760177, y: 0.651666, z: -0.839258} + - time: 1.866667 + value: {x: -0.756930, y: 0.663469, z: -0.840531} + - time: 1.900000 + value: {x: -0.752710, y: 0.674949, z: -0.841504} + - time: 1.933333 + value: {x: -0.747834, y: 0.686402, z: -0.841732} + - time: 1.966667 + value: {x: -0.742443, y: 0.697639, z: -0.841654} + - time: 2.000000 + value: {x: -0.736222, y: 0.708680, z: -0.841103} + - time: 2.033333 + value: {x: -0.729355, y: 0.719541, z: -0.840095} + - time: 2.066667 + value: {x: -0.722208, y: 0.730200, z: -0.838870} + - time: 2.100000 + value: {x: -0.714225, y: 0.740474, z: -0.837233} + - time: 2.133333 + value: {x: -0.706178, y: 0.750598, z: -0.835232} + - time: 2.166667 + value: {x: -0.697750, y: 0.760279, z: -0.833088} + - time: 2.200000 + value: {x: -0.689140, y: 0.769442, z: -0.830987} + - time: 2.233333 + value: {x: -0.680460, y: 0.778430, z: -0.828433} + - time: 2.266667 + value: {x: -0.671616, y: 0.786690, z: -0.826113} + - time: 2.300000 + value: {x: -0.662811, y: 0.794686, z: -0.823630} + - time: 2.333333 + value: {x: -0.653985, y: 0.802161, z: -0.820946} + - time: 2.366667 + value: {x: -0.645200, y: 0.809125, z: -0.818560} + - time: 2.400000 + value: {x: -0.636512, y: 0.815657, z: -0.815948} + - time: 2.433333 + value: {x: -0.627884, y: 0.821602, z: -0.813596} + - time: 2.466667 + value: {x: -0.619413, y: 0.827221, z: -0.811235} + - time: 2.533333 + value: {x: -0.602877, y: 0.837183, z: -0.806476} + - time: 2.600000 + value: {x: -0.586926, y: 0.845337, z: -0.802078} + - time: 2.633333 + value: {x: -0.579194, y: 0.849020, z: -0.800036} + - time: 2.700000 + value: {x: -0.564193, y: 0.855518, z: -0.796319} + - time: 2.733333 + value: {x: -0.556967, y: 0.858312, z: -0.794558} + - time: 2.800000 + value: {x: -0.542988, y: 0.863791, z: -0.791000} + - time: 2.866667 + value: {x: -0.529723, y: 0.868245, z: -0.788016} + - time: 2.900000 + value: {x: -0.523265, y: 0.870381, z: -0.786782} + - time: 2.933333 + value: {x: -0.517065, y: 0.872261, z: -0.785542} + - time: 3.000000 + value: {x: -0.505070, y: 0.876082, z: -0.783045} + - time: 3.033333 + value: {x: -0.499313, y: 0.877735, z: -0.782127} + - time: 3.133333 + value: {x: -0.482949, y: 0.882725, z: -0.779238} + - time: 3.233333 + value: {x: -0.467890, y: 0.887031, z: -0.777357} + - time: 3.266667 + value: {x: -0.463078, y: 0.888617, z: -0.776607} + - time: 3.333333 + value: {x: -0.453693, y: 0.891258, z: -0.775705} + - time: 3.466667 + value: {x: -0.435760, y: 0.896806, z: -0.773868} + - time: 3.600000 + value: {x: -0.418672, y: 0.902406, z: -0.772272} + - time: 3.700000 + value: {x: -0.406177, y: 0.906738, z: -0.770952} + - time: 3.733333 + value: {x: -0.402152, y: 0.908111, z: -0.770817} + - time: 3.766667 + value: {x: -0.398207, y: 0.909714, z: -0.770298} + - time: 3.800000 + value: {x: -0.394041, y: 0.911082, z: -0.770032} + - time: 3.833333 + value: {x: -0.389999, y: 0.912651, z: -0.769492} + - time: 3.900000 + value: {x: -0.382130, y: 0.915647, z: -0.768934} + - time: 3.966667 + value: {x: -0.374641, y: 0.918908, z: -0.768252} + - time: 4.000000 + value: {x: -0.370877, y: 0.920417, z: -0.768166} + - time: 4.033333 + value: {x: -0.367032, y: 0.922172, z: -0.767545} + - time: 4.066667 + value: {x: -0.363234, y: 0.923694, z: -0.767444} + - time: 4.100000 + value: {x: -0.359580, y: 0.925499, z: -0.766922} + - time: 4.133333 + value: {x: -0.355968, y: 0.927070, z: -0.766920} + - time: 4.200000 + value: {x: -0.349100, y: 0.930689, z: -0.766325} + - time: 4.266666 + value: {x: -0.342550, y: 0.934162, z: -0.766366} + - time: 4.300000 + value: {x: -0.339328, y: 0.936097, z: -0.766077} + - time: 4.333333 + value: {x: -0.335984, y: 0.937832, z: -0.766129} + - time: 4.400000 + value: {x: -0.329679, y: 0.941732, z: -0.765749} + - time: 4.433333 + value: {x: -0.326643, y: 0.943524, z: -0.766002} + - time: 4.533333 + value: {x: -0.318264, y: 0.949644, z: -0.766004} + - time: 4.566667 + value: {x: -0.315640, y: 0.951550, z: -0.766455} + - time: 4.600000 + value: {x: -0.313173, y: 0.953757, z: -0.766460} + - time: 4.666667 + value: {x: -0.308467, y: 0.957839, z: -0.767391} + - time: 4.700000 + value: {x: -0.306311, y: 0.960141, z: -0.767534} + - time: 4.800000 + value: {x: -0.300357, y: 0.966663, z: -0.769314} + - time: 4.866667 + value: {x: -0.296954, y: 0.971373, z: -0.770389} + - time: 4.900000 + value: {x: -0.295378, y: 0.973600, z: -0.771330} + - time: 4.966667 + value: {x: -0.292614, y: 0.978494, z: -0.772751} + - time: 5.333333 + value: {x: -0.280173, y: 1.004369, z: -0.782540} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.299833, y: 0.299833, z: 0.299833} + - time: 0.166667 + value: {x: 0.326207, y: 0.326207, z: 0.326207} + - time: 0.333333 + value: {x: 0.353527, y: 0.353527, z: 0.353527} + - time: 0.500000 + value: {x: 0.381785, y: 0.381785, z: 0.381785} + - time: 0.666667 + value: {x: 0.410968, y: 0.410968, z: 0.410968} + - time: 0.833333 + value: {x: 0.441068, y: 0.441068, z: 0.441068} + - time: 1.000000 + value: {x: 0.472075, y: 0.472075, z: 0.472075} + - time: 1.166667 + value: {x: 0.503980, y: 0.503980, z: 0.503980} + - time: 1.333333 + value: {x: 0.536776, y: 0.536776, z: 0.536776} + - time: 1.500000 + value: {x: 0.570453, y: 0.570453, z: 0.570453} + - time: 1.666667 + value: {x: 0.605005, y: 0.605005, z: 0.605005} + - time: 1.833333 + value: {x: 0.640424, y: 0.640424, z: 0.640424} + - time: 2.000000 + value: {x: 0.676704, y: 0.676704, z: 0.676704} + - time: 2.166667 + value: {x: 0.713836, y: 0.713836, z: 0.713836} + - time: 2.333333 + value: {x: 0.751816, y: 0.751816, z: 0.751816} + - time: 2.500000 + value: {x: 0.790636, y: 0.790636, z: 0.790636} + - time: 2.666667 + value: {x: 0.830290, y: 0.830290, z: 0.830290} + - time: 2.833333 + value: {x: 0.870774, y: 0.870774, z: 0.870774} + - time: 3.000000 + value: {x: 0.912081, y: 0.912081, z: 0.912081} + - time: 3.166667 + value: {x: 0.954205, y: 0.954205, z: 0.954205} + - time: 3.333333 + value: {x: 0.997142, y: 0.997142, z: 0.997142} + - time: 3.500000 + value: {x: 1.040886, y: 1.040886, z: 1.040886} + - time: 3.666667 + value: {x: 1.085433, y: 1.085433, z: 1.085433} + - time: 3.833333 + value: {x: 1.130777, y: 1.130777, z: 1.130777} + - time: 4.000000 + value: {x: 1.176914, y: 1.176914, z: 1.176914} + - time: 4.166667 + value: {x: 1.223840, y: 1.223840, z: 1.223840} + - time: 4.333333 + value: {x: 1.271550, y: 1.271550, z: 1.271550} + - time: 4.500000 + value: {x: 1.320039, y: 1.320039, z: 1.320039} + - time: 4.666667 + value: {x: 1.369305, y: 1.369305, z: 1.369305} + - time: 4.833333 + value: {x: 1.419342, y: 1.419342, z: 1.419342} + - time: 5.000000 + value: {x: 1.470146, y: 1.470146, z: 1.470146} + - time: 5.166667 + value: {x: 1.521715, y: 1.521715, z: 1.521715} + - time: 5.333333 + value: {x: 1.574043, y: 1.574043, z: 1.574043} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_16: + position: + - time: 0.000000 + value: {x: 0.000626, y: 0.457730, z: 0.000399} + - time: 0.033333 + value: {x: 0.000626, y: 0.457730, z: 0.000399} + - time: 0.066667 + value: {x: 0.000489, y: 0.282607, z: 0.000312} + - time: 0.100000 + value: {x: -0.001483, y: 0.161182, z: -0.000944} + - time: 0.133333 + value: {x: -0.004664, y: 0.085264, z: -0.002971} + - time: 0.166667 + value: {x: -0.008770, y: 0.043457, z: -0.005587} + - time: 0.200000 + value: {x: -0.013772, y: 0.022582, z: -0.008774} + - time: 0.233333 + value: {x: -0.020021, y: 0.011796, z: -0.012755} + - time: 0.266667 + value: {x: -0.029078, y: 0.006799, z: -0.018525} + - time: 0.300000 + value: {x: -0.042526, y: 0.004559, z: -0.027092} + - time: 0.333333 + value: {x: -0.061593, y: 0.003674, z: -0.039239} + - time: 0.366667 + value: {x: -0.087307, y: 0.003901, z: -0.055620} + - time: 0.400000 + value: {x: -0.119644, y: 0.005112, z: -0.076221} + - time: 0.433333 + value: {x: -0.153949, y: 0.007328, z: -0.098077} + - time: 0.466667 + value: {x: -0.184949, y: 0.010668, z: -0.117825} + - time: 0.500000 + value: {x: -0.209915, y: 0.015363, z: -0.133731} + - time: 0.533333 + value: {x: -0.230384, y: 0.021688, z: -0.146771} + - time: 0.566667 + value: {x: -0.247689, y: 0.030067, z: -0.157795} + - time: 0.600000 + value: {x: -0.261912, y: 0.040399, z: -0.166856} + - time: 0.633333 + value: {x: -0.271662, y: 0.052606, z: -0.173068} + - time: 0.666667 + value: {x: -0.276242, y: 0.066125, z: -0.175986} + - time: 0.700000 + value: {x: -0.275732, y: 0.078779, z: -0.175661} + - time: 0.733333 + value: {x: -0.271298, y: 0.087941, z: -0.172836} + - time: 0.766667 + value: {x: -0.263940, y: 0.091330, z: -0.168149} + - time: 0.800000 + value: {x: -0.256227, y: 0.088904, z: -0.163234} + - time: 0.833333 + value: {x: -0.250788, y: 0.081183, z: -0.159769} + - time: 0.866667 + value: {x: -0.249776, y: 0.068786, z: -0.159125} + - time: 0.900000 + value: {x: -0.253440, y: 0.053944, z: -0.161459} + - time: 0.933333 + value: {x: -0.261336, y: 0.039148, z: -0.166490} + - time: 0.966667 + value: {x: -0.273616, y: 0.026371, z: -0.174313} + - time: 1.000000 + value: {x: -0.293168, y: 0.016308, z: -0.186769} + - time: 1.033333 + value: {x: -0.323925, y: 0.009019, z: -0.206363} + - time: 1.066667 + value: {x: -0.369161, y: 0.004508, z: -0.235181} + - time: 1.100000 + value: {x: -0.427944, y: 0.002471, z: -0.272630} + - time: 1.133333 + value: {x: -0.495050, y: 0.002288, z: -0.315382} + - time: 1.166667 + value: {x: -0.565501, y: 0.003374, z: -0.360264} + - time: 1.200000 + value: {x: -0.635121, y: 0.005288, z: -0.404617} + - time: 1.233333 + value: {x: -0.700946, y: 0.008001, z: -0.446552} + - time: 1.266667 + value: {x: -0.760557, y: 0.011716, z: -0.484528} + - time: 1.300000 + value: {x: -0.812003, y: 0.016562, z: -0.517303} + - time: 1.333333 + value: {x: -0.854752, y: 0.022468, z: -0.544537} + - time: 1.366667 + value: {x: -0.888434, y: 0.029412, z: -0.565995} + - time: 1.400000 + value: {x: -0.915625, y: 0.036897, z: -0.583317} + - time: 1.433333 + value: {x: -0.936675, y: 0.044814, z: -0.596728} + - time: 1.466667 + value: {x: -0.953501, y: 0.052795, z: -0.607447} + - time: 1.500000 + value: {x: -0.966891, y: 0.060681, z: -0.615977} + - time: 1.533333 + value: {x: -0.977408, y: 0.068451, z: -0.622677} + - time: 1.566667 + value: {x: -0.985690, y: 0.076098, z: -0.627954} + - time: 1.600000 + value: {x: -0.992233, y: 0.083615, z: -0.632122} + - time: 1.633333 + value: {x: -0.997360, y: 0.091008, z: -0.635388} + - time: 1.666667 + value: {x: -1.001337, y: 0.098281, z: -0.637922} + - time: 1.700000 + value: {x: -1.004382, y: 0.105437, z: -0.639862} + - time: 1.733333 + value: {x: -1.006574, y: 0.112495, z: -0.641258} + - time: 1.766667 + value: {x: -1.007931, y: 0.119447, z: -0.642123} + - time: 1.800000 + value: {x: -1.008519, y: 0.126275, z: -0.642497} + - time: 1.833333 + value: {x: -1.008381, y: 0.132973, z: -0.642409} + - time: 1.866667 + value: {x: -1.007579, y: 0.139537, z: -0.641899} + - time: 1.900000 + value: {x: -1.005815, y: 0.146008, z: -0.640775} + - time: 1.933333 + value: {x: -1.003341, y: 0.152352, z: -0.639199} + - time: 1.966667 + value: {x: -1.000338, y: 0.158555, z: -0.637285} + - time: 2.000000 + value: {x: -0.996489, y: 0.164655, z: -0.634834} + - time: 2.033333 + value: {x: -0.991970, y: 0.170614, z: -0.631955} + - time: 2.066667 + value: {x: -0.987149, y: 0.176413, z: -0.628883} + - time: 2.100000 + value: {x: -0.981488, y: 0.181947, z: -0.625277} + - time: 2.133333 + value: {x: -0.975710, y: 0.187226, z: -0.621596} + - time: 2.166667 + value: {x: -0.969545, y: 0.192169, z: -0.617668} + - time: 2.200000 + value: {x: -0.963196, y: 0.196733, z: -0.613623} + - time: 2.233333 + value: {x: -0.956721, y: 0.200968, z: -0.609498} + - time: 2.266667 + value: {x: -0.950097, y: 0.204703, z: -0.605279} + - time: 2.300000 + value: {x: -0.943478, y: 0.208133, z: -0.601062} + - time: 2.333333 + value: {x: -0.936802, y: 0.210998, z: -0.596809} + - time: 2.366667 + value: {x: -0.930180, y: 0.213542, z: -0.592590} + - time: 2.400000 + value: {x: -0.923609, y: 0.215559, z: -0.588404} + - time: 2.433333 + value: {x: -0.917107, y: 0.217153, z: -0.584262} + - time: 2.466667 + value: {x: -0.910734, y: 0.218414, z: -0.580202} + - time: 2.533333 + value: {x: -0.898320, y: 0.219655, z: -0.572293} + - time: 2.600000 + value: {x: -0.886435, y: 0.219273, z: -0.564721} + - time: 2.633333 + value: {x: -0.880715, y: 0.218758, z: -0.561078} + - time: 2.700000 + value: {x: -0.869703, y: 0.217034, z: -0.554062} + - time: 2.733333 + value: {x: -0.864443, y: 0.215744, z: -0.550711} + - time: 2.800000 + value: {x: -0.854323, y: 0.213014, z: -0.544264} + - time: 2.900000 + value: {x: -0.840324, y: 0.207777, z: -0.535345} + - time: 2.966667 + value: {x: -0.831795, y: 0.203742, z: -0.529912} + - time: 3.033333 + value: {x: -0.823777, y: 0.199670, z: -0.524804} + - time: 3.133333 + value: {x: -0.812798, y: 0.193269, z: -0.517809} + - time: 3.233333 + value: {x: -0.803037, y: 0.186618, z: -0.511591} + - time: 3.333333 + value: {x: -0.794003, y: 0.180061, z: -0.505836} + - time: 3.500000 + value: {x: -0.780071, y: 0.169539, z: -0.496960} + - time: 3.666667 + value: {x: -0.766946, y: 0.159757, z: -0.488598} + - time: 3.800000 + value: {x: -0.756960, y: 0.152631, z: -0.482237} + - time: 3.900000 + value: {x: -0.749594, y: 0.147693, z: -0.477544} + - time: 4.033333 + value: {x: -0.740380, y: 0.141769, z: -0.471674} + - time: 4.133333 + value: {x: -0.733654, y: 0.137780, z: -0.467389} + - time: 4.233333 + value: {x: -0.727671, y: 0.134232, z: -0.463578} + - time: 4.366667 + value: {x: -0.720156, y: 0.130147, z: -0.458790} + - time: 4.466667 + value: {x: -0.715136, y: 0.127574, z: -0.455592} + - time: 4.566667 + value: {x: -0.710955, y: 0.125431, z: -0.452928} + - time: 4.666667 + value: {x: -0.707617, y: 0.123720, z: -0.450802} + - time: 4.766666 + value: {x: -0.705127, y: 0.122444, z: -0.449215} + - time: 4.866667 + value: {x: -0.703496, y: 0.121608, z: -0.448177} + - time: 4.966667 + value: {x: -0.702745, y: 0.121224, z: -0.447698} + - time: 5.333333 + value: {x: -0.702695, y: 0.121198, z: -0.447666} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.595720, y: 0.595720, z: 0.595720} + - time: 0.233333 + value: {x: 0.623086, y: 0.623086, z: 0.623086} + - time: 0.533333 + value: {x: 0.659042, y: 0.659042, z: 0.659042} + - time: 0.833333 + value: {x: 0.695859, y: 0.695859, z: 0.695859} + - time: 1.133333 + value: {x: 0.733531, y: 0.733531, z: 0.733531} + - time: 1.433333 + value: {x: 0.772050, y: 0.772050, z: 0.772050} + - time: 1.733333 + value: {x: 0.811411, y: 0.811411, z: 0.811411} + - time: 2.033333 + value: {x: 0.851609, y: 0.851609, z: 0.851609} + - time: 2.333333 + value: {x: 0.892636, y: 0.892636, z: 0.892636} + - time: 2.633333 + value: {x: 0.934488, y: 0.934488, z: 0.934488} + - time: 2.933333 + value: {x: 0.977159, y: 0.977159, z: 0.977159} + - time: 3.233333 + value: {x: 1.020643, y: 1.020643, z: 1.020643} + - time: 3.533333 + value: {x: 1.064937, y: 1.064937, z: 1.064937} + - time: 3.833333 + value: {x: 1.110035, y: 1.110035, z: 1.110035} + - time: 4.133333 + value: {x: 1.155932, y: 1.155932, z: 1.155932} + - time: 4.433333 + value: {x: 1.202623, y: 1.202623, z: 1.202623} + - time: 4.733333 + value: {x: 1.250105, y: 1.250105, z: 1.250105} + - time: 5.033333 + value: {x: 1.298373, y: 1.298373, z: 1.298373} + - time: 5.333333 + value: {x: 1.347422, y: 1.347422, z: 1.347422} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_17: + position: + - time: 0.000000 + value: {x: -0.045716, y: 0.457109, z: -0.007700} + - time: 0.033333 + value: {x: -0.045762, y: 0.457108, z: -0.007708} + - time: 0.066667 + value: {x: -0.071635, y: 0.281639, z: -0.011727} + - time: 0.100000 + value: {x: -0.096053, y: 0.159925, z: -0.014210} + - time: 0.133333 + value: {x: -0.119297, y: 0.083747, z: -0.015673} + - time: 0.166667 + value: {x: -0.141641, y: 0.041694, z: -0.016367} + - time: 0.200000 + value: {x: -0.163440, y: 0.020598, z: -0.016341} + - time: 0.233333 + value: {x: -0.185336, y: 0.009611, z: -0.015453} + - time: 0.266667 + value: {x: -0.209173, y: 0.004412, z: -0.012947} + - time: 0.300000 + value: {x: -0.236792, y: 0.001989, z: -0.007962} + - time: 0.333333 + value: {x: -0.269620, y: 0.000964, z: 0.000182} + - time: 0.366667 + value: {x: -0.308809, y: 0.001008, z: 0.011846} + - time: 0.400000 + value: {x: -0.354438, y: 0.002065, z: 0.027152} + - time: 0.433333 + value: {x: -0.401633, y: 0.004162, z: 0.043639} + - time: 0.466667 + value: {x: -0.444820, y: 0.007340, z: 0.058354} + - time: 0.500000 + value: {x: -0.481188, y: 0.011930, z: 0.070050} + - time: 0.533333 + value: {x: -0.512373, y: 0.018128, z: 0.079374} + - time: 0.566667 + value: {x: -0.539825, y: 0.026356, z: 0.087025} + - time: 0.600000 + value: {x: -0.563678, y: 0.036564, z: 0.093147} + - time: 0.633333 + value: {x: -0.582488, y: 0.048697, z: 0.097037} + - time: 0.666667 + value: {x: -0.595508, y: 0.062103, z: 0.098157} + - time: 0.700000 + value: {x: -0.602858, y: 0.074656, z: 0.096643} + - time: 0.733333 + value: {x: -0.605775, y: 0.083681, z: 0.093014} + - time: 0.766667 + value: {x: -0.605383, y: 0.087014, z: 0.088031} + - time: 0.800000 + value: {x: -0.604357, y: 0.084448, z: 0.082724} + - time: 0.833333 + value: {x: -0.605569, y: 0.076680, z: 0.078832} + - time: 0.866667 + value: {x: -0.611248, y: 0.064156, z: 0.077149} + - time: 0.900000 + value: {x: -0.621711, y: 0.049218, z: 0.078026} + - time: 0.933333 + value: {x: -0.636487, y: 0.034332, z: 0.081179} + - time: 0.966667 + value: {x: -0.655754, y: 0.021488, z: 0.086719} + - time: 1.000000 + value: {x: -0.682565, y: 0.011333, z: 0.096077} + - time: 1.033333 + value: {x: -0.721132, y: 0.004007, z: 0.111494} + - time: 1.066667 + value: {x: -0.774896, y: -0.000591, z: 0.134489} + - time: 1.100000 + value: {x: -0.842902, y: -0.002692, z: 0.164716} + - time: 1.133333 + value: {x: -0.919599, y: -0.002957, z: 0.199331} + - time: 1.166667 + value: {x: -0.999704, y: -0.001979, z: 0.235678} + - time: 1.200000 + value: {x: -1.078816, y: -0.000143, z: 0.271665} + - time: 1.233333 + value: {x: -1.153803, y: 0.002551, z: 0.305772} + - time: 1.266667 + value: {x: -1.222049, y: 0.006159, z: 0.336435} + - time: 1.300000 + value: {x: -1.281552, y: 0.010986, z: 0.362967} + - time: 1.333333 + value: {x: -1.331704, y: 0.016828, z: 0.384823} + - time: 1.366667 + value: {x: -1.372128, y: 0.023698, z: 0.401877} + - time: 1.400000 + value: {x: -1.405553, y: 0.031079, z: 0.415449} + - time: 1.433333 + value: {x: -1.432385, y: 0.038938, z: 0.425875} + - time: 1.466667 + value: {x: -1.454640, y: 0.046861, z: 0.434079} + - time: 1.500000 + value: {x: -1.473179, y: 0.054739, z: 0.440576} + - time: 1.533333 + value: {x: -1.488547, y: 0.062405, z: 0.445374} + - time: 1.566667 + value: {x: -1.501499, y: 0.070057, z: 0.449217} + - time: 1.600000 + value: {x: -1.512494, y: 0.077496, z: 0.451989} + - time: 1.633333 + value: {x: -1.521921, y: 0.084849, z: 0.454094} + - time: 1.666667 + value: {x: -1.530049, y: 0.092075, z: 0.455586} + - time: 1.700000 + value: {x: -1.537107, y: 0.099173, z: 0.456577} + - time: 1.733333 + value: {x: -1.543193, y: 0.106184, z: 0.457145} + - time: 1.766667 + value: {x: -1.548321, y: 0.113083, z: 0.457271} + - time: 1.800000 + value: {x: -1.552563, y: 0.119859, z: 0.457000} + - time: 1.833333 + value: {x: -1.555974, y: 0.126523, z: 0.456389} + - time: 1.866667 + value: {x: -1.558585, y: 0.132969, z: 0.455271} + - time: 1.900000 + value: {x: -1.560165, y: 0.139464, z: 0.453930} + - time: 1.933333 + value: {x: -1.560886, y: 0.145715, z: 0.451993} + - time: 1.966667 + value: {x: -1.560992, y: 0.151849, z: 0.449829} + - time: 2.000000 + value: {x: -1.560157, y: 0.157915, z: 0.447296} + - time: 2.033333 + value: {x: -1.558551, y: 0.163835, z: 0.444407} + - time: 2.066667 + value: {x: -1.556567, y: 0.169593, z: 0.441361} + - time: 2.100000 + value: {x: -1.553659, y: 0.175146, z: 0.437995} + - time: 2.133333 + value: {x: -1.550532, y: 0.180330, z: 0.434351} + - time: 2.166667 + value: {x: -1.546959, y: 0.185229, z: 0.430608} + - time: 2.200000 + value: {x: -1.543168, y: 0.189822, z: 0.426920} + - time: 2.233333 + value: {x: -1.539138, y: 0.193940, z: 0.422882} + - time: 2.266667 + value: {x: -1.534955, y: 0.197700, z: 0.419054} + - time: 2.300000 + value: {x: -1.530705, y: 0.201093, z: 0.415113} + - time: 2.333333 + value: {x: -1.526325, y: 0.203860, z: 0.411027} + - time: 2.366667 + value: {x: -1.522000, y: 0.206422, z: 0.407204} + - time: 2.400000 + value: {x: -1.517644, y: 0.208357, z: 0.403215} + - time: 2.433333 + value: {x: -1.513355, y: 0.209963, z: 0.399458} + - time: 2.466667 + value: {x: -1.509147, y: 0.211205, z: 0.395711} + - time: 2.533333 + value: {x: -1.500925, y: 0.212327, z: 0.388249} + - time: 2.600000 + value: {x: -1.493113, y: 0.211860, z: 0.381156} + - time: 2.633333 + value: {x: -1.489389, y: 0.211317, z: 0.377764} + - time: 2.700000 + value: {x: -1.482300, y: 0.209591, z: 0.371329} + - time: 2.800000 + value: {x: -1.472540, y: 0.205424, z: 0.362029} + - time: 2.866667 + value: {x: -1.466728, y: 0.201847, z: 0.356368} + - time: 2.900000 + value: {x: -1.463976, y: 0.200173, z: 0.353765} + - time: 3.000000 + value: {x: -1.456516, y: 0.194046, z: 0.346051} + - time: 3.033333 + value: {x: -1.454305, y: 0.191968, z: 0.343773} + - time: 3.133333 + value: {x: -1.448209, y: 0.185422, z: 0.336941} + - time: 3.266667 + value: {x: -1.441589, y: 0.176557, z: 0.329023} + - time: 3.366667 + value: {x: -1.437248, y: 0.169987, z: 0.323716} + - time: 3.533333 + value: {x: -1.430453, y: 0.159497, z: 0.315250} + - time: 3.666667 + value: {x: -1.425036, y: 0.151585, z: 0.308665} + - time: 3.733333 + value: {x: -1.422523, y: 0.147976, z: 0.305724} + - time: 3.833333 + value: {x: -1.418394, y: 0.142669, z: 0.300981} + - time: 3.966667 + value: {x: -1.413363, y: 0.136316, z: 0.295229} + - time: 4.000000 + value: {x: -1.412154, y: 0.134915, z: 0.293982} + - time: 4.033333 + value: {x: -1.410718, y: 0.133381, z: 0.292349} + - time: 4.066667 + value: {x: -1.409416, y: 0.132072, z: 0.291105} + - time: 4.100000 + value: {x: -1.408118, y: 0.130643, z: 0.289575} + - time: 4.133333 + value: {x: -1.406954, y: 0.129435, z: 0.288432} + - time: 4.200000 + value: {x: -1.404729, y: 0.126906, z: 0.285769} + - time: 4.266666 + value: {x: -1.402837, y: 0.124738, z: 0.283620} + - time: 4.400000 + value: {x: -1.398785, y: 0.120716, z: 0.278931} + - time: 4.533333 + value: {x: -1.395870, y: 0.117516, z: 0.275098} + - time: 4.566667 + value: {x: -1.395380, y: 0.116927, z: 0.274449} + - time: 4.600000 + value: {x: -1.394907, y: 0.116210, z: 0.273506} + - time: 4.700000 + value: {x: -1.394088, y: 0.114613, z: 0.271507} + - time: 4.766666 + value: {x: -1.393999, y: 0.113880, z: 0.270612} + - time: 4.866667 + value: {x: -1.394429, y: 0.112928, z: 0.269230} + - time: 4.966667 + value: {x: -1.395694, y: 0.112514, z: 0.268502} + - time: 5.333333 + value: {x: -1.401970, y: 0.112404, z: 0.267469} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.595720, y: 0.595720, z: 0.595720} + - time: 0.233333 + value: {x: 0.623086, y: 0.623086, z: 0.623086} + - time: 0.533333 + value: {x: 0.659042, y: 0.659042, z: 0.659042} + - time: 0.833333 + value: {x: 0.695859, y: 0.695859, z: 0.695859} + - time: 1.133333 + value: {x: 0.733531, y: 0.733531, z: 0.733531} + - time: 1.433333 + value: {x: 0.772050, y: 0.772050, z: 0.772050} + - time: 1.733333 + value: {x: 0.811411, y: 0.811411, z: 0.811411} + - time: 2.033333 + value: {x: 0.851609, y: 0.851609, z: 0.851609} + - time: 2.333333 + value: {x: 0.892636, y: 0.892636, z: 0.892636} + - time: 2.633333 + value: {x: 0.934488, y: 0.934488, z: 0.934488} + - time: 2.933333 + value: {x: 0.977159, y: 0.977159, z: 0.977159} + - time: 3.233333 + value: {x: 1.020643, y: 1.020643, z: 1.020643} + - time: 3.533333 + value: {x: 1.064937, y: 1.064937, z: 1.064937} + - time: 3.833333 + value: {x: 1.110035, y: 1.110035, z: 1.110035} + - time: 4.133333 + value: {x: 1.155932, y: 1.155932, z: 1.155932} + - time: 4.433333 + value: {x: 1.202623, y: 1.202623, z: 1.202623} + - time: 4.733333 + value: {x: 1.250105, y: 1.250105, z: 1.250105} + - time: 5.033333 + value: {x: 1.298373, y: 1.298373, z: 1.298373} + - time: 5.333333 + value: {x: 1.347422, y: 1.347422, z: 1.347422} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_18: + position: + - time: 0.000000 + value: {x: 0.019910, y: 0.497958, z: -0.015585} + - time: 0.033333 + value: {x: 0.019929, y: 0.497998, z: -0.015601} + - time: 0.066667 + value: {x: 0.030460, y: 0.345193, z: -0.023986} + - time: 0.100000 + value: {x: 0.037633, y: 0.243119, z: -0.030305} + - time: 0.133333 + value: {x: 0.042503, y: 0.184427, z: -0.035166} + - time: 0.166667 + value: {x: 0.045609, y: 0.158226, z: -0.038902} + - time: 0.200000 + value: {x: 0.047145, y: 0.151655, z: -0.041679} + - time: 0.233333 + value: {x: 0.046848, y: 0.154105, z: -0.043399} + - time: 0.266667 + value: {x: 0.043141, y: 0.161464, z: -0.043266} + - time: 0.300000 + value: {x: 0.034410, y: 0.170808, z: -0.040534} + - time: 0.333333 + value: {x: 0.019406, y: 0.180809, z: -0.034640} + - time: 0.366667 + value: {x: -0.002941, y: 0.191394, z: -0.024909} + - time: 0.400000 + value: {x: -0.032559, y: 0.202423, z: -0.011519} + - time: 0.433333 + value: {x: -0.064481, y: 0.213964, z: 0.003035} + - time: 0.466667 + value: {x: -0.093105, y: 0.226266, z: 0.016093} + - time: 0.500000 + value: {x: -0.115497, y: 0.239488, z: 0.026005} + - time: 0.533333 + value: {x: -0.133289, y: 0.254024, z: 0.033721} + - time: 0.566667 + value: {x: -0.147882, y: 0.270328, z: 0.039940} + - time: 0.600000 + value: {x: -0.159338, y: 0.288265, z: 0.044593} + - time: 0.633333 + value: {x: -0.166170, y: 0.307763, z: 0.046899} + - time: 0.666667 + value: {x: -0.167644, y: 0.328362, z: 0.046645} + - time: 0.700000 + value: {x: -0.163829, y: 0.347855, z: 0.043772} + - time: 0.733333 + value: {x: -0.155962, y: 0.363677, z: 0.038981} + - time: 0.766667 + value: {x: -0.145076, y: 0.373439, z: 0.032574} + - time: 0.800000 + value: {x: -0.133922, y: 0.377282, z: 0.026216} + - time: 0.833333 + value: {x: -0.125251, y: 0.375554, z: 0.020958} + - time: 0.866667 + value: {x: -0.121378, y: 0.369064, z: 0.018268} + - time: 0.900000 + value: {x: -0.122538, y: 0.359936, z: 0.018059} + - time: 0.933333 + value: {x: -0.128261, y: 0.350694, z: 0.020139} + - time: 0.966667 + value: {x: -0.138704, y: 0.343303, z: 0.024554} + - time: 1.000000 + value: {x: -0.156935, y: 0.338515, z: 0.032924} + - time: 1.033333 + value: {x: -0.187108, y: 0.336311, z: 0.047169} + - time: 1.066667 + value: {x: -0.232717, y: 0.336814, z: 0.069224} + - time: 1.100000 + value: {x: -0.292755, y: 0.339646, z: 0.098451} + - time: 1.133333 + value: {x: -0.361685, y: 0.344235, z: 0.132162} + - time: 1.166667 + value: {x: -0.434223, y: 0.350011, z: 0.167741} + - time: 1.200000 + value: {x: -0.505926, y: 0.356477, z: 0.202864} + - time: 1.233333 + value: {x: -0.573638, y: 0.363580, z: 0.235911} + - time: 1.266667 + value: {x: -0.634824, y: 0.371679, z: 0.265878} + - time: 1.300000 + value: {x: -0.687372, y: 0.380723, z: 0.291396} + - time: 1.333333 + value: {x: -0.730746, y: 0.390784, z: 0.312437} + - time: 1.366667 + value: {x: -0.764543, y: 0.401804, z: 0.328735} + - time: 1.400000 + value: {x: -0.791500, y: 0.413314, z: 0.341692} + - time: 1.433333 + value: {x: -0.811972, y: 0.425127, z: 0.351347} + - time: 1.466667 + value: {x: -0.828000, y: 0.436925, z: 0.358800} + - time: 1.500000 + value: {x: -0.840408, y: 0.448499, z: 0.364371} + - time: 1.533333 + value: {x: -0.849824, y: 0.459984, z: 0.368636} + - time: 1.566667 + value: {x: -0.856881, y: 0.471160, z: 0.371540} + - time: 1.600000 + value: {x: -0.862143, y: 0.482222, z: 0.373710} + - time: 1.633333 + value: {x: -0.865929, y: 0.493056, z: 0.375088} + - time: 1.666667 + value: {x: -0.868529, y: 0.503712, z: 0.375899} + - time: 1.700000 + value: {x: -0.870170, y: 0.514197, z: 0.376263} + - time: 1.733333 + value: {x: -0.870936, y: 0.524512, z: 0.376180} + - time: 1.766667 + value: {x: -0.870846, y: 0.534666, z: 0.375691} + - time: 1.800000 + value: {x: -0.869968, y: 0.544637, z: 0.374818} + - time: 1.833333 + value: {x: -0.868345, y: 0.554402, z: 0.373550} + - time: 1.866667 + value: {x: -0.866061, y: 0.564066, z: 0.372114} + - time: 1.900000 + value: {x: -0.862755, y: 0.573436, z: 0.369922} + - time: 1.933333 + value: {x: -0.858744, y: 0.582747, z: 0.367597} + - time: 1.966667 + value: {x: -0.854190, y: 0.591842, z: 0.364970} + - time: 2.000000 + value: {x: -0.848758, y: 0.600746, z: 0.361849} + - time: 2.033333 + value: {x: -0.842640, y: 0.609466, z: 0.358402} + - time: 2.066667 + value: {x: -0.836224, y: 0.617979, z: 0.354819} + - time: 2.133333 + value: {x: -0.821554, y: 0.634078, z: 0.346750} + - time: 2.166667 + value: {x: -0.813780, y: 0.641604, z: 0.342520} + - time: 2.233333 + value: {x: -0.797770, y: 0.655436, z: 0.333851} + - time: 2.266667 + value: {x: -0.789558, y: 0.661553, z: 0.329299} + - time: 2.300000 + value: {x: -0.781383, y: 0.667388, z: 0.324884} + - time: 2.333333 + value: {x: -0.773181, y: 0.672681, z: 0.320572} + - time: 2.366667 + value: {x: -0.765030, y: 0.677495, z: 0.316086} + - time: 2.400000 + value: {x: -0.756974, y: 0.681847, z: 0.311830} + - time: 2.433333 + value: {x: -0.748989, y: 0.685639, z: 0.307448} + - time: 2.466667 + value: {x: -0.741167, y: 0.689095, z: 0.303209} + - time: 2.533333 + value: {x: -0.725943, y: 0.694703, z: 0.295107} + - time: 2.600000 + value: {x: -0.711340, y: 0.698512, z: 0.287278} + - time: 2.633333 + value: {x: -0.704297, y: 0.700027, z: 0.283475} + - time: 2.700000 + value: {x: -0.690701, y: 0.702207, z: 0.276031} + - time: 2.733333 + value: {x: -0.684193, y: 0.702838, z: 0.272489} + - time: 2.800000 + value: {x: -0.671663, y: 0.703960, z: 0.265844} + - time: 2.833333 + value: {x: -0.665695, y: 0.703976, z: 0.262507} + - time: 2.900000 + value: {x: -0.654194, y: 0.704083, z: 0.256243} + - time: 2.933333 + value: {x: -0.648766, y: 0.703807, z: 0.253268} + - time: 3.000000 + value: {x: -0.638324, y: 0.703292, z: 0.247677} + - time: 3.033333 + value: {x: -0.633363, y: 0.702807, z: 0.244882} + - time: 3.133333 + value: {x: -0.619411, y: 0.701318, z: 0.237369} + - time: 3.233333 + value: {x: -0.606838, y: 0.699212, z: 0.230349} + - time: 3.266667 + value: {x: -0.602855, y: 0.698637, z: 0.228258} + - time: 3.333333 + value: {x: -0.595155, y: 0.697033, z: 0.223900} + - time: 3.466667 + value: {x: -0.580603, y: 0.694081, z: 0.215868} + - time: 3.633333 + value: {x: -0.563497, y: 0.690516, z: 0.206440} + - time: 3.733333 + value: {x: -0.553779, y: 0.688560, z: 0.201073} + - time: 3.766667 + value: {x: -0.550677, y: 0.688044, z: 0.199503} + - time: 3.800000 + value: {x: -0.547353, y: 0.687359, z: 0.197568} + - time: 3.900000 + value: {x: -0.537968, y: 0.685705, z: 0.192433} + - time: 3.966667 + value: {x: -0.532169, y: 0.684816, z: 0.189346} + - time: 4.000000 + value: {x: -0.529256, y: 0.684304, z: 0.187622} + - time: 4.033333 + value: {x: -0.526237, y: 0.683968, z: 0.186138} + - time: 4.066667 + value: {x: -0.523283, y: 0.683484, z: 0.184373} + - time: 4.166667 + value: {x: -0.515049, y: 0.682480, z: 0.179855} + - time: 4.300000 + value: {x: -0.505292, y: 0.681675, z: 0.174633} + - time: 4.333333 + value: {x: -0.502796, y: 0.681442, z: 0.173131} + - time: 4.433333 + value: {x: -0.495994, y: 0.681160, z: 0.169362} + - time: 4.466667 + value: {x: -0.493945, y: 0.681166, z: 0.168280} + - time: 4.566667 + value: {x: -0.488419, y: 0.681280, z: 0.165178} + - time: 4.666667 + value: {x: -0.483850, y: 0.681705, z: 0.162583} + - time: 4.733333 + value: {x: -0.481354, y: 0.682254, z: 0.161300} + - time: 4.800000 + value: {x: -0.479254, y: 0.682780, z: 0.159937} + - time: 4.900000 + value: {x: -0.476943, y: 0.683964, z: 0.158535} + - time: 4.966667 + value: {x: -0.475966, y: 0.685015, z: 0.158015} + - time: 5.333333 + value: {x: -0.473286, y: 0.690480, z: 0.155906} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.595720, y: 0.595720, z: 0.595720} + - time: 0.233333 + value: {x: 0.623086, y: 0.623086, z: 0.623086} + - time: 0.533333 + value: {x: 0.659042, y: 0.659042, z: 0.659042} + - time: 0.833333 + value: {x: 0.695859, y: 0.695859, z: 0.695859} + - time: 1.133333 + value: {x: 0.733531, y: 0.733531, z: 0.733531} + - time: 1.433333 + value: {x: 0.772050, y: 0.772050, z: 0.772050} + - time: 1.733333 + value: {x: 0.811411, y: 0.811411, z: 0.811411} + - time: 2.033333 + value: {x: 0.851609, y: 0.851609, z: 0.851609} + - time: 2.333333 + value: {x: 0.892636, y: 0.892636, z: 0.892636} + - time: 2.633333 + value: {x: 0.934488, y: 0.934488, z: 0.934488} + - time: 2.933333 + value: {x: 0.977159, y: 0.977159, z: 0.977159} + - time: 3.233333 + value: {x: 1.020643, y: 1.020643, z: 1.020643} + - time: 3.533333 + value: {x: 1.064937, y: 1.064937, z: 1.064937} + - time: 3.833333 + value: {x: 1.110035, y: 1.110035, z: 1.110035} + - time: 4.133333 + value: {x: 1.155932, y: 1.155932, z: 1.155932} + - time: 4.433333 + value: {x: 1.202623, y: 1.202623, z: 1.202623} + - time: 4.733333 + value: {x: 1.250105, y: 1.250105, z: 1.250105} + - time: 5.033333 + value: {x: 1.298373, y: 1.298373, z: 1.298373} + - time: 5.333333 + value: {x: 1.347422, y: 1.347422, z: 1.347422} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_19: + position: + - time: 0.000000 + value: {x: -0.043286, y: 0.457145, z: -0.007559} + - time: 0.033333 + value: {x: -0.043335, y: 0.457144, z: -0.007567} + - time: 0.066667 + value: {x: -0.067677, y: 0.281694, z: -0.011289} + - time: 0.100000 + value: {x: -0.090037, y: 0.159997, z: -0.012676} + - time: 0.133333 + value: {x: -0.110886, y: 0.083834, z: -0.012516} + - time: 0.166667 + value: {x: -0.130578, y: 0.041795, z: -0.011185} + - time: 0.200000 + value: {x: -0.149459, y: 0.020712, z: -0.008740} + - time: 0.233333 + value: {x: -0.168013, y: 0.009736, z: -0.004880} + - time: 0.266667 + value: {x: -0.187453, y: 0.004547, z: 0.001864} + - time: 0.300000 + value: {x: -0.208979, y: 0.002135, z: 0.013071} + - time: 0.333333 + value: {x: -0.233524, y: 0.001118, z: 0.029977} + - time: 0.366667 + value: {x: -0.261825, y: 0.001172, z: 0.053420} + - time: 0.400000 + value: {x: -0.293966, y: 0.002237, z: 0.083503} + - time: 0.433333 + value: {x: -0.326920, y: 0.004340, z: 0.115652} + - time: 0.466667 + value: {x: -0.357213, y: 0.007527, z: 0.144529} + - time: 0.500000 + value: {x: -0.383114, y: 0.012123, z: 0.167639} + - time: 0.533333 + value: {x: -0.405648, y: 0.018327, z: 0.186334} + - time: 0.566667 + value: {x: -0.425731, y: 0.026563, z: 0.201919} + - time: 0.600000 + value: {x: -0.443463, y: 0.036778, z: 0.214572} + - time: 0.633333 + value: {x: -0.457950, y: 0.048914, z: 0.222953} + - time: 0.666667 + value: {x: -0.468723, y: 0.062326, z: 0.226220} + - time: 0.700000 + value: {x: -0.475870, y: 0.074885, z: 0.224539} + - time: 0.733333 + value: {x: -0.480163, y: 0.083917, z: 0.218963} + - time: 0.766667 + value: {x: -0.482323, y: 0.087252, z: 0.210695} + - time: 0.800000 + value: {x: -0.484007, y: 0.084694, z: 0.201949} + - time: 0.833333 + value: {x: -0.487034, y: 0.076928, z: 0.195638} + - time: 0.866667 + value: {x: -0.492779, y: 0.064411, z: 0.193554} + - time: 0.900000 + value: {x: -0.501459, y: 0.049477, z: 0.196146} + - time: 0.933333 + value: {x: -0.512778, y: 0.034595, z: 0.202934} + - time: 0.966667 + value: {x: -0.526852, y: 0.021755, z: 0.214095} + - time: 1.000000 + value: {x: -0.545587, y: 0.011604, z: 0.232375} + - time: 1.033333 + value: {x: -0.571625, y: 0.004280, z: 0.261794} + - time: 1.066667 + value: {x: -0.607107, y: -0.000314, z: 0.305369} + - time: 1.100000 + value: {x: -0.651446, y: -0.002412, z: 0.362319} + - time: 1.133333 + value: {x: -0.701172, y: -0.002673, z: 0.427438} + - time: 1.166667 + value: {x: -0.752983, y: -0.001690, z: 0.495808} + - time: 1.200000 + value: {x: -0.804139, y: 0.000150, z: 0.563436} + - time: 1.233333 + value: {x: -0.852686, y: 0.002845, z: 0.627456} + - time: 1.266667 + value: {x: -0.896975, y: 0.006457, z: 0.685218} + - time: 1.300000 + value: {x: -0.935777, y: 0.011285, z: 0.735133} + - time: 1.333333 + value: {x: -0.968697, y: 0.017130, z: 0.776429} + - time: 1.366667 + value: {x: -0.995506, y: 0.024003, z: 0.808805} + - time: 1.400000 + value: {x: -1.017906, y: 0.031390, z: 0.834756} + - time: 1.433333 + value: {x: -1.036162, y: 0.039251, z: 0.854769} + - time: 1.466667 + value: {x: -1.051530, y: 0.047177, z: 0.870640} + - time: 1.500000 + value: {x: -1.064553, y: 0.055054, z: 0.883240} + - time: 1.533333 + value: {x: -1.075556, y: 0.062725, z: 0.892846} + - time: 1.566667 + value: {x: -1.085037, y: 0.070376, z: 0.900469} + - time: 1.600000 + value: {x: -1.093259, y: 0.077819, z: 0.906240} + - time: 1.633333 + value: {x: -1.100480, y: 0.085173, z: 0.910697} + - time: 1.666667 + value: {x: -1.106865, y: 0.092401, z: 0.914020} + - time: 1.700000 + value: {x: -1.112558, y: 0.099501, z: 0.916417} + - time: 1.733333 + value: {x: -1.117621, y: 0.106514, z: 0.918004} + - time: 1.766667 + value: {x: -1.122062, y: 0.113415, z: 0.918770} + - time: 1.800000 + value: {x: -1.125929, y: 0.120193, z: 0.918788} + - time: 1.833333 + value: {x: -1.129258, y: 0.126858, z: 0.918135} + - time: 1.866667 + value: {x: -1.132056, y: 0.133310, z: 0.916681} + - time: 1.900000 + value: {x: -1.134207, y: 0.139803, z: 0.914553} + - time: 1.933333 + value: {x: -1.135787, y: 0.146059, z: 0.911518} + - time: 1.966667 + value: {x: -1.136968, y: 0.152195, z: 0.908013} + - time: 2.000000 + value: {x: -1.137546, y: 0.158262, z: 0.903751} + - time: 2.033333 + value: {x: -1.137624, y: 0.164184, z: 0.898829} + - time: 2.066667 + value: {x: -1.137447, y: 0.169944, z: 0.893612} + - time: 2.100000 + value: {x: -1.136684, y: 0.175494, z: 0.887687} + - time: 2.133333 + value: {x: -1.135752, y: 0.180683, z: 0.881442} + - time: 2.166667 + value: {x: -1.134532, y: 0.185583, z: 0.874918} + - time: 2.200000 + value: {x: -1.133168, y: 0.190175, z: 0.868356} + - time: 2.233333 + value: {x: -1.131621, y: 0.194297, z: 0.861403} + - time: 2.266667 + value: {x: -1.129981, y: 0.198056, z: 0.854576} + - time: 2.300000 + value: {x: -1.128276, y: 0.201450, z: 0.847645} + - time: 2.333333 + value: {x: -1.126467, y: 0.204221, z: 0.840549} + - time: 2.366667 + value: {x: -1.124692, y: 0.206781, z: 0.833727} + - time: 2.400000 + value: {x: -1.122872, y: 0.208720, z: 0.826773} + - time: 2.433333 + value: {x: -1.121091, y: 0.210325, z: 0.820073} + - time: 2.466667 + value: {x: -1.119343, y: 0.211567, z: 0.813444} + - time: 2.533333 + value: {x: -1.115918, y: 0.212694, z: 0.800375} + - time: 2.600000 + value: {x: -1.112701, y: 0.212229, z: 0.787911} + - time: 2.633333 + value: {x: -1.111190, y: 0.211687, z: 0.781932} + - time: 2.700000 + value: {x: -1.108361, y: 0.209960, z: 0.770512} + - time: 2.800000 + value: {x: -1.104557, y: 0.205798, z: 0.754263} + - time: 2.866667 + value: {x: -1.102404, y: 0.202223, z: 0.744330} + - time: 2.900000 + value: {x: -1.101415, y: 0.200545, z: 0.739662} + - time: 3.000000 + value: {x: -1.098853, y: 0.194422, z: 0.726238} + - time: 3.100000 + value: {x: -1.096902, y: 0.187916, z: 0.714204} + - time: 3.166667 + value: {x: -1.095877, y: 0.183502, z: 0.706818} + - time: 3.266667 + value: {x: -1.094699, y: 0.176938, z: 0.696659} + - time: 3.366667 + value: {x: -1.093783, y: 0.170365, z: 0.687364} + - time: 3.500000 + value: {x: -1.092610, y: 0.161899, z: 0.675506} + - time: 3.666667 + value: {x: -1.091055, y: 0.151968, z: 0.661358} + - time: 3.733333 + value: {x: -1.090495, y: 0.148357, z: 0.656164} + - time: 3.866667 + value: {x: -1.088983, y: 0.141382, z: 0.645369} + - time: 4.000000 + value: {x: -1.087740, y: 0.135296, z: 0.635712} + - time: 4.033333 + value: {x: -1.087266, y: 0.133767, z: 0.632993} + - time: 4.100000 + value: {x: -1.086491, y: 0.131028, z: 0.628146} + - time: 4.200000 + value: {x: -1.085598, y: 0.127291, z: 0.621509} + - time: 4.400000 + value: {x: -1.084168, y: 0.121100, z: 0.609579} + - time: 4.533333 + value: {x: -1.083751, y: 0.117899, z: 0.602954} + - time: 4.600000 + value: {x: -1.083819, y: 0.116593, z: 0.600218} + - time: 4.700000 + value: {x: -1.084272, y: 0.114995, z: 0.596823} + - time: 4.733333 + value: {x: -1.084521, y: 0.114567, z: 0.595896} + - time: 4.866667 + value: {x: -1.085991, y: 0.113308, z: 0.593078} + - time: 4.966667 + value: {x: -1.087627, y: 0.112893, z: 0.591997} + - time: 5.333333 + value: {x: -1.094240, y: 0.112779, z: 0.590892} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.595720, y: 0.595720, z: 0.595720} + - time: 0.233333 + value: {x: 0.623086, y: 0.623086, z: 0.623086} + - time: 0.533333 + value: {x: 0.659042, y: 0.659042, z: 0.659042} + - time: 0.833333 + value: {x: 0.695859, y: 0.695859, z: 0.695859} + - time: 1.133333 + value: {x: 0.733531, y: 0.733531, z: 0.733531} + - time: 1.433333 + value: {x: 0.772050, y: 0.772050, z: 0.772050} + - time: 1.733333 + value: {x: 0.811411, y: 0.811411, z: 0.811411} + - time: 2.033333 + value: {x: 0.851609, y: 0.851609, z: 0.851609} + - time: 2.333333 + value: {x: 0.892636, y: 0.892636, z: 0.892636} + - time: 2.633333 + value: {x: 0.934488, y: 0.934488, z: 0.934488} + - time: 2.933333 + value: {x: 0.977159, y: 0.977159, z: 0.977159} + - time: 3.233333 + value: {x: 1.020643, y: 1.020643, z: 1.020643} + - time: 3.533333 + value: {x: 1.064937, y: 1.064937, z: 1.064937} + - time: 3.833333 + value: {x: 1.110035, y: 1.110035, z: 1.110035} + - time: 4.133333 + value: {x: 1.155932, y: 1.155932, z: 1.155932} + - time: 4.433333 + value: {x: 1.202623, y: 1.202623, z: 1.202623} + - time: 4.733333 + value: {x: 1.250105, y: 1.250105, z: 1.250105} + - time: 5.033333 + value: {x: 1.298373, y: 1.298373, z: 1.298373} + - time: 5.333333 + value: {x: 1.347422, y: 1.347422, z: 1.347422} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_2: + position: + - time: 0.000000 + value: {x: 0.013710, y: 0.487939, z: -0.011455} + - time: 0.033333 + value: {x: 0.013901, y: 0.488338, z: -0.011606} + - time: 0.066667 + value: {x: 0.022452, y: 0.330751, z: -0.018252} + - time: 0.100000 + value: {x: 0.032275, y: 0.224959, z: -0.024199} + - time: 0.133333 + value: {x: 0.042896, y: 0.163353, z: -0.029636} + - time: 0.166667 + value: {x: 0.054142, y: 0.134878, z: -0.034684} + - time: 0.200000 + value: {x: 0.066084, y: 0.126569, z: -0.039449} + - time: 0.233333 + value: {x: 0.079214, y: 0.127734, z: -0.043987} + - time: 0.266667 + value: {x: 0.095430, y: 0.134202, z: -0.048312} + - time: 0.300000 + value: {x: 0.116655, y: 0.143004, z: -0.052490} + - time: 0.333333 + value: {x: 0.144379, y: 0.152778, z: -0.056587} + - time: 0.366667 + value: {x: 0.179830, y: 0.163408, z: -0.060486} + - time: 0.400000 + value: {x: 0.223013, y: 0.174740, z: -0.064320} + - time: 0.433333 + value: {x: 0.268425, y: 0.186822, z: -0.068113} + - time: 0.466667 + value: {x: 0.309810, y: 0.199871, z: -0.071745} + - time: 0.500000 + value: {x: 0.343966, y: 0.214047, z: -0.075397} + - time: 0.533333 + value: {x: 0.372707, y: 0.229717, z: -0.078940} + - time: 0.566667 + value: {x: 0.397621, y: 0.247325, z: -0.082378} + - time: 0.600000 + value: {x: 0.418823, y: 0.266730, z: -0.085808} + - time: 0.633333 + value: {x: 0.434672, y: 0.287850, z: -0.089267} + - time: 0.666667 + value: {x: 0.444331, y: 0.310211, z: -0.092614} + - time: 0.700000 + value: {x: 0.447909, y: 0.331600, z: -0.095937} + - time: 0.733333 + value: {x: 0.446781, y: 0.349443, z: -0.099153} + - time: 0.766667 + value: {x: 0.442162, y: 0.361351, z: -0.102477} + - time: 0.800000 + value: {x: 0.437065, y: 0.367450, z: -0.105614} + - time: 0.833333 + value: {x: 0.434648, y: 0.368090, z: -0.108889} + - time: 0.866667 + value: {x: 0.437430, y: 0.364069, z: -0.111983} + - time: 0.900000 + value: {x: 0.445732, y: 0.357510, z: -0.115104} + - time: 0.933333 + value: {x: 0.459022, y: 0.350930, z: -0.118211} + - time: 0.966667 + value: {x: 0.477487, y: 0.346291, z: -0.121337} + - time: 1.000000 + value: {x: 0.504543, y: 0.344341, z: -0.124386} + - time: 1.033333 + value: {x: 0.544872, y: 0.345055, z: -0.127522} + - time: 1.066667 + value: {x: 0.602334, y: 0.348556, z: -0.130536} + - time: 1.100000 + value: {x: 0.675839, y: 0.354461, z: -0.133575} + - time: 1.133333 + value: {x: 0.759189, y: 0.362195, z: -0.136559} + - time: 1.166667 + value: {x: 0.846477, y: 0.371188, z: -0.139468} + - time: 1.200000 + value: {x: 0.932768, y: 0.380936, z: -0.142421} + - time: 1.233333 + value: {x: 1.014551, y: 0.391380, z: -0.145475} + - time: 1.266667 + value: {x: 1.088930, y: 0.402889, z: -0.148331} + - time: 1.300000 + value: {x: 1.153629, y: 0.415394, z: -0.151353} + - time: 1.333333 + value: {x: 1.207989, y: 0.428975, z: -0.154265} + - time: 1.366667 + value: {x: 1.251580, y: 0.443573, z: -0.157141} + - time: 1.400000 + value: {x: 1.287449, y: 0.458717, z: -0.159936} + - time: 1.433333 + value: {x: 1.316034, y: 0.474209, z: -0.162813} + - time: 1.466667 + value: {x: 1.339594, y: 0.489735, z: -0.165675} + - time: 1.500000 + value: {x: 1.359077, y: 0.505076, z: -0.168634} + - time: 1.533333 + value: {x: 1.375116, y: 0.520387, z: -0.171367} + - time: 1.566667 + value: {x: 1.388517, y: 0.535416, z: -0.174328} + - time: 1.600000 + value: {x: 1.399824, y: 0.550386, z: -0.177094} + - time: 1.633333 + value: {x: 1.409445, y: 0.565162, z: -0.179930} + - time: 1.666667 + value: {x: 1.417688, y: 0.579800, z: -0.182735} + - time: 1.700000 + value: {x: 1.424810, y: 0.594306, z: -0.185506} + - time: 1.733333 + value: {x: 1.430910, y: 0.608677, z: -0.188289} + - time: 1.766667 + value: {x: 1.436008, y: 0.622923, z: -0.191046} + - time: 1.800000 + value: {x: 1.440179, y: 0.637019, z: -0.193793} + - time: 1.833333 + value: {x: 1.443481, y: 0.650937, z: -0.196571} + - time: 1.866667 + value: {x: 1.445964, y: 0.664805, z: -0.199139} + - time: 1.900000 + value: {x: 1.447328, y: 0.678374, z: -0.202029} + - time: 1.933333 + value: {x: 1.447809, y: 0.691942, z: -0.204634} + - time: 1.966667 + value: {x: 1.447657, y: 0.705317, z: -0.207279} + - time: 2.000000 + value: {x: 1.446500, y: 0.718518, z: -0.209999} + - time: 2.033333 + value: {x: 1.444534, y: 0.731561, z: -0.212698} + - time: 2.066667 + value: {x: 1.442198, y: 0.744424, z: -0.215380} + - time: 2.100000 + value: {x: 1.438871, y: 0.756919, z: -0.218197} + - time: 2.133333 + value: {x: 1.435363, y: 0.769289, z: -0.220724} + - time: 2.166667 + value: {x: 1.431398, y: 0.781233, z: -0.223365} + - time: 2.200000 + value: {x: 1.427222, y: 0.792673, z: -0.226180} + - time: 2.233333 + value: {x: 1.422849, y: 0.803963, z: -0.228615} + - time: 2.266667 + value: {x: 1.418324, y: 0.814535, z: -0.231400} + - time: 2.300000 + value: {x: 1.413778, y: 0.824863, z: -0.234019} + - time: 2.333333 + value: {x: 1.409135, y: 0.834691, z: -0.236470} + - time: 2.366667 + value: {x: 1.404579, y: 0.844013, z: -0.239207} + - time: 2.400000 + value: {x: 1.400040, y: 0.852927, z: -0.241677} + - time: 2.433333 + value: {x: 1.395603, y: 0.861261, z: -0.244382} + - time: 2.466667 + value: {x: 1.391296, y: 0.869284, z: -0.246996} + - time: 2.533333 + value: {x: 1.383019, y: 0.884102, z: -0.251976} + - time: 2.600000 + value: {x: 1.375338, y: 0.897160, z: -0.257004} + - time: 2.633333 + value: {x: 1.371748, y: 0.903310, z: -0.259542} + - time: 2.700000 + value: {x: 1.365057, y: 0.914767, z: -0.264738} + - time: 2.733333 + value: {x: 1.361984, y: 0.920058, z: -0.267279} + - time: 2.800000 + value: {x: 1.356247, y: 0.930573, z: -0.272056} + - time: 2.833333 + value: {x: 1.353718, y: 0.935252, z: -0.274691} + - time: 2.866667 + value: {x: 1.351286, y: 0.940088, z: -0.277009} + - time: 2.900000 + value: {x: 1.349011, y: 0.944756, z: -0.279660} + - time: 3.000000 + value: {x: 1.343261, y: 0.958136, z: -0.286870} + - time: 3.033333 + value: {x: 1.341697, y: 0.962352, z: -0.289436} + - time: 3.133333 + value: {x: 1.337770, y: 0.975105, z: -0.296458} + - time: 3.233333 + value: {x: 1.335228, y: 0.987197, z: -0.303773} + - time: 3.266667 + value: {x: 1.334519, y: 0.991404, z: -0.305964} + - time: 3.300000 + value: {x: 1.333948, y: 0.995257, z: -0.308521} + - time: 3.466667 + value: {x: 1.331843, y: 1.015308, z: -0.320152} + - time: 3.566667 + value: {x: 1.331161, y: 1.027387, z: -0.327100} + - time: 3.700000 + value: {x: 1.330167, y: 1.043718, z: -0.335899} + - time: 3.733333 + value: {x: 1.330119, y: 1.047715, z: -0.338357} + - time: 3.766667 + value: {x: 1.330040, y: 1.051984, z: -0.340343} + - time: 3.800000 + value: {x: 1.329772, y: 1.055977, z: -0.342776} + - time: 3.833333 + value: {x: 1.329542, y: 1.060205, z: -0.344825} + - time: 3.933333 + value: {x: 1.329408, y: 1.072676, z: -0.351605} + - time: 3.966667 + value: {x: 1.329485, y: 1.077043, z: -0.353561} + - time: 4.000000 + value: {x: 1.329554, y: 1.081174, z: -0.355965} + - time: 4.033333 + value: {x: 1.329391, y: 1.085598, z: -0.357830} + - time: 4.066667 + value: {x: 1.329376, y: 1.089736, z: -0.360262} + - time: 4.100000 + value: {x: 1.329390, y: 1.094209, z: -0.362120} + - time: 4.133333 + value: {x: 1.329552, y: 1.098391, z: -0.364545} + - time: 4.166667 + value: {x: 1.329771, y: 1.102750, z: -0.366686} + - time: 4.200000 + value: {x: 1.330040, y: 1.107312, z: -0.368491} + - time: 4.266666 + value: {x: 1.330932, y: 1.116024, z: -0.372965} + - time: 4.300000 + value: {x: 1.331326, y: 1.120614, z: -0.374821} + - time: 4.333333 + value: {x: 1.331660, y: 1.124950, z: -0.377164} + - time: 4.400000 + value: {x: 1.332542, y: 1.134126, z: -0.381037} + - time: 4.433333 + value: {x: 1.333179, y: 1.138505, z: -0.383413} + - time: 4.500000 + value: {x: 1.334681, y: 1.147735, z: -0.387402} + - time: 4.533333 + value: {x: 1.335556, y: 1.152507, z: -0.389163} + - time: 4.566667 + value: {x: 1.336593, y: 1.156989, z: -0.391494} + - time: 4.600000 + value: {x: 1.337664, y: 1.161834, z: -0.393194} + - time: 4.666667 + value: {x: 1.340205, y: 1.171080, z: -0.397524} + - time: 4.700000 + value: {x: 1.341575, y: 1.176014, z: -0.399174} + - time: 4.733333 + value: {x: 1.343083, y: 1.180777, z: -0.401177} + - time: 4.766666 + value: {x: 1.344721, y: 1.185421, z: -0.403438} + - time: 4.866667 + value: {x: 1.350129, y: 1.200166, z: -0.408966} + - time: 4.900000 + value: {x: 1.352179, y: 1.204935, z: -0.411161} + - time: 4.966667 + value: {x: 1.356513, y: 1.214993, z: -0.414726} + - time: 5.333333 + value: {x: 1.382152, y: 1.268685, z: -0.435095} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.400714, y: 0.400714, z: 0.400714} + - time: 0.033333 + value: {x: 0.419434, y: 0.419434, z: 0.419434} + - time: 0.066667 + value: {x: 0.438520, y: 0.438520, z: 0.438520} + - time: 0.100000 + value: {x: 0.457968, y: 0.457968, z: 0.457968} + - time: 0.133333 + value: {x: 0.477777, y: 0.477777, z: 0.477777} + - time: 0.166667 + value: {x: 0.497945, y: 0.497945, z: 0.497945} + - time: 0.200000 + value: {x: 0.518469, y: 0.518469, z: 0.518469} + - time: 0.233333 + value: {x: 0.539347, y: 0.539347, z: 0.539347} + - time: 0.266667 + value: {x: 0.560577, y: 0.560577, z: 0.560577} + - time: 0.300000 + value: {x: 0.582158, y: 0.582158, z: 0.582158} + - time: 0.333333 + value: {x: 0.604087, y: 0.604087, z: 0.604087} + - time: 0.366667 + value: {x: 0.626363, y: 0.626363, z: 0.626363} + - time: 0.400000 + value: {x: 0.648983, y: 0.648983, z: 0.648983} + - time: 0.433333 + value: {x: 0.671946, y: 0.671946, z: 0.671946} + - time: 0.466667 + value: {x: 0.695251, y: 0.695251, z: 0.695251} + - time: 0.500000 + value: {x: 0.718896, y: 0.718896, z: 0.718896} + - time: 0.533333 + value: {x: 0.742878, y: 0.742878, z: 0.742878} + - time: 0.566667 + value: {x: 0.767198, y: 0.767198, z: 0.767198} + - time: 0.600000 + value: {x: 0.791851, y: 0.791851, z: 0.791851} + - time: 0.633333 + value: {x: 0.816839, y: 0.816839, z: 0.816839} + - time: 0.666667 + value: {x: 0.842159, y: 0.842159, z: 0.842159} + - time: 0.700000 + value: {x: 0.867808, y: 0.867808, z: 0.867808} + - time: 0.733333 + value: {x: 0.893788, y: 0.893788, z: 0.893788} + - time: 0.766667 + value: {x: 0.920095, y: 0.920095, z: 0.920095} + - time: 0.800000 + value: {x: 0.946728, y: 0.946728, z: 0.946728} + - time: 0.833333 + value: {x: 0.973686, y: 0.973686, z: 0.973686} + - time: 0.866667 + value: {x: 1.000968, y: 1.000968, z: 1.000968} + - time: 0.900000 + value: {x: 1.028572, y: 1.028572, z: 1.028572} + - time: 0.933333 + value: {x: 1.056498, y: 1.056498, z: 1.056498} + - time: 0.966667 + value: {x: 1.084744, y: 1.084744, z: 1.084744} + - time: 1.000000 + value: {x: 1.113308, y: 1.113308, z: 1.113308} + - time: 1.033333 + value: {x: 1.142190, y: 1.142190, z: 1.142190} + - time: 1.066667 + value: {x: 1.171389, y: 1.171389, z: 1.171389} + - time: 1.100000 + value: {x: 1.200902, y: 1.200902, z: 1.200902} + - time: 1.133333 + value: {x: 1.230731, y: 1.230731, z: 1.230731} + - time: 1.166667 + value: {x: 1.260872, y: 1.260872, z: 1.260872} + - time: 1.200000 + value: {x: 1.291324, y: 1.291324, z: 1.291324} + - time: 1.233333 + value: {x: 1.322089, y: 1.322089, z: 1.322089} + - time: 1.266667 + value: {x: 1.353163, y: 1.353163, z: 1.353163} + - time: 1.300000 + value: {x: 1.384545, y: 1.384545, z: 1.384545} + - time: 1.333333 + value: {x: 1.416236, y: 1.416236, z: 1.416236} + - time: 1.366667 + value: {x: 1.448234, y: 1.448234, z: 1.448234} + - time: 1.400000 + value: {x: 1.480537, y: 1.480537, z: 1.480537} + - time: 1.433333 + value: {x: 1.513146, y: 1.513146, z: 1.513146} + - time: 1.466667 + value: {x: 1.546058, y: 1.546058, z: 1.546058} + - time: 1.500000 + value: {x: 1.579273, y: 1.579273, z: 1.579273} + - time: 1.533333 + value: {x: 1.612791, y: 1.612791, z: 1.612791} + - time: 1.566667 + value: {x: 1.646609, y: 1.646609, z: 1.646609} + - time: 1.600000 + value: {x: 1.680728, y: 1.680728, z: 1.680728} + - time: 1.633333 + value: {x: 1.715147, y: 1.715147, z: 1.715147} + - time: 1.666667 + value: {x: 1.749864, y: 1.749864, z: 1.749864} + - time: 1.700000 + value: {x: 1.784878, y: 1.784878, z: 1.784878} + - time: 1.733333 + value: {x: 1.820190, y: 1.820190, z: 1.820190} + - time: 1.766667 + value: {x: 1.855798, y: 1.855798, z: 1.855798} + - time: 1.800000 + value: {x: 1.891701, y: 1.891701, z: 1.891701} + - time: 1.833333 + value: {x: 1.927899, y: 1.927899, z: 1.927899} + - time: 1.866667 + value: {x: 1.964390, y: 1.964390, z: 1.964390} + - time: 1.900000 + value: {x: 2.001174, y: 2.001174, z: 2.001174} + - time: 1.933333 + value: {x: 2.038250, y: 2.038250, z: 2.038250} + - time: 1.966667 + value: {x: 2.075617, y: 2.075617, z: 2.075617} + - time: 2.000000 + value: {x: 2.113275, y: 2.113275, z: 2.113275} + - time: 2.033333 + value: {x: 2.151223, y: 2.151223, z: 2.151223} + - time: 2.066667 + value: {x: 2.189460, y: 2.189460, z: 2.189460} + - time: 2.100000 + value: {x: 2.227985, y: 2.227985, z: 2.227985} + - time: 2.133333 + value: {x: 2.266797, y: 2.266797, z: 2.266797} + - time: 2.166667 + value: {x: 2.305897, y: 2.305897, z: 2.305897} + - time: 2.200000 + value: {x: 2.345283, y: 2.345283, z: 2.345283} + - time: 2.233333 + value: {x: 2.384955, y: 2.384955, z: 2.384955} + - time: 2.266667 + value: {x: 2.424911, y: 2.424911, z: 2.424911} + - time: 2.300000 + value: {x: 2.465151, y: 2.465151, z: 2.465151} + - time: 2.333333 + value: {x: 2.505676, y: 2.505676, z: 2.505676} + - time: 2.366667 + value: {x: 2.546482, y: 2.546482, z: 2.546482} + - time: 2.400000 + value: {x: 2.587570, y: 2.587570, z: 2.587570} + - time: 2.433333 + value: {x: 2.628942, y: 2.628942, z: 2.628942} + - time: 2.466667 + value: {x: 2.670593, y: 2.670593, z: 2.670593} + - time: 2.500000 + value: {x: 2.712525, y: 2.712525, z: 2.712525} + - time: 2.533333 + value: {x: 2.754737, y: 2.754737, z: 2.754737} + - time: 2.566667 + value: {x: 2.797227, y: 2.797227, z: 2.797227} + - time: 2.600000 + value: {x: 2.839996, y: 2.839996, z: 2.839996} + - time: 2.633333 + value: {x: 2.883043, y: 2.883043, z: 2.883043} + - time: 2.666667 + value: {x: 2.926366, y: 2.926366, z: 2.926366} + - time: 2.700000 + value: {x: 2.969967, y: 2.969967, z: 2.969967} + - time: 2.733333 + value: {x: 3.013844, y: 3.013844, z: 3.013844} + - time: 2.766667 + value: {x: 3.057996, y: 3.057996, z: 3.057996} + - time: 2.800000 + value: {x: 3.102423, y: 3.102423, z: 3.102423} + - time: 2.833333 + value: {x: 3.147125, y: 3.147125, z: 3.147125} + - time: 2.866667 + value: {x: 3.192100, y: 3.192100, z: 3.192100} + - time: 2.900000 + value: {x: 3.237348, y: 3.237348, z: 3.237348} + - time: 2.933333 + value: {x: 3.282870, y: 3.282870, z: 3.282870} + - time: 2.966667 + value: {x: 3.328663, y: 3.328663, z: 3.328663} + - time: 3.000000 + value: {x: 3.374727, y: 3.374727, z: 3.374727} + - time: 3.033333 + value: {x: 3.421064, y: 3.421064, z: 3.421064} + - time: 3.066667 + value: {x: 3.467670, y: 3.467670, z: 3.467670} + - time: 3.100000 + value: {x: 3.514546, y: 3.514546, z: 3.514546} + - time: 3.133333 + value: {x: 3.561692, y: 3.561692, z: 3.561692} + - time: 3.166667 + value: {x: 3.609108, y: 3.609108, z: 3.609108} + - time: 3.200000 + value: {x: 3.656791, y: 3.656791, z: 3.656791} + - time: 3.233333 + value: {x: 3.704742, y: 3.704742, z: 3.704742} + - time: 3.266667 + value: {x: 3.752961, y: 3.752961, z: 3.752961} + - time: 3.300000 + value: {x: 3.801447, y: 3.801447, z: 3.801447} + - time: 3.333333 + value: {x: 3.850199, y: 3.850199, z: 3.850199} + - time: 3.366667 + value: {x: 3.899218, y: 3.899218, z: 3.899218} + - time: 3.400000 + value: {x: 3.948502, y: 3.948502, z: 3.948502} + - time: 3.433333 + value: {x: 3.998051, y: 3.998051, z: 3.998051} + - time: 3.466667 + value: {x: 4.047864, y: 4.047864, z: 4.047864} + - time: 3.500000 + value: {x: 4.097942, y: 4.097942, z: 4.097942} + - time: 3.533333 + value: {x: 4.148283, y: 4.148283, z: 4.148283} + - time: 3.566667 + value: {x: 4.198888, y: 4.198888, z: 4.198888} + - time: 3.600000 + value: {x: 4.249756, y: 4.249756, z: 4.249756} + - time: 3.633333 + value: {x: 4.300885, y: 4.300885, z: 4.300885} + - time: 3.666667 + value: {x: 4.352276, y: 4.352276, z: 4.352276} + - time: 3.700000 + value: {x: 4.403930, y: 4.403930, z: 4.403930} + - time: 3.733333 + value: {x: 4.455843, y: 4.455843, z: 4.455843} + - time: 3.766667 + value: {x: 4.508018, y: 4.508018, z: 4.508018} + - time: 3.800000 + value: {x: 4.560452, y: 4.560452, z: 4.560452} + - time: 3.833333 + value: {x: 4.613145, y: 4.613145, z: 4.613145} + - time: 3.866667 + value: {x: 4.666099, y: 4.666099, z: 4.666099} + - time: 3.900000 + value: {x: 4.719311, y: 4.719311, z: 4.719311} + - time: 3.933333 + value: {x: 4.772781, y: 4.772781, z: 4.772781} + - time: 3.966667 + value: {x: 4.826510, y: 4.826510, z: 4.826510} + - time: 4.000000 + value: {x: 4.880496, y: 4.880496, z: 4.880496} + - time: 4.033333 + value: {x: 4.934739, y: 4.934739, z: 4.934739} + - time: 4.066667 + value: {x: 4.989239, y: 4.989239, z: 4.989239} + - time: 4.100000 + value: {x: 5.043995, y: 5.043995, z: 5.043995} + - time: 4.133333 + value: {x: 5.099007, y: 5.099007, z: 5.099007} + - time: 4.166667 + value: {x: 5.154274, y: 5.154274, z: 5.154274} + - time: 4.200000 + value: {x: 5.209797, y: 5.209797, z: 5.209797} + - time: 4.233333 + value: {x: 5.265574, y: 5.265574, z: 5.265574} + - time: 4.266666 + value: {x: 5.321607, y: 5.321607, z: 5.321607} + - time: 4.300000 + value: {x: 5.377894, y: 5.377894, z: 5.377894} + - time: 4.333333 + value: {x: 5.434433, y: 5.434433, z: 5.434433} + - time: 4.366667 + value: {x: 5.491226, y: 5.491226, z: 5.491226} + - time: 4.400000 + value: {x: 5.548272, y: 5.548272, z: 5.548272} + - time: 4.433333 + value: {x: 5.605569, y: 5.605569, z: 5.605569} + - time: 4.466667 + value: {x: 5.663120, y: 5.663120, z: 5.663120} + - time: 4.500000 + value: {x: 5.720922, y: 5.720922, z: 5.720922} + - time: 4.533333 + value: {x: 5.778975, y: 5.778975, z: 5.778975} + - time: 4.566667 + value: {x: 5.837280, y: 5.837280, z: 5.837280} + - time: 4.600000 + value: {x: 5.895835, y: 5.895835, z: 5.895835} + - time: 4.633333 + value: {x: 5.954640, y: 5.954640, z: 5.954640} + - time: 4.666667 + value: {x: 6.013695, y: 6.013695, z: 6.013695} + - time: 4.700000 + value: {x: 6.072999, y: 6.072999, z: 6.072999} + - time: 4.733333 + value: {x: 6.132553, y: 6.132553, z: 6.132553} + - time: 4.766666 + value: {x: 6.192357, y: 6.192357, z: 6.192357} + - time: 4.800000 + value: {x: 6.252409, y: 6.252409, z: 6.252409} + - time: 4.833333 + value: {x: 6.312710, y: 6.312710, z: 6.312710} + - time: 4.866667 + value: {x: 6.373257, y: 6.373257, z: 6.373257} + - time: 4.900000 + value: {x: 6.434052, y: 6.434052, z: 6.434052} + - time: 4.933333 + value: {x: 6.495093, y: 6.495093, z: 6.495093} + - time: 4.966667 + value: {x: 6.556385, y: 6.556385, z: 6.556385} + - time: 5.000000 + value: {x: 6.617919, y: 6.617919, z: 6.617919} + - time: 5.033333 + value: {x: 6.679702, y: 6.679702, z: 6.679702} + - time: 5.066667 + value: {x: 6.741729, y: 6.741729, z: 6.741729} + - time: 5.100000 + value: {x: 6.804002, y: 6.804002, z: 6.804002} + - time: 5.133333 + value: {x: 6.866521, y: 6.866521, z: 6.866521} + - time: 5.166667 + value: {x: 6.929286, y: 6.929286, z: 6.929286} + - time: 5.200000 + value: {x: 6.992294, y: 6.992294, z: 6.992294} + - time: 5.233333 + value: {x: 7.055546, y: 7.055546, z: 7.055546} + - time: 5.266666 + value: {x: 7.119041, y: 7.119041, z: 7.119041} + - time: 5.300000 + value: {x: 7.182782, y: 7.182782, z: 7.182782} + - time: 5.333333 + value: {x: 7.246766, y: 7.246766, z: 7.246766} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_20: + position: + - time: 0.000000 + value: {x: 0.037767, y: 0.463226, z: 0.023050} + - time: 0.033333 + value: {x: 0.037808, y: 0.463232, z: 0.023077} + - time: 0.066667 + value: {x: 0.058449, y: 0.291159, z: 0.036341} + - time: 0.100000 + value: {x: 0.075120, y: 0.172382, z: 0.049695} + - time: 0.133333 + value: {x: 0.089019, y: 0.098820, z: 0.062978} + - time: 0.166667 + value: {x: 0.100808, y: 0.059147, z: 0.076197} + - time: 0.200000 + value: {x: 0.110794, y: 0.040230, z: 0.089543} + - time: 0.233333 + value: {x: 0.118962, y: 0.031256, z: 0.103495} + - time: 0.266667 + value: {x: 0.124459, y: 0.027948, z: 0.119656} + - time: 0.300000 + value: {x: 0.126327, y: 0.027294, z: 0.139697} + - time: 0.333333 + value: {x: 0.123814, y: 0.027907, z: 0.164927} + - time: 0.366667 + value: {x: 0.116420, y: 0.029548, z: 0.196262} + - time: 0.400000 + value: {x: 0.104128, y: 0.032105, z: 0.233840} + - time: 0.433333 + value: {x: 0.090068, y: 0.035605, z: 0.273128} + - time: 0.466667 + value: {x: 0.077877, y: 0.040169, z: 0.308838} + - time: 0.500000 + value: {x: 0.069270, y: 0.046040, z: 0.338482} + - time: 0.533333 + value: {x: 0.063361, y: 0.053492, z: 0.363455} + - time: 0.566667 + value: {x: 0.059291, y: 0.062954, z: 0.385085} + - time: 0.600000 + value: {x: 0.056964, y: 0.074329, z: 0.403553} + - time: 0.633333 + value: {x: 0.057299, y: 0.087546, z: 0.417537} + - time: 0.666667 + value: {x: 0.060879, y: 0.102038, z: 0.426224} + - time: 0.700000 + value: {x: 0.067607, y: 0.115634, z: 0.429783} + - time: 0.733333 + value: {x: 0.076784, y: 0.125704, z: 0.429290} + - time: 0.766667 + value: {x: 0.087612, y: 0.129980, z: 0.425931} + - time: 0.800000 + value: {x: 0.098604, y: 0.128407, z: 0.421967} + - time: 0.833333 + value: {x: 0.107806, y: 0.121521, z: 0.420281} + - time: 0.866667 + value: {x: 0.114018, y: 0.109931, z: 0.422708} + - time: 0.900000 + value: {x: 0.116944, y: 0.095875, z: 0.429682} + - time: 0.933333 + value: {x: 0.116915, y: 0.081843, z: 0.440732} + - time: 0.966667 + value: {x: 0.113817, y: 0.069812, z: 0.456041} + - time: 1.000000 + value: {x: 0.105803, y: 0.060475, z: 0.478369} + - time: 1.033333 + value: {x: 0.090170, y: 0.053897, z: 0.511721} + - time: 1.066667 + value: {x: 0.064885, y: 0.050077, z: 0.559145} + - time: 1.100000 + value: {x: 0.030478, y: 0.048714, z: 0.619849} + - time: 1.133333 + value: {x: -0.009531, y: 0.049189, z: 0.688634} + - time: 1.166667 + value: {x: -0.051825, y: 0.050916, z: 0.760595} + - time: 1.200000 + value: {x: -0.093706, y: 0.053458, z: 0.831725} + - time: 1.233333 + value: {x: -0.133234, y: 0.056789, z: 0.899156} + - time: 1.266667 + value: {x: -0.168624, y: 0.061101, z: 0.960275} + - time: 1.300000 + value: {x: -0.198796, y: 0.066539, z: 1.013455} + - time: 1.333333 + value: {x: -0.223229, y: 0.073021, z: 1.057955} + - time: 1.366667 + value: {x: -0.241718, y: 0.080527, z: 1.093472} + - time: 1.400000 + value: {x: -0.255943, y: 0.088561, z: 1.122505} + - time: 1.433333 + value: {x: -0.266229, y: 0.097018, z: 1.145528} + - time: 1.466667 + value: {x: -0.273786, y: 0.105529, z: 1.164350} + - time: 1.500000 + value: {x: -0.279198, y: 0.113938, z: 1.179829} + - time: 1.533333 + value: {x: -0.282653, y: 0.122213, z: 1.192280} + - time: 1.566667 + value: {x: -0.284828, y: 0.130363, z: 1.202669} + - time: 1.600000 + value: {x: -0.285811, y: 0.138368, z: 1.211171} + - time: 1.633333 + value: {x: -0.285964, y: 0.146242, z: 1.218300} + - time: 1.666667 + value: {x: -0.285405, y: 0.153987, z: 1.224245} + - time: 1.700000 + value: {x: -0.284273, y: 0.161605, z: 1.229218} + - time: 1.733333 + value: {x: -0.282646, y: 0.169117, z: 1.233332} + - time: 1.766667 + value: {x: -0.280514, y: 0.176515, z: 1.236579} + - time: 1.800000 + value: {x: -0.277927, y: 0.183779, z: 1.239035} + - time: 1.833333 + value: {x: -0.274933, y: 0.190907, z: 1.240772} + - time: 1.866667 + value: {x: -0.271445, y: 0.197888, z: 1.241683} + - time: 1.900000 + value: {x: -0.267545, y: 0.204779, z: 1.241848} + - time: 1.933333 + value: {x: -0.263079, y: 0.211526, z: 1.241093} + - time: 1.966667 + value: {x: -0.258336, y: 0.218128, z: 1.239820} + - time: 2.000000 + value: {x: -0.253125, y: 0.224622, z: 1.237746} + - time: 2.033333 + value: {x: -0.247507, y: 0.230967, z: 1.234975} + - time: 2.066667 + value: {x: -0.241731, y: 0.237146, z: 1.231873} + - time: 2.100000 + value: {x: -0.235515, y: 0.243058, z: 1.228014} + - time: 2.133333 + value: {x: -0.229122, y: 0.248700, z: 1.223825} + - time: 2.166667 + value: {x: -0.222576, y: 0.254004, z: 1.219311} + - time: 2.200000 + value: {x: -0.216040, y: 0.258927, z: 1.214712} + - time: 2.233333 + value: {x: -0.209277, y: 0.263506, z: 1.209718} + - time: 2.266667 + value: {x: -0.202632, y: 0.267588, z: 1.204789} + - time: 2.300000 + value: {x: -0.195950, y: 0.271356, z: 1.199737} + - time: 2.333333 + value: {x: -0.189192, y: 0.274548, z: 1.194503} + - time: 2.366667 + value: {x: -0.182649, y: 0.277423, z: 1.189488} + - time: 2.400000 + value: {x: -0.176050, y: 0.279757, z: 1.184335} + - time: 2.433333 + value: {x: -0.169651, y: 0.281671, z: 1.179381} + - time: 2.466667 + value: {x: -0.163333, y: 0.283243, z: 1.174482} + - time: 2.533333 + value: {x: -0.150912, y: 0.285087, z: 1.164804} + - time: 2.600000 + value: {x: -0.139012, y: 0.285292, z: 1.155616} + - time: 2.633333 + value: {x: -0.133276, y: 0.285064, z: 1.151234} + - time: 2.700000 + value: {x: -0.122245, y: 0.283903, z: 1.142918} + - time: 2.800000 + value: {x: -0.106490, y: 0.280687, z: 1.131175} + - time: 2.866667 + value: {x: -0.096718, y: 0.277681, z: 1.124119} + - time: 2.900000 + value: {x: -0.092069, y: 0.276223, z: 1.120841} + - time: 3.000000 + value: {x: -0.078657, y: 0.270947, z: 1.111511} + - time: 3.100000 + value: {x: -0.066385, y: 0.265226, z: 1.103372} + - time: 3.166667 + value: {x: -0.058741, y: 0.261324, z: 1.098483} + - time: 3.266667 + value: {x: -0.048052, y: 0.255464, z: 1.091918} + - time: 3.433333 + value: {x: -0.031721, y: 0.245695, z: 1.082209} + - time: 3.533333 + value: {x: -0.022512, y: 0.240081, z: 1.076716} + - time: 3.666667 + value: {x: -0.010617, y: 0.233016, z: 1.069381} + - time: 3.733333 + value: {x: -0.005089, y: 0.229731, z: 1.066069} + - time: 3.866667 + value: {x: 0.006044, y: 0.223536, z: 1.058899} + - time: 4.000000 + value: {x: 0.016163, y: 0.218056, z: 1.052601} + - time: 4.033333 + value: {x: 0.018859, y: 0.216768, z: 1.050712} + - time: 4.100000 + value: {x: 0.023812, y: 0.214342, z: 1.047441} + - time: 4.200000 + value: {x: 0.030708, y: 0.211055, z: 1.043072} + - time: 4.266666 + value: {x: 0.034857, y: 0.209099, z: 1.040643} + - time: 4.400000 + value: {x: 0.043231, y: 0.205684, z: 1.035334} + - time: 4.533333 + value: {x: 0.050431, y: 0.202999, z: 1.031268} + - time: 4.600000 + value: {x: 0.053569, y: 0.201932, z: 1.029743} + - time: 4.700000 + value: {x: 0.057712, y: 0.200677, z: 1.028085} + - time: 4.733333 + value: {x: 0.058932, y: 0.200353, z: 1.027714} + - time: 4.866667 + value: {x: 0.063106, y: 0.199522, z: 1.027026} + - time: 4.966667 + value: {x: 0.065431, y: 0.199406, z: 1.027441} + - time: 5.333333 + value: {x: 0.071146, y: 0.200215, z: 1.030991} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.703652, y: 0.703652, z: 0.703652} + - time: 0.133333 + value: {x: 0.749703, y: 0.749703, z: 0.749703} + - time: 0.233333 + value: {x: 0.785059, y: 0.785059, z: 0.785059} + - time: 0.333333 + value: {x: 0.821112, y: 0.821112, z: 0.821112} + - time: 0.433333 + value: {x: 0.857855, y: 0.857855, z: 0.857855} + - time: 0.533333 + value: {x: 0.895287, y: 0.895287, z: 0.895287} + - time: 0.633333 + value: {x: 0.933401, y: 0.933401, z: 0.933401} + - time: 0.733333 + value: {x: 0.972193, y: 0.972193, z: 0.972193} + - time: 0.833333 + value: {x: 1.011662, y: 1.011662, z: 1.011662} + - time: 0.933333 + value: {x: 1.051801, y: 1.051801, z: 1.051801} + - time: 1.033333 + value: {x: 1.092608, y: 1.092608, z: 1.092608} + - time: 1.133333 + value: {x: 1.134078, y: 1.134078, z: 1.134078} + - time: 1.233333 + value: {x: 1.176209, y: 1.176209, z: 1.176209} + - time: 1.333333 + value: {x: 1.218997, y: 1.218997, z: 1.218997} + - time: 1.433333 + value: {x: 1.262439, y: 1.262439, z: 1.262439} + - time: 1.533333 + value: {x: 1.306530, y: 1.306530, z: 1.306530} + - time: 1.633333 + value: {x: 1.351269, y: 1.351269, z: 1.351269} + - time: 1.733333 + value: {x: 1.396652, y: 1.396652, z: 1.396652} + - time: 1.833333 + value: {x: 1.442676, y: 1.442676, z: 1.442676} + - time: 1.933333 + value: {x: 1.489338, y: 1.489338, z: 1.489338} + - time: 2.033333 + value: {x: 1.536635, y: 1.536635, z: 1.536635} + - time: 2.133333 + value: {x: 1.584564, y: 1.584564, z: 1.584564} + - time: 2.233333 + value: {x: 1.633123, y: 1.633123, z: 1.633123} + - time: 2.333333 + value: {x: 1.682309, y: 1.682309, z: 1.682309} + - time: 2.433333 + value: {x: 1.732118, y: 1.732118, z: 1.732118} + - time: 2.533333 + value: {x: 1.782550, y: 1.782550, z: 1.782550} + - time: 2.633333 + value: {x: 1.833600, y: 1.833600, z: 1.833600} + - time: 2.733333 + value: {x: 1.885267, y: 1.885267, z: 1.885267} + - time: 2.833333 + value: {x: 1.937548, y: 1.937548, z: 1.937548} + - time: 2.933333 + value: {x: 1.990441, y: 1.990441, z: 1.990441} + - time: 3.033333 + value: {x: 2.043942, y: 2.043942, z: 2.043942} + - time: 3.133333 + value: {x: 2.098052, y: 2.098052, z: 2.098052} + - time: 3.233333 + value: {x: 2.152765, y: 2.152765, z: 2.152765} + - time: 3.333333 + value: {x: 2.208082, y: 2.208082, z: 2.208082} + - time: 3.433333 + value: {x: 2.263999, y: 2.263999, z: 2.263999} + - time: 3.533333 + value: {x: 2.320514, y: 2.320514, z: 2.320514} + - time: 3.633333 + value: {x: 2.377625, y: 2.377625, z: 2.377625} + - time: 3.733333 + value: {x: 2.435330, y: 2.435330, z: 2.435330} + - time: 3.833333 + value: {x: 2.493627, y: 2.493627, z: 2.493627} + - time: 3.933333 + value: {x: 2.552515, y: 2.552515, z: 2.552515} + - time: 4.033333 + value: {x: 2.611990, y: 2.611990, z: 2.611990} + - time: 4.133333 + value: {x: 2.672051, y: 2.672051, z: 2.672051} + - time: 4.233333 + value: {x: 2.732697, y: 2.732697, z: 2.732697} + - time: 4.333333 + value: {x: 2.793925, y: 2.793925, z: 2.793925} + - time: 4.433333 + value: {x: 2.855734, y: 2.855734, z: 2.855734} + - time: 4.533333 + value: {x: 2.918122, y: 2.918122, z: 2.918122} + - time: 4.633333 + value: {x: 2.981086, y: 2.981086, z: 2.981086} + - time: 4.733333 + value: {x: 3.044625, y: 3.044625, z: 3.044625} + - time: 4.833333 + value: {x: 3.108738, y: 3.108738, z: 3.108738} + - time: 4.933333 + value: {x: 3.173423, y: 3.173423, z: 3.173423} + - time: 5.033333 + value: {x: 3.238677, y: 3.238677, z: 3.238677} + - time: 5.133333 + value: {x: 3.304500, y: 3.304500, z: 3.304500} + - time: 5.233333 + value: {x: 3.370890, y: 3.370890, z: 3.370890} + - time: 5.333333 + value: {x: 3.437845, y: 3.437845, z: 3.437845} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_21: + position: + - time: 0.000000 + value: {x: 0.018549, y: 0.495634, z: -0.014988} + - time: 0.033333 + value: {x: 0.018570, y: 0.495677, z: -0.015004} + - time: 0.066667 + value: {x: 0.028542, y: 0.341592, z: -0.022843} + - time: 0.100000 + value: {x: 0.035972, y: 0.238413, z: -0.027846} + - time: 0.133333 + value: {x: 0.041639, y: 0.178742, z: -0.030892} + - time: 0.166667 + value: {x: 0.045958, y: 0.151659, z: -0.032430} + - time: 0.200000 + value: {x: 0.049100, y: 0.144284, z: -0.032632} + - time: 0.233333 + value: {x: 0.050937, y: 0.145993, z: -0.031233} + - time: 0.266667 + value: {x: 0.050506, y: 0.152665, z: -0.026730} + - time: 0.300000 + value: {x: 0.046822, y: 0.161368, z: -0.017651} + - time: 0.333333 + value: {x: 0.039121, y: 0.170770, z: -0.002871} + - time: 0.366667 + value: {x: 0.026740, y: 0.180787, z: 0.018744} + - time: 0.400000 + value: {x: 0.009740, y: 0.191282, z: 0.047015} + - time: 0.433333 + value: {x: -0.008768, y: 0.202319, z: 0.077336} + - time: 0.466667 + value: {x: -0.025282, y: 0.214138, z: 0.104645} + - time: 0.500000 + value: {x: -0.037955, y: 0.226905, z: 0.126066} + - time: 0.533333 + value: {x: -0.047807, y: 0.241005, z: 0.143239} + - time: 0.566667 + value: {x: -0.055709, y: 0.256890, z: 0.157468} + - time: 0.600000 + value: {x: -0.061695, y: 0.274428, z: 0.168728} + - time: 0.633333 + value: {x: -0.064829, y: 0.293546, z: 0.175609} + - time: 0.666667 + value: {x: -0.064655, y: 0.313778, z: 0.177573} + - time: 0.700000 + value: {x: -0.061211, y: 0.332919, z: 0.174602} + - time: 0.733333 + value: {x: -0.055271, y: 0.348400, z: 0.167923} + - time: 0.766667 + value: {x: -0.047470, y: 0.357839, z: 0.158304} + - time: 0.800000 + value: {x: -0.039537, y: 0.361365, z: 0.148559} + - time: 0.833333 + value: {x: -0.033177, y: 0.359337, z: 0.140952} + - time: 0.866667 + value: {x: -0.029845, y: 0.352553, z: 0.137910} + - time: 0.900000 + value: {x: -0.029681, y: 0.343143, z: 0.139470} + - time: 0.933333 + value: {x: -0.032392, y: 0.333628, z: 0.145237} + - time: 0.966667 + value: {x: -0.038072, y: 0.325975, z: 0.155328} + - time: 1.000000 + value: {x: -0.048641, y: 0.320932, z: 0.172669} + - time: 1.033333 + value: {x: -0.066689, y: 0.318484, z: 0.200973} + - time: 1.066667 + value: {x: -0.094404, y: 0.318748, z: 0.243651} + - time: 1.100000 + value: {x: -0.131152, y: 0.321350, z: 0.299650} + - time: 1.133333 + value: {x: -0.173474, y: 0.325715, z: 0.363907} + - time: 1.166667 + value: {x: -0.218071, y: 0.331273, z: 0.431543} + - time: 1.200000 + value: {x: -0.262159, y: 0.337528, z: 0.498348} + - time: 1.233333 + value: {x: -0.303765, y: 0.344431, z: 0.561356} + - time: 1.266667 + value: {x: -0.341315, y: 0.352331, z: 0.618454} + - time: 1.300000 + value: {x: -0.373475, y: 0.361186, z: 0.667402} + - time: 1.333333 + value: {x: -0.399920, y: 0.371061, z: 0.707918} + - time: 1.366667 + value: {x: -0.420394, y: 0.381901, z: 0.739573} + - time: 1.400000 + value: {x: -0.436610, y: 0.393234, z: 0.764934} + - time: 1.433333 + value: {x: -0.448784, y: 0.404877, z: 0.784209} + - time: 1.466667 + value: {x: -0.458192, y: 0.416510, z: 0.799363} + - time: 1.500000 + value: {x: -0.465347, y: 0.427927, z: 0.811077} + - time: 1.533333 + value: {x: -0.470650, y: 0.439254, z: 0.820170} + - time: 1.566667 + value: {x: -0.474483, y: 0.450283, z: 0.826897} + - time: 1.600000 + value: {x: -0.477210, y: 0.461198, z: 0.832090} + - time: 1.633333 + value: {x: -0.479023, y: 0.471890, z: 0.835850} + - time: 1.666667 + value: {x: -0.480106, y: 0.482408, z: 0.838520} + - time: 1.700000 + value: {x: -0.480599, y: 0.492759, z: 0.840315} + - time: 1.733333 + value: {x: -0.480555, y: 0.502944, z: 0.841277} + - time: 1.766667 + value: {x: -0.479985, y: 0.512971, z: 0.841452} + - time: 1.800000 + value: {x: -0.478932, y: 0.522819, z: 0.840892} + - time: 1.833333 + value: {x: -0.477421, y: 0.532466, z: 0.839608} + - time: 1.866667 + value: {x: -0.475511, y: 0.542010, z: 0.837845} + - time: 1.900000 + value: {x: -0.472961, y: 0.551272, z: 0.834902} + - time: 1.933333 + value: {x: -0.469987, y: 0.560471, z: 0.831491} + - time: 1.966667 + value: {x: -0.466679, y: 0.569458, z: 0.827538} + - time: 2.000000 + value: {x: -0.462828, y: 0.578260, z: 0.822710} + - time: 2.033333 + value: {x: -0.458557, y: 0.586880, z: 0.817249} + - time: 2.066667 + value: {x: -0.454107, y: 0.595297, z: 0.811515} + - time: 2.133333 + value: {x: -0.444078, y: 0.611211, z: 0.798324} + - time: 2.166667 + value: {x: -0.438801, y: 0.618648, z: 0.791329} + - time: 2.233333 + value: {x: -0.427977, y: 0.632311, z: 0.776902} + - time: 2.266667 + value: {x: -0.422442, y: 0.638350, z: 0.769380} + - time: 2.300000 + value: {x: -0.416939, y: 0.644107, z: 0.761990} + - time: 2.333333 + value: {x: -0.411429, y: 0.649321, z: 0.754670} + - time: 2.366667 + value: {x: -0.405951, y: 0.654065, z: 0.747211} + - time: 2.400000 + value: {x: -0.400544, y: 0.658343, z: 0.739995} + - time: 2.433333 + value: {x: -0.395180, y: 0.662069, z: 0.732692} + - time: 2.466667 + value: {x: -0.389927, y: 0.665459, z: 0.725587} + - time: 2.500000 + value: {x: -0.384751, y: 0.668199, z: 0.718613} + - time: 2.533333 + value: {x: -0.379705, y: 0.670938, z: 0.711893} + - time: 2.600000 + value: {x: -0.369890, y: 0.674628, z: 0.698712} + - time: 2.633333 + value: {x: -0.365150, y: 0.676087, z: 0.692334} + - time: 2.666667 + value: {x: -0.360511, y: 0.677097, z: 0.686002} + - time: 2.700000 + value: {x: -0.355990, y: 0.678164, z: 0.679936} + - time: 2.766667 + value: {x: -0.347318, y: 0.679225, z: 0.668302} + - time: 2.800000 + value: {x: -0.343143, y: 0.679769, z: 0.662818} + - time: 2.833333 + value: {x: -0.339101, y: 0.679742, z: 0.657332} + - time: 2.900000 + value: {x: -0.331310, y: 0.679766, z: 0.646918} + - time: 2.933333 + value: {x: -0.327622, y: 0.679450, z: 0.641996} + - time: 3.000000 + value: {x: -0.320523, y: 0.678858, z: 0.632656} + - time: 3.033333 + value: {x: -0.317137, y: 0.678341, z: 0.628102} + - time: 3.066667 + value: {x: -0.313883, y: 0.677759, z: 0.623802} + - time: 3.133333 + value: {x: -0.307601, y: 0.676753, z: 0.615636} + - time: 3.233333 + value: {x: -0.298953, y: 0.674568, z: 0.604221} + - time: 3.266667 + value: {x: -0.296214, y: 0.673965, z: 0.600729} + - time: 3.333333 + value: {x: -0.290900, y: 0.672319, z: 0.593699} + - time: 3.466667 + value: {x: -0.280855, y: 0.669292, z: 0.580598} + - time: 3.633333 + value: {x: -0.269051, y: 0.665660, z: 0.565185} + - time: 3.733333 + value: {x: -0.262349, y: 0.663678, z: 0.556404} + - time: 3.766667 + value: {x: -0.260212, y: 0.663153, z: 0.553732} + - time: 3.800000 + value: {x: -0.257930, y: 0.662465, z: 0.550620} + - time: 3.900000 + value: {x: -0.251482, y: 0.660800, z: 0.542145} + - time: 3.966667 + value: {x: -0.247489, y: 0.659906, z: 0.536997} + - time: 4.066667 + value: {x: -0.241391, y: 0.658581, z: 0.528848} + - time: 4.133333 + value: {x: -0.237554, y: 0.657889, z: 0.523790} + - time: 4.233333 + value: {x: -0.232270, y: 0.657119, z: 0.516896} + - time: 4.300000 + value: {x: -0.228987, y: 0.656807, z: 0.512694} + - time: 4.333333 + value: {x: -0.227265, y: 0.656587, z: 0.510308} + - time: 4.433333 + value: {x: -0.222559, y: 0.656337, z: 0.504122} + - time: 4.566667 + value: {x: -0.217253, y: 0.656508, z: 0.497302} + - time: 4.666667 + value: {x: -0.213991, y: 0.656979, z: 0.493176} + - time: 4.766666 + value: {x: -0.211349, y: 0.657778, z: 0.489947} + - time: 4.800000 + value: {x: -0.210607, y: 0.658123, z: 0.489082} + - time: 4.900000 + value: {x: -0.208801, y: 0.659366, z: 0.487048} + - time: 4.966667 + value: {x: -0.207963, y: 0.660456, z: 0.486323} + - time: 5.333333 + value: {x: -0.205172, y: 0.666196, z: 0.484087} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.703652, y: 0.703652, z: 0.703652} + - time: 0.133333 + value: {x: 0.749703, y: 0.749703, z: 0.749703} + - time: 0.233333 + value: {x: 0.785059, y: 0.785059, z: 0.785059} + - time: 0.333333 + value: {x: 0.821112, y: 0.821112, z: 0.821112} + - time: 0.433333 + value: {x: 0.857855, y: 0.857855, z: 0.857855} + - time: 0.533333 + value: {x: 0.895287, y: 0.895287, z: 0.895287} + - time: 0.633333 + value: {x: 0.933401, y: 0.933401, z: 0.933401} + - time: 0.733333 + value: {x: 0.972193, y: 0.972193, z: 0.972193} + - time: 0.833333 + value: {x: 1.011662, y: 1.011662, z: 1.011662} + - time: 0.933333 + value: {x: 1.051801, y: 1.051801, z: 1.051801} + - time: 1.033333 + value: {x: 1.092608, y: 1.092608, z: 1.092608} + - time: 1.133333 + value: {x: 1.134078, y: 1.134078, z: 1.134078} + - time: 1.233333 + value: {x: 1.176209, y: 1.176209, z: 1.176209} + - time: 1.333333 + value: {x: 1.218997, y: 1.218997, z: 1.218997} + - time: 1.433333 + value: {x: 1.262439, y: 1.262439, z: 1.262439} + - time: 1.533333 + value: {x: 1.306530, y: 1.306530, z: 1.306530} + - time: 1.633333 + value: {x: 1.351269, y: 1.351269, z: 1.351269} + - time: 1.733333 + value: {x: 1.396652, y: 1.396652, z: 1.396652} + - time: 1.833333 + value: {x: 1.442676, y: 1.442676, z: 1.442676} + - time: 1.933333 + value: {x: 1.489338, y: 1.489338, z: 1.489338} + - time: 2.033333 + value: {x: 1.536635, y: 1.536635, z: 1.536635} + - time: 2.133333 + value: {x: 1.584564, y: 1.584564, z: 1.584564} + - time: 2.233333 + value: {x: 1.633123, y: 1.633123, z: 1.633123} + - time: 2.333333 + value: {x: 1.682309, y: 1.682309, z: 1.682309} + - time: 2.433333 + value: {x: 1.732118, y: 1.732118, z: 1.732118} + - time: 2.533333 + value: {x: 1.782550, y: 1.782550, z: 1.782550} + - time: 2.633333 + value: {x: 1.833600, y: 1.833600, z: 1.833600} + - time: 2.733333 + value: {x: 1.885267, y: 1.885267, z: 1.885267} + - time: 2.833333 + value: {x: 1.937548, y: 1.937548, z: 1.937548} + - time: 2.933333 + value: {x: 1.990441, y: 1.990441, z: 1.990441} + - time: 3.033333 + value: {x: 2.043942, y: 2.043942, z: 2.043942} + - time: 3.133333 + value: {x: 2.098052, y: 2.098052, z: 2.098052} + - time: 3.233333 + value: {x: 2.152765, y: 2.152765, z: 2.152765} + - time: 3.333333 + value: {x: 2.208082, y: 2.208082, z: 2.208082} + - time: 3.433333 + value: {x: 2.263999, y: 2.263999, z: 2.263999} + - time: 3.533333 + value: {x: 2.320514, y: 2.320514, z: 2.320514} + - time: 3.633333 + value: {x: 2.377625, y: 2.377625, z: 2.377625} + - time: 3.733333 + value: {x: 2.435330, y: 2.435330, z: 2.435330} + - time: 3.833333 + value: {x: 2.493627, y: 2.493627, z: 2.493627} + - time: 3.933333 + value: {x: 2.552515, y: 2.552515, z: 2.552515} + - time: 4.033333 + value: {x: 2.611990, y: 2.611990, z: 2.611990} + - time: 4.133333 + value: {x: 2.672051, y: 2.672051, z: 2.672051} + - time: 4.233333 + value: {x: 2.732697, y: 2.732697, z: 2.732697} + - time: 4.333333 + value: {x: 2.793925, y: 2.793925, z: 2.793925} + - time: 4.433333 + value: {x: 2.855734, y: 2.855734, z: 2.855734} + - time: 4.533333 + value: {x: 2.918122, y: 2.918122, z: 2.918122} + - time: 4.633333 + value: {x: 2.981086, y: 2.981086, z: 2.981086} + - time: 4.733333 + value: {x: 3.044625, y: 3.044625, z: 3.044625} + - time: 4.833333 + value: {x: 3.108738, y: 3.108738, z: 3.108738} + - time: 4.933333 + value: {x: 3.173423, y: 3.173423, z: 3.173423} + - time: 5.033333 + value: {x: 3.238677, y: 3.238677, z: 3.238677} + - time: 5.133333 + value: {x: 3.304500, y: 3.304500, z: 3.304500} + - time: 5.233333 + value: {x: 3.370890, y: 3.370890, z: 3.370890} + - time: 5.333333 + value: {x: 3.437845, y: 3.437845, z: 3.437845} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_22: + position: + - time: 0.000000 + value: {x: -0.029313, y: 0.457337, z: -0.005407} + - time: 0.033333 + value: {x: -0.029588, y: 0.457333, z: -0.005450} + - time: 0.066667 + value: {x: -0.046409, y: 0.281984, z: -0.007962} + - time: 0.100000 + value: {x: -0.061464, y: 0.160366, z: -0.007980} + - time: 0.133333 + value: {x: -0.075257, y: 0.084271, z: -0.006357} + - time: 0.166667 + value: {x: -0.088101, y: 0.042294, z: -0.003490} + - time: 0.200000 + value: {x: -0.100222, y: 0.021263, z: 0.000571} + - time: 0.233333 + value: {x: -0.111808, y: 0.010332, z: 0.006215} + - time: 0.266667 + value: {x: -0.123112, y: 0.005187, z: 0.015241} + - time: 0.300000 + value: {x: -0.134372, y: 0.002810, z: 0.029541} + - time: 0.333333 + value: {x: -0.145776, y: 0.001816, z: 0.050588} + - time: 0.366667 + value: {x: -0.157449, y: 0.001903, z: 0.079475} + - time: 0.400000 + value: {x: -0.169450, y: 0.002992, z: 0.116267} + - time: 0.433333 + value: {x: -0.181381, y: 0.005108, z: 0.155465} + - time: 0.466667 + value: {x: -0.192761, y: 0.008317, z: 0.190723} + - time: 0.500000 + value: {x: -0.203386, y: 0.012920, z: 0.218955} + - time: 0.533333 + value: {x: -0.213397, y: 0.019137, z: 0.241861} + - time: 0.566667 + value: {x: -0.222937, y: 0.027389, z: 0.261013} + - time: 0.600000 + value: {x: -0.232041, y: 0.037612, z: 0.276581} + - time: 0.633333 + value: {x: -0.240600, y: 0.049745, z: 0.286946} + - time: 0.666667 + value: {x: -0.248535, y: 0.063161, z: 0.291163} + - time: 0.700000 + value: {x: -0.255877, y: 0.075720, z: 0.289393} + - time: 0.733333 + value: {x: -0.262732, y: 0.084758, z: 0.282944} + - time: 0.766667 + value: {x: -0.269232, y: 0.088084, z: 0.273171} + - time: 0.800000 + value: {x: -0.275576, y: 0.085530, z: 0.262864} + - time: 0.833333 + value: {x: -0.282067, y: 0.077751, z: 0.255396} + - time: 0.866667 + value: {x: -0.288860, y: 0.065234, z: 0.253049} + - time: 0.900000 + value: {x: -0.296015, y: 0.050294, z: 0.256285} + - time: 0.933333 + value: {x: -0.303489, y: 0.035404, z: 0.264541} + - time: 0.966667 + value: {x: -0.311305, y: 0.022552, z: 0.278023} + - time: 1.000000 + value: {x: -0.319720, y: 0.012391, z: 0.300068} + - time: 1.033333 + value: {x: -0.329129, y: 0.005048, z: 0.335452} + - time: 1.066667 + value: {x: -0.339806, y: 0.000443, z: 0.387879} + - time: 1.100000 + value: {x: -0.351692, y: -0.001670, z: 0.456360} + - time: 1.133333 + value: {x: -0.364289, y: -0.001945, z: 0.534661} + - time: 1.166667 + value: {x: -0.377134, y: -0.000973, z: 0.616876} + - time: 1.200000 + value: {x: -0.389860, y: 0.000851, z: 0.698165} + - time: 1.233333 + value: {x: -0.402199, y: 0.003522, z: 0.775066} + - time: 1.266667 + value: {x: -0.413885, y: 0.007121, z: 0.844486} + - time: 1.300000 + value: {x: -0.424791, y: 0.011925, z: 0.904404} + - time: 1.333333 + value: {x: -0.434830, y: 0.017750, z: 0.953973} + - time: 1.366667 + value: {x: -0.443978, y: 0.024604, z: 0.992812} + - time: 1.400000 + value: {x: -0.452470, y: 0.031973, z: 1.023932} + - time: 1.433333 + value: {x: -0.460365, y: 0.039812, z: 1.047874} + - time: 1.466667 + value: {x: -0.467826, y: 0.047715, z: 1.066827} + - time: 1.500000 + value: {x: -0.474946, y: 0.055566, z: 1.081808} + - time: 1.533333 + value: {x: -0.481730, y: 0.063217, z: 1.093233} + - time: 1.566667 + value: {x: -0.488304, y: 0.070838, z: 1.102207} + - time: 1.600000 + value: {x: -0.494655, y: 0.078259, z: 1.108990} + - time: 1.633333 + value: {x: -0.500851, y: 0.085587, z: 1.114165} + - time: 1.666667 + value: {x: -0.506903, y: 0.092788, z: 1.117972} + - time: 1.700000 + value: {x: -0.512832, y: 0.099863, z: 1.120663} + - time: 1.733333 + value: {x: -0.518652, y: 0.106849, z: 1.122368} + - time: 1.766667 + value: {x: -0.524361, y: 0.113723, z: 1.123080} + - time: 1.800000 + value: {x: -0.529968, y: 0.120474, z: 1.122886} + - time: 1.833333 + value: {x: -0.535482, y: 0.127110, z: 1.121871} + - time: 1.866667 + value: {x: -0.540875, y: 0.133536, z: 1.119923} + - time: 1.900000 + value: {x: -0.546198, y: 0.139998, z: 1.117095} + - time: 1.933333 + value: {x: -0.551386, y: 0.146226, z: 1.113222} + - time: 1.966667 + value: {x: -0.556503, y: 0.152333, z: 1.108767} + - time: 2.000000 + value: {x: -0.561526, y: 0.158370, z: 1.103380} + - time: 2.033333 + value: {x: -0.566457, y: 0.164261, z: 1.097196} + - time: 2.066667 + value: {x: -0.571332, y: 0.169990, z: 1.090654} + - time: 2.100000 + value: {x: -0.576123, y: 0.175509, z: 1.083232} + - time: 2.133333 + value: {x: -0.580835, y: 0.180667, z: 1.075464} + - time: 2.166667 + value: {x: -0.585503, y: 0.185535, z: 1.067334} + - time: 2.200000 + value: {x: -0.590155, y: 0.190095, z: 1.059130} + - time: 2.233333 + value: {x: -0.594715, y: 0.194184, z: 1.050502} + - time: 2.266667 + value: {x: -0.599289, y: 0.197911, z: 1.041972} + - time: 2.300000 + value: {x: -0.603814, y: 0.201273, z: 1.033333} + - time: 2.333333 + value: {x: -0.608288, y: 0.204009, z: 1.024511} + - time: 2.366667 + value: {x: -0.612783, y: 0.206538, z: 1.015979} + - time: 2.400000 + value: {x: -0.617222, y: 0.208441, z: 1.007314} + - time: 2.433333 + value: {x: -0.621678, y: 0.210014, z: 0.998921} + - time: 2.466667 + value: {x: -0.626111, y: 0.211223, z: 0.990621} + - time: 2.533333 + value: {x: -0.634903, y: 0.212279, z: 0.974259} + - time: 2.600000 + value: {x: -0.643664, y: 0.211743, z: 0.958600} + - time: 2.633333 + value: {x: -0.648035, y: 0.211166, z: 0.951067} + - time: 2.700000 + value: {x: -0.656769, y: 0.209373, z: 0.936624} + - time: 2.800000 + value: {x: -0.669749, y: 0.205098, z: 0.916030} + - time: 2.866667 + value: {x: -0.678382, y: 0.201451, z: 0.903359} + - time: 2.900000 + value: {x: -0.682707, y: 0.199744, z: 0.897366} + - time: 3.000000 + value: {x: -0.695550, y: 0.193507, z: 0.880116} + - time: 3.066667 + value: {x: -0.704107, y: 0.189154, z: 0.869704} + - time: 3.133333 + value: {x: -0.712566, y: 0.184736, z: 0.859545} + - time: 3.166667 + value: {x: -0.716801, y: 0.182398, z: 0.854861} + - time: 3.266667 + value: {x: -0.729437, y: 0.175723, z: 0.841478} + - time: 3.333333 + value: {x: -0.737817, y: 0.171236, z: 0.833180} + - time: 3.466667 + value: {x: -0.754336, y: 0.162541, z: 0.817121} + - time: 3.600000 + value: {x: -0.770581, y: 0.154304, z: 0.801867} + - time: 3.700000 + value: {x: -0.782543, y: 0.148392, z: 0.790553} + - time: 3.733333 + value: {x: -0.786541, y: 0.146626, z: 0.787156} + - time: 3.866667 + value: {x: -0.802157, y: 0.139483, z: 0.772521} + - time: 3.966667 + value: {x: -0.813738, y: 0.134687, z: 0.762411} + - time: 4.000000 + value: {x: -0.817594, y: 0.133262, z: 0.759254} + - time: 4.033333 + value: {x: -0.821344, y: 0.131672, z: 0.755559} + - time: 4.066667 + value: {x: -0.825161, y: 0.130342, z: 0.752377} + - time: 4.100000 + value: {x: -0.828889, y: 0.128857, z: 0.748893} + - time: 4.200000 + value: {x: -0.840118, y: 0.125005, z: 0.739655} + - time: 4.300000 + value: {x: -0.851235, y: 0.121601, z: 0.731202} + - time: 4.400000 + value: {x: -0.862177, y: 0.118588, z: 0.722786} + - time: 4.533333 + value: {x: -0.876616, y: 0.115233, z: 0.713129} + - time: 4.566667 + value: {x: -0.880244, y: 0.114629, z: 0.711226} + - time: 4.600000 + value: {x: -0.883778, y: 0.113851, z: 0.708995} + - time: 4.700000 + value: {x: -0.894446, y: 0.112141, z: 0.703647} + - time: 4.733333 + value: {x: -0.897987, y: 0.111677, z: 0.702113} + - time: 4.833333 + value: {x: -0.908545, y: 0.110557, z: 0.698152} + - time: 4.866667 + value: {x: -0.912040, y: 0.110266, z: 0.697035} + - time: 4.966667 + value: {x: -0.922488, y: 0.109738, z: 0.694471} + - time: 5.333333 + value: {x: -0.959449, y: 0.109218, z: 0.688538} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.703652, y: 0.703652, z: 0.703652} + - time: 0.133333 + value: {x: 0.749703, y: 0.749703, z: 0.749703} + - time: 0.233333 + value: {x: 0.785059, y: 0.785059, z: 0.785059} + - time: 0.333333 + value: {x: 0.821112, y: 0.821112, z: 0.821112} + - time: 0.433333 + value: {x: 0.857855, y: 0.857855, z: 0.857855} + - time: 0.533333 + value: {x: 0.895287, y: 0.895287, z: 0.895287} + - time: 0.633333 + value: {x: 0.933401, y: 0.933401, z: 0.933401} + - time: 0.733333 + value: {x: 0.972193, y: 0.972193, z: 0.972193} + - time: 0.833333 + value: {x: 1.011662, y: 1.011662, z: 1.011662} + - time: 0.933333 + value: {x: 1.051801, y: 1.051801, z: 1.051801} + - time: 1.033333 + value: {x: 1.092608, y: 1.092608, z: 1.092608} + - time: 1.133333 + value: {x: 1.134078, y: 1.134078, z: 1.134078} + - time: 1.233333 + value: {x: 1.176209, y: 1.176209, z: 1.176209} + - time: 1.333333 + value: {x: 1.218997, y: 1.218997, z: 1.218997} + - time: 1.433333 + value: {x: 1.262439, y: 1.262439, z: 1.262439} + - time: 1.533333 + value: {x: 1.306530, y: 1.306530, z: 1.306530} + - time: 1.633333 + value: {x: 1.351269, y: 1.351269, z: 1.351269} + - time: 1.733333 + value: {x: 1.396652, y: 1.396652, z: 1.396652} + - time: 1.833333 + value: {x: 1.442676, y: 1.442676, z: 1.442676} + - time: 1.933333 + value: {x: 1.489338, y: 1.489338, z: 1.489338} + - time: 2.033333 + value: {x: 1.536635, y: 1.536635, z: 1.536635} + - time: 2.133333 + value: {x: 1.584564, y: 1.584564, z: 1.584564} + - time: 2.233333 + value: {x: 1.633123, y: 1.633123, z: 1.633123} + - time: 2.333333 + value: {x: 1.682309, y: 1.682309, z: 1.682309} + - time: 2.433333 + value: {x: 1.732118, y: 1.732118, z: 1.732118} + - time: 2.533333 + value: {x: 1.782550, y: 1.782550, z: 1.782550} + - time: 2.633333 + value: {x: 1.833600, y: 1.833600, z: 1.833600} + - time: 2.733333 + value: {x: 1.885267, y: 1.885267, z: 1.885267} + - time: 2.833333 + value: {x: 1.937548, y: 1.937548, z: 1.937548} + - time: 2.933333 + value: {x: 1.990441, y: 1.990441, z: 1.990441} + - time: 3.033333 + value: {x: 2.043942, y: 2.043942, z: 2.043942} + - time: 3.133333 + value: {x: 2.098052, y: 2.098052, z: 2.098052} + - time: 3.233333 + value: {x: 2.152765, y: 2.152765, z: 2.152765} + - time: 3.333333 + value: {x: 2.208082, y: 2.208082, z: 2.208082} + - time: 3.433333 + value: {x: 2.263999, y: 2.263999, z: 2.263999} + - time: 3.533333 + value: {x: 2.320514, y: 2.320514, z: 2.320514} + - time: 3.633333 + value: {x: 2.377625, y: 2.377625, z: 2.377625} + - time: 3.733333 + value: {x: 2.435330, y: 2.435330, z: 2.435330} + - time: 3.833333 + value: {x: 2.493627, y: 2.493627, z: 2.493627} + - time: 3.933333 + value: {x: 2.552515, y: 2.552515, z: 2.552515} + - time: 4.033333 + value: {x: 2.611990, y: 2.611990, z: 2.611990} + - time: 4.133333 + value: {x: 2.672051, y: 2.672051, z: 2.672051} + - time: 4.233333 + value: {x: 2.732697, y: 2.732697, z: 2.732697} + - time: 4.333333 + value: {x: 2.793925, y: 2.793925, z: 2.793925} + - time: 4.433333 + value: {x: 2.855734, y: 2.855734, z: 2.855734} + - time: 4.533333 + value: {x: 2.918122, y: 2.918122, z: 2.918122} + - time: 4.633333 + value: {x: 2.981086, y: 2.981086, z: 2.981086} + - time: 4.733333 + value: {x: 3.044625, y: 3.044625, z: 3.044625} + - time: 4.833333 + value: {x: 3.108738, y: 3.108738, z: 3.108738} + - time: 4.933333 + value: {x: 3.173423, y: 3.173423, z: 3.173423} + - time: 5.033333 + value: {x: 3.238677, y: 3.238677, z: 3.238677} + - time: 5.133333 + value: {x: 3.304500, y: 3.304500, z: 3.304500} + - time: 5.233333 + value: {x: 3.370890, y: 3.370890, z: 3.370890} + - time: 5.333333 + value: {x: 3.437845, y: 3.437845, z: 3.437845} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_23: + position: + - time: 0.000000 + value: {x: 0.025162, y: 0.461424, z: 0.015166} + - time: 0.033333 + value: {x: 0.025397, y: 0.461458, z: 0.015314} + - time: 0.066667 + value: {x: 0.039753, y: 0.288449, z: 0.024577} + - time: 0.100000 + value: {x: 0.052269, y: 0.168895, z: 0.034971} + - time: 0.133333 + value: {x: 0.063503, y: 0.094674, z: 0.046046} + - time: 0.166667 + value: {x: 0.073778, y: 0.054434, z: 0.057643} + - time: 0.200000 + value: {x: 0.083274, y: 0.035025, z: 0.069868} + - time: 0.233333 + value: {x: 0.092095, y: 0.025623, z: 0.083218} + - time: 0.266667 + value: {x: 0.100207, y: 0.021941, z: 0.099576} + - time: 0.300000 + value: {x: 0.107516, y: 0.020960, z: 0.120888} + - time: 0.333333 + value: {x: 0.113941, y: 0.021287, z: 0.148671} + - time: 0.366667 + value: {x: 0.119508, y: 0.022680, z: 0.184066} + - time: 0.400000 + value: {x: 0.124188, y: 0.025022, z: 0.227157} + - time: 0.433333 + value: {x: 0.128438, y: 0.028337, z: 0.272469} + - time: 0.466667 + value: {x: 0.132843, y: 0.032745, z: 0.313685} + - time: 0.500000 + value: {x: 0.137585, y: 0.038485, z: 0.347722} + - time: 0.533333 + value: {x: 0.142610, y: 0.045829, z: 0.376307} + - time: 0.566667 + value: {x: 0.147813, y: 0.055205, z: 0.401024} + - time: 0.600000 + value: {x: 0.153147, y: 0.066516, z: 0.422044} + - time: 0.633333 + value: {x: 0.158734, y: 0.079686, z: 0.437754} + - time: 0.666667 + value: {x: 0.164730, y: 0.094149, z: 0.447231} + - time: 0.700000 + value: {x: 0.171088, y: 0.107733, z: 0.450637} + - time: 0.733333 + value: {x: 0.177754, y: 0.117808, z: 0.449290} + - time: 0.766667 + value: {x: 0.184527, y: 0.122101, z: 0.444533} + - time: 0.800000 + value: {x: 0.191334, y: 0.120562, z: 0.439189} + - time: 0.833333 + value: {x: 0.197762, y: 0.113722, z: 0.436604} + - time: 0.866667 + value: {x: 0.203788, y: 0.102191, z: 0.439095} + - time: 0.900000 + value: {x: 0.209282, y: 0.088206, z: 0.447107} + - time: 0.933333 + value: {x: 0.214313, y: 0.074257, z: 0.460085} + - time: 0.966667 + value: {x: 0.218852, y: 0.062319, z: 0.478234} + - time: 1.000000 + value: {x: 0.222686, y: 0.053085, z: 0.504904} + - time: 1.033333 + value: {x: 0.225365, y: 0.046620, z: 0.544857} + - time: 1.066667 + value: {x: 0.226700, y: 0.042923, z: 0.601819} + - time: 1.100000 + value: {x: 0.226701, y: 0.041694, z: 0.674791} + - time: 1.133333 + value: {x: 0.225900, y: 0.042310, z: 0.757544} + - time: 1.166667 + value: {x: 0.224772, y: 0.044186, z: 0.844181} + - time: 1.200000 + value: {x: 0.223645, y: 0.046886, z: 0.929850} + - time: 1.233333 + value: {x: 0.222768, y: 0.050381, z: 1.011084} + - time: 1.266667 + value: {x: 0.222525, y: 0.054867, z: 1.084822} + - time: 1.300000 + value: {x: 0.222907, y: 0.060484, z: 1.149007} + - time: 1.333333 + value: {x: 0.224110, y: 0.067153, z: 1.202822} + - time: 1.366667 + value: {x: 0.226132, y: 0.074853, z: 1.245878} + - time: 1.400000 + value: {x: 0.228758, y: 0.083087, z: 1.281192} + - time: 1.433333 + value: {x: 0.231871, y: 0.091750, z: 1.309292} + - time: 1.466667 + value: {x: 0.235345, y: 0.100473, z: 1.332374} + - time: 1.500000 + value: {x: 0.239049, y: 0.109099, z: 1.351448} + - time: 1.533333 + value: {x: 0.243100, y: 0.117598, z: 1.366960} + - time: 1.566667 + value: {x: 0.247204, y: 0.125976, z: 1.379974} + - time: 1.600000 + value: {x: 0.251535, y: 0.134214, z: 1.390787} + - time: 1.633333 + value: {x: 0.255927, y: 0.142327, z: 1.399962} + - time: 1.666667 + value: {x: 0.260407, y: 0.150315, z: 1.407747} + - time: 1.700000 + value: {x: 0.264958, y: 0.158180, z: 1.414394} + - time: 1.733333 + value: {x: 0.269550, y: 0.165945, z: 1.420032} + - time: 1.766667 + value: {x: 0.274199, y: 0.173600, z: 1.424655} + - time: 1.800000 + value: {x: 0.278895, y: 0.181125, z: 1.428352} + - time: 1.833333 + value: {x: 0.283610, y: 0.188518, z: 1.431202} + - time: 1.866667 + value: {x: 0.288465, y: 0.195768, z: 1.433115} + - time: 1.900000 + value: {x: 0.293215, y: 0.202931, z: 1.434100} + - time: 1.933333 + value: {x: 0.298146, y: 0.209954, z: 1.434044} + - time: 1.966667 + value: {x: 0.303077, y: 0.216837, z: 1.433379} + - time: 2.000000 + value: {x: 0.308020, y: 0.223613, z: 1.431757} + - time: 2.033333 + value: {x: 0.313008, y: 0.230245, z: 1.429320} + - time: 2.066667 + value: {x: 0.318005, y: 0.236713, z: 1.426505} + - time: 2.100000 + value: {x: 0.322983, y: 0.242918, z: 1.422780} + - time: 2.133333 + value: {x: 0.328092, y: 0.248856, z: 1.418715} + - time: 2.166667 + value: {x: 0.333153, y: 0.254458, z: 1.414259} + - time: 2.200000 + value: {x: 0.338116, y: 0.259682, z: 1.409694} + - time: 2.233333 + value: {x: 0.343256, y: 0.264566, z: 1.404719} + - time: 2.266667 + value: {x: 0.348208, y: 0.268954, z: 1.399793} + - time: 2.300000 + value: {x: 0.353217, y: 0.273031, z: 1.394755} + - time: 2.333333 + value: {x: 0.358290, y: 0.276535, z: 1.389531} + - time: 2.366667 + value: {x: 0.363189, y: 0.279724, z: 1.384552} + - time: 2.400000 + value: {x: 0.368192, y: 0.282374, z: 1.379449} + - time: 2.433333 + value: {x: 0.373046, y: 0.284606, z: 1.374576} + - time: 2.466667 + value: {x: 0.377908, y: 0.286499, z: 1.369790} + - time: 2.533333 + value: {x: 0.387651, y: 0.288989, z: 1.360422} + - time: 2.600000 + value: {x: 0.397225, y: 0.289848, z: 1.351683} + - time: 2.633333 + value: {x: 0.401942, y: 0.289950, z: 1.347582} + - time: 2.700000 + value: {x: 0.411207, y: 0.289454, z: 1.339944} + - time: 2.800000 + value: {x: 0.425056, y: 0.287246, z: 1.329474} + - time: 2.866667 + value: {x: 0.434060, y: 0.284919, z: 1.323463} + - time: 2.900000 + value: {x: 0.438426, y: 0.283803, z: 1.320762} + - time: 3.000000 + value: {x: 0.451654, y: 0.279559, z: 1.313353} + - time: 3.133333 + value: {x: 0.468803, y: 0.273371, z: 1.305681} + - time: 3.166667 + value: {x: 0.473014, y: 0.271676, z: 1.304184} + - time: 3.266667 + value: {x: 0.485441, y: 0.266871, z: 1.300268} + - time: 3.433333 + value: {x: 0.505594, y: 0.258873, z: 1.295337} + - time: 3.533333 + value: {x: 0.517441, y: 0.254329, z: 1.292843} + - time: 3.700000 + value: {x: 0.536949, y: 0.247384, z: 1.288851} + - time: 3.733333 + value: {x: 0.540657, y: 0.246128, z: 1.288373} + - time: 3.866667 + value: {x: 0.555867, y: 0.241368, z: 1.285370} + - time: 4.000000 + value: {x: 0.570503, y: 0.237328, z: 1.283470} + - time: 4.033333 + value: {x: 0.574298, y: 0.236398, z: 1.282611} + - time: 4.066667 + value: {x: 0.577795, y: 0.235528, z: 1.282204} + - time: 4.100000 + value: {x: 0.581537, y: 0.234692, z: 1.281528} + - time: 4.200000 + value: {x: 0.592208, y: 0.232482, z: 1.280560} + - time: 4.266666 + value: {x: 0.599072, y: 0.231246, z: 1.280516} + - time: 4.400000 + value: {x: 0.612966, y: 0.229263, z: 1.279863} + - time: 4.433333 + value: {x: 0.616200, y: 0.228888, z: 1.280135} + - time: 4.533333 + value: {x: 0.626383, y: 0.228006, z: 1.280724} + - time: 4.566667 + value: {x: 0.629523, y: 0.227814, z: 1.281391} + - time: 4.600000 + value: {x: 0.632933, y: 0.227651, z: 1.281769} + - time: 4.700000 + value: {x: 0.642575, y: 0.227462, z: 1.284091} + - time: 4.733333 + value: {x: 0.645727, y: 0.227492, z: 1.285087} + - time: 4.866667 + value: {x: 0.658157, y: 0.228075, z: 1.290009} + - time: 4.966667 + value: {x: 0.667222, y: 0.229013, z: 1.294814} + - time: 5.333333 + value: {x: 0.698821, y: 0.233635, z: 1.314771} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.703652, y: 0.703652, z: 0.703652} + - time: 0.133333 + value: {x: 0.749703, y: 0.749703, z: 0.749703} + - time: 0.233333 + value: {x: 0.785059, y: 0.785059, z: 0.785059} + - time: 0.333333 + value: {x: 0.821112, y: 0.821112, z: 0.821112} + - time: 0.433333 + value: {x: 0.857855, y: 0.857855, z: 0.857855} + - time: 0.533333 + value: {x: 0.895287, y: 0.895287, z: 0.895287} + - time: 0.633333 + value: {x: 0.933401, y: 0.933401, z: 0.933401} + - time: 0.733333 + value: {x: 0.972193, y: 0.972193, z: 0.972193} + - time: 0.833333 + value: {x: 1.011662, y: 1.011662, z: 1.011662} + - time: 0.933333 + value: {x: 1.051801, y: 1.051801, z: 1.051801} + - time: 1.033333 + value: {x: 1.092608, y: 1.092608, z: 1.092608} + - time: 1.133333 + value: {x: 1.134078, y: 1.134078, z: 1.134078} + - time: 1.233333 + value: {x: 1.176209, y: 1.176209, z: 1.176209} + - time: 1.333333 + value: {x: 1.218997, y: 1.218997, z: 1.218997} + - time: 1.433333 + value: {x: 1.262439, y: 1.262439, z: 1.262439} + - time: 1.533333 + value: {x: 1.306530, y: 1.306530, z: 1.306530} + - time: 1.633333 + value: {x: 1.351269, y: 1.351269, z: 1.351269} + - time: 1.733333 + value: {x: 1.396652, y: 1.396652, z: 1.396652} + - time: 1.833333 + value: {x: 1.442676, y: 1.442676, z: 1.442676} + - time: 1.933333 + value: {x: 1.489338, y: 1.489338, z: 1.489338} + - time: 2.033333 + value: {x: 1.536635, y: 1.536635, z: 1.536635} + - time: 2.133333 + value: {x: 1.584564, y: 1.584564, z: 1.584564} + - time: 2.233333 + value: {x: 1.633123, y: 1.633123, z: 1.633123} + - time: 2.333333 + value: {x: 1.682309, y: 1.682309, z: 1.682309} + - time: 2.433333 + value: {x: 1.732118, y: 1.732118, z: 1.732118} + - time: 2.533333 + value: {x: 1.782550, y: 1.782550, z: 1.782550} + - time: 2.633333 + value: {x: 1.833600, y: 1.833600, z: 1.833600} + - time: 2.733333 + value: {x: 1.885267, y: 1.885267, z: 1.885267} + - time: 2.833333 + value: {x: 1.937548, y: 1.937548, z: 1.937548} + - time: 2.933333 + value: {x: 1.990441, y: 1.990441, z: 1.990441} + - time: 3.033333 + value: {x: 2.043942, y: 2.043942, z: 2.043942} + - time: 3.133333 + value: {x: 2.098052, y: 2.098052, z: 2.098052} + - time: 3.233333 + value: {x: 2.152765, y: 2.152765, z: 2.152765} + - time: 3.333333 + value: {x: 2.208082, y: 2.208082, z: 2.208082} + - time: 3.433333 + value: {x: 2.263999, y: 2.263999, z: 2.263999} + - time: 3.533333 + value: {x: 2.320514, y: 2.320514, z: 2.320514} + - time: 3.633333 + value: {x: 2.377625, y: 2.377625, z: 2.377625} + - time: 3.733333 + value: {x: 2.435330, y: 2.435330, z: 2.435330} + - time: 3.833333 + value: {x: 2.493627, y: 2.493627, z: 2.493627} + - time: 3.933333 + value: {x: 2.552515, y: 2.552515, z: 2.552515} + - time: 4.033333 + value: {x: 2.611990, y: 2.611990, z: 2.611990} + - time: 4.133333 + value: {x: 2.672051, y: 2.672051, z: 2.672051} + - time: 4.233333 + value: {x: 2.732697, y: 2.732697, z: 2.732697} + - time: 4.333333 + value: {x: 2.793925, y: 2.793925, z: 2.793925} + - time: 4.433333 + value: {x: 2.855734, y: 2.855734, z: 2.855734} + - time: 4.533333 + value: {x: 2.918122, y: 2.918122, z: 2.918122} + - time: 4.633333 + value: {x: 2.981086, y: 2.981086, z: 2.981086} + - time: 4.733333 + value: {x: 3.044625, y: 3.044625, z: 3.044625} + - time: 4.833333 + value: {x: 3.108738, y: 3.108738, z: 3.108738} + - time: 4.933333 + value: {x: 3.173423, y: 3.173423, z: 3.173423} + - time: 5.033333 + value: {x: 3.238677, y: 3.238677, z: 3.238677} + - time: 5.133333 + value: {x: 3.304500, y: 3.304500, z: 3.304500} + - time: 5.233333 + value: {x: 3.370890, y: 3.370890, z: 3.370890} + - time: 5.333333 + value: {x: 3.437845, y: 3.437845, z: 3.437845} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_24: + position: + - time: 0.000000 + value: {x: 0.012246, y: 0.483205, z: -0.010400} + - time: 0.033333 + value: {x: 0.012360, y: 0.483443, z: -0.010490} + - time: 0.066667 + value: {x: 0.019322, y: 0.322902, z: -0.015854} + - time: 0.100000 + value: {x: 0.025311, y: 0.214366, z: -0.018427} + - time: 0.133333 + value: {x: 0.030615, y: 0.150150, z: -0.019113} + - time: 0.166667 + value: {x: 0.035405, y: 0.119156, z: -0.018353} + - time: 0.200000 + value: {x: 0.039776, y: 0.108391, z: -0.016274} + - time: 0.233333 + value: {x: 0.043761, y: 0.107146, z: -0.012510} + - time: 0.266667 + value: {x: 0.047259, y: 0.111234, z: -0.005231} + - time: 0.300000 + value: {x: 0.050162, y: 0.117680, z: 0.007378} + - time: 0.333333 + value: {x: 0.052385, y: 0.125121, z: 0.026714} + - time: 0.366667 + value: {x: 0.053843, y: 0.133420, z: 0.054085} + - time: 0.400000 + value: {x: 0.054566, y: 0.142433, z: 0.089353} + - time: 0.433333 + value: {x: 0.055003, y: 0.152204, z: 0.126997} + - time: 0.466667 + value: {x: 0.055643, y: 0.162937, z: 0.160875} + - time: 0.500000 + value: {x: 0.056767, y: 0.174806, z: 0.187621} + - time: 0.533333 + value: {x: 0.058227, y: 0.188163, z: 0.209149} + - time: 0.566667 + value: {x: 0.059907, y: 0.203450, z: 0.227035} + - time: 0.600000 + value: {x: 0.061813, y: 0.220536, z: 0.241294} + - time: 0.633333 + value: {x: 0.064082, y: 0.239342, z: 0.250253} + - time: 0.666667 + value: {x: 0.066772, y: 0.259376, z: 0.253201} + - time: 0.700000 + value: {x: 0.069886, y: 0.278436, z: 0.250162} + - time: 0.733333 + value: {x: 0.073312, y: 0.293936, z: 0.242576} + - time: 0.766667 + value: {x: 0.076980, y: 0.303513, z: 0.231460} + - time: 0.800000 + value: {x: 0.080626, y: 0.307257, z: 0.220078} + - time: 0.833333 + value: {x: 0.084037, y: 0.305556, z: 0.211284} + - time: 0.866667 + value: {x: 0.086988, y: 0.299172, z: 0.207873} + - time: 0.900000 + value: {x: 0.089474, y: 0.290249, z: 0.209974} + - time: 0.933333 + value: {x: 0.091537, y: 0.281302, z: 0.217097} + - time: 0.966667 + value: {x: 0.093163, y: 0.274295, z: 0.229393} + - time: 1.000000 + value: {x: 0.094082, y: 0.269965, z: 0.250351} + - time: 1.033333 + value: {x: 0.093939, y: 0.268308, z: 0.284493} + - time: 1.066667 + value: {x: 0.092416, y: 0.269420, z: 0.335849} + - time: 1.100000 + value: {x: 0.089610, y: 0.272937, z: 0.403206} + - time: 1.133333 + value: {x: 0.086004, y: 0.278274, z: 0.480449} + - time: 1.166667 + value: {x: 0.082059, y: 0.284858, z: 0.561708} + - time: 1.200000 + value: {x: 0.078175, y: 0.292199, z: 0.641957} + - time: 1.233333 + value: {x: 0.074633, y: 0.300248, z: 0.717647} + - time: 1.266667 + value: {x: 0.071633, y: 0.309334, z: 0.786149} + - time: 1.300000 + value: {x: 0.069390, y: 0.319436, z: 0.844878} + - time: 1.333333 + value: {x: 0.067928, y: 0.330599, z: 0.893414} + - time: 1.366667 + value: {x: 0.067291, y: 0.342771, z: 0.931265} + - time: 1.400000 + value: {x: 0.067233, y: 0.355478, z: 0.961508} + - time: 1.433333 + value: {x: 0.067738, y: 0.368541, z: 0.984435} + - time: 1.466667 + value: {x: 0.068620, y: 0.381636, z: 1.002383} + - time: 1.500000 + value: {x: 0.069814, y: 0.394558, z: 1.016202} + - time: 1.533333 + value: {x: 0.071243, y: 0.407420, z: 1.026797} + - time: 1.566667 + value: {x: 0.072883, y: 0.420029, z: 1.034584} + - time: 1.600000 + value: {x: 0.074657, y: 0.432552, z: 1.040465} + - time: 1.633333 + value: {x: 0.076553, y: 0.444890, z: 1.044624} + - time: 1.666667 + value: {x: 0.078541, y: 0.457087, z: 1.047449} + - time: 1.700000 + value: {x: 0.080601, y: 0.469146, z: 1.049201} + - time: 1.733333 + value: {x: 0.082727, y: 0.481072, z: 1.049938} + - time: 1.766667 + value: {x: 0.084918, y: 0.492870, z: 1.049712} + - time: 1.800000 + value: {x: 0.087167, y: 0.504517, z: 1.048586} + - time: 1.833333 + value: {x: 0.089473, y: 0.515991, z: 1.046582} + - time: 1.866667 + value: {x: 0.091814, y: 0.527386, z: 1.043951} + - time: 1.900000 + value: {x: 0.094258, y: 0.538530, z: 1.039948} + - time: 1.933333 + value: {x: 0.096733, y: 0.549632, z: 1.035319} + - time: 1.966667 + value: {x: 0.099252, y: 0.560549, z: 1.030036} + - time: 2.000000 + value: {x: 0.101843, y: 0.571304, z: 1.023701} + - time: 2.033333 + value: {x: 0.104484, y: 0.581899, z: 1.016593} + - time: 2.066667 + value: {x: 0.107141, y: 0.592314, z: 1.009141} + - time: 2.133333 + value: {x: 0.112591, y: 0.612286, z: 0.992135} + - time: 2.166667 + value: {x: 0.115340, y: 0.621781, z: 0.983132} + - time: 2.233333 + value: {x: 0.120851, y: 0.639619, z: 0.964569} + - time: 2.266667 + value: {x: 0.123623, y: 0.647772, z: 0.954925} + - time: 2.300000 + value: {x: 0.126372, y: 0.655660, z: 0.945408} + - time: 2.333333 + value: {x: 0.129104, y: 0.663024, z: 0.935948} + - time: 2.366667 + value: {x: 0.131845, y: 0.669931, z: 0.926347} + - time: 2.400000 + value: {x: 0.134548, y: 0.676391, z: 0.916999} + - time: 2.433333 + value: {x: 0.137257, y: 0.682310, z: 0.907566} + - time: 2.466667 + value: {x: 0.139935, y: 0.687908, z: 0.898352} + - time: 2.500000 + value: {x: 0.142592, y: 0.692872, z: 0.889284} + - time: 2.533333 + value: {x: 0.145214, y: 0.697850, z: 0.880500} + - time: 2.600000 + value: {x: 0.150413, y: 0.706055, z: 0.863245} + - time: 2.633333 + value: {x: 0.152981, y: 0.709788, z: 0.854866} + - time: 2.666667 + value: {x: 0.155538, y: 0.713079, z: 0.846548} + - time: 2.700000 + value: {x: 0.158058, y: 0.716444, z: 0.838529} + - time: 2.766667 + value: {x: 0.163027, y: 0.722131, z: 0.823072} + - time: 2.800000 + value: {x: 0.165465, y: 0.725009, z: 0.815721} + - time: 2.833333 + value: {x: 0.167901, y: 0.727315, z: 0.808387} + - time: 2.900000 + value: {x: 0.172688, y: 0.732039, z: 0.794351} + - time: 2.933333 + value: {x: 0.175043, y: 0.734087, z: 0.787668} + - time: 3.000000 + value: {x: 0.179678, y: 0.738252, z: 0.774884} + - time: 3.033333 + value: {x: 0.181977, y: 0.740116, z: 0.768634} + - time: 3.066667 + value: {x: 0.184240, y: 0.741928, z: 0.762679} + - time: 3.133333 + value: {x: 0.188699, y: 0.745740, z: 0.751268} + - time: 3.233333 + value: {x: 0.195257, y: 0.750803, z: 0.735142} + - time: 3.266667 + value: {x: 0.197392, y: 0.752639, z: 0.730129} + - time: 3.300000 + value: {x: 0.199540, y: 0.754187, z: 0.724965} + - time: 3.333333 + value: {x: 0.201655, y: 0.755856, z: 0.720048} + - time: 3.466667 + value: {x: 0.209988, y: 0.762625, z: 0.700996} + - time: 3.633333 + value: {x: 0.220137, y: 0.771310, z: 0.678273} + - time: 3.733333 + value: {x: 0.226088, y: 0.776744, z: 0.665172} + - time: 3.766667 + value: {x: 0.228027, y: 0.778711, z: 0.661110} + - time: 3.800000 + value: {x: 0.230010, y: 0.780485, z: 0.656513} + - time: 3.933333 + value: {x: 0.237725, y: 0.788231, z: 0.639660} + - time: 3.966667 + value: {x: 0.239597, y: 0.790337, z: 0.635844} + - time: 4.033333 + value: {x: 0.243371, y: 0.794454, z: 0.627704} + - time: 4.066667 + value: {x: 0.245265, y: 0.796434, z: 0.623447} + - time: 4.100000 + value: {x: 0.247102, y: 0.798660, z: 0.619686} + - time: 4.133333 + value: {x: 0.248966, y: 0.800700, z: 0.615631} + - time: 4.166667 + value: {x: 0.250793, y: 0.802877, z: 0.611870} + - time: 4.266666 + value: {x: 0.256176, y: 0.809628, z: 0.601268} + - time: 4.300000 + value: {x: 0.257934, y: 0.812019, z: 0.597950} + - time: 4.333333 + value: {x: 0.259728, y: 0.814248, z: 0.594195} + - time: 4.366667 + value: {x: 0.261484, y: 0.816622, z: 0.590766} + - time: 4.400000 + value: {x: 0.263209, y: 0.819096, z: 0.587578} + - time: 4.433333 + value: {x: 0.264956, y: 0.821398, z: 0.584134} + - time: 4.500000 + value: {x: 0.268351, y: 0.826370, z: 0.578101} + - time: 4.533333 + value: {x: 0.270007, y: 0.828985, z: 0.575410} + - time: 4.566667 + value: {x: 0.271690, y: 0.831416, z: 0.572439} + - time: 4.666667 + value: {x: 0.276569, y: 0.839242, z: 0.564852} + - time: 4.766666 + value: {x: 0.281300, y: 0.847372, z: 0.558347} + - time: 4.800000 + value: {x: 0.282843, y: 0.850158, z: 0.556434} + - time: 4.900000 + value: {x: 0.287375, y: 0.858697, z: 0.551371} + - time: 4.966667 + value: {x: 0.290295, y: 0.864658, z: 0.548779} + - time: 5.333333 + value: {x: 0.305638, y: 0.896695, z: 0.536562} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.296531, y: 0.296531, z: 0.296531} + - time: 0.366667 + value: {x: 0.325713, y: 0.325713, z: 0.325713} + - time: 0.666667 + value: {x: 0.350457, y: 0.350457, z: 0.350457} + - time: 1.000000 + value: {x: 0.378856, y: 0.378856, z: 0.378856} + - time: 1.333333 + value: {x: 0.408198, y: 0.408198, z: 0.408198} + - time: 1.666667 + value: {x: 0.438474, y: 0.438474, z: 0.438474} + - time: 2.000000 + value: {x: 0.469673, y: 0.469673, z: 0.469673} + - time: 2.333333 + value: {x: 0.501786, y: 0.501786, z: 0.501786} + - time: 2.666667 + value: {x: 0.534805, y: 0.534805, z: 0.534805} + - time: 3.000000 + value: {x: 0.568722, y: 0.568722, z: 0.568722} + - time: 3.333333 + value: {x: 0.603529, y: 0.603529, z: 0.603529} + - time: 3.666667 + value: {x: 0.639219, y: 0.639219, z: 0.639219} + - time: 4.000000 + value: {x: 0.675783, y: 0.675783, z: 0.675783} + - time: 4.333333 + value: {x: 0.713215, y: 0.713215, z: 0.713215} + - time: 4.666667 + value: {x: 0.751509, y: 0.751509, z: 0.751509} + - time: 5.000000 + value: {x: 0.790659, y: 0.790659, z: 0.790659} + - time: 5.333333 + value: {x: 0.830657, y: 0.830657, z: 0.830657} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_25: + position: + - time: 0.000000 + value: {x: 0.000058, y: 0.457730, z: -0.000740} + - time: 0.033333 + value: {x: 0.000058, y: 0.457730, z: -0.000740} + - time: 0.066667 + value: {x: 0.000046, y: 0.282607, z: -0.000578} + - time: 0.100000 + value: {x: -0.000138, y: 0.161182, z: 0.001752} + - time: 0.133333 + value: {x: -0.000434, y: 0.085264, z: 0.005513} + - time: 0.166667 + value: {x: -0.000816, y: 0.043457, z: 0.010366} + - time: 0.200000 + value: {x: -0.001281, y: 0.022582, z: 0.016279} + - time: 0.233333 + value: {x: -0.001863, y: 0.011796, z: 0.023666} + - time: 0.266667 + value: {x: -0.002705, y: 0.006799, z: 0.034371} + - time: 0.300000 + value: {x: -0.003956, y: 0.004559, z: 0.050267} + - time: 0.333333 + value: {x: -0.005730, y: 0.003674, z: 0.072805} + - time: 0.366667 + value: {x: -0.008122, y: 0.003901, z: 0.103199} + - time: 0.400000 + value: {x: -0.011130, y: 0.005112, z: 0.141423} + - time: 0.433333 + value: {x: -0.014322, y: 0.007328, z: 0.181973} + - time: 0.466667 + value: {x: -0.017205, y: 0.010668, z: 0.218615} + - time: 0.500000 + value: {x: -0.019528, y: 0.015363, z: 0.248127} + - time: 0.533333 + value: {x: -0.021432, y: 0.021688, z: 0.272321} + - time: 0.566667 + value: {x: -0.023042, y: 0.030067, z: 0.292777} + - time: 0.600000 + value: {x: -0.024365, y: 0.040399, z: 0.309589} + - time: 0.633333 + value: {x: -0.025272, y: 0.052606, z: 0.321113} + - time: 0.666667 + value: {x: -0.025698, y: 0.066125, z: 0.326527} + - time: 0.700000 + value: {x: -0.025651, y: 0.078779, z: 0.325925} + - time: 0.733333 + value: {x: -0.025238, y: 0.087941, z: 0.320683} + - time: 0.766667 + value: {x: -0.024554, y: 0.091330, z: 0.311986} + - time: 0.800000 + value: {x: -0.023836, y: 0.088904, z: 0.302869} + - time: 0.833333 + value: {x: -0.023330, y: 0.081183, z: 0.296440} + - time: 0.866667 + value: {x: -0.023236, y: 0.068786, z: 0.295244} + - time: 0.900000 + value: {x: -0.023577, y: 0.053944, z: 0.299575} + - time: 0.933333 + value: {x: -0.024312, y: 0.039148, z: 0.308908} + - time: 0.966667 + value: {x: -0.025454, y: 0.026371, z: 0.323424} + - time: 1.000000 + value: {x: -0.027273, y: 0.016308, z: 0.346535} + - time: 1.033333 + value: {x: -0.030134, y: 0.009019, z: 0.382890} + - time: 1.066667 + value: {x: -0.034342, y: 0.004508, z: 0.436361} + - time: 1.100000 + value: {x: -0.039811, y: 0.002471, z: 0.505844} + - time: 1.133333 + value: {x: -0.046054, y: 0.002288, z: 0.585166} + - time: 1.166667 + value: {x: -0.052607, y: 0.003374, z: 0.668441} + - time: 1.200000 + value: {x: -0.059084, y: 0.005288, z: 0.750735} + - time: 1.233333 + value: {x: -0.065208, y: 0.008001, z: 0.828542} + - time: 1.266667 + value: {x: -0.070753, y: 0.011716, z: 0.899005} + - time: 1.300000 + value: {x: -0.075539, y: 0.016562, z: 0.959815} + - time: 1.333333 + value: {x: -0.079516, y: 0.022468, z: 1.010346} + - time: 1.366667 + value: {x: -0.082649, y: 0.029412, z: 1.050159} + - time: 1.400000 + value: {x: -0.085179, y: 0.036897, z: 1.082299} + - time: 1.433333 + value: {x: -0.087137, y: 0.044814, z: 1.107182} + - time: 1.466667 + value: {x: -0.088702, y: 0.052795, z: 1.127071} + - time: 1.500000 + value: {x: -0.089948, y: 0.060681, z: 1.142898} + - time: 1.533333 + value: {x: -0.090926, y: 0.068451, z: 1.155329} + - time: 1.566667 + value: {x: -0.091697, y: 0.076098, z: 1.165119} + - time: 1.600000 + value: {x: -0.092306, y: 0.083615, z: 1.172853} + - time: 1.633333 + value: {x: -0.092782, y: 0.091008, z: 1.178913} + - time: 1.666667 + value: {x: -0.093153, y: 0.098281, z: 1.183615} + - time: 1.700000 + value: {x: -0.093436, y: 0.105437, z: 1.187213} + - time: 1.733333 + value: {x: -0.093640, y: 0.112495, z: 1.189804} + - time: 1.766667 + value: {x: -0.093766, y: 0.119447, z: 1.191409} + - time: 1.800000 + value: {x: -0.093821, y: 0.126275, z: 1.192103} + - time: 1.833333 + value: {x: -0.093808, y: 0.132973, z: 1.191940} + - time: 1.866667 + value: {x: -0.093733, y: 0.139537, z: 1.190992} + - time: 1.900000 + value: {x: -0.093569, y: 0.146008, z: 1.188908} + - time: 1.933333 + value: {x: -0.093339, y: 0.152352, z: 1.185984} + - time: 1.966667 + value: {x: -0.093059, y: 0.158555, z: 1.182433} + - time: 2.000000 + value: {x: -0.092701, y: 0.164655, z: 1.177884} + - time: 2.033333 + value: {x: -0.092281, y: 0.170614, z: 1.172542} + - time: 2.066667 + value: {x: -0.091833, y: 0.176413, z: 1.166844} + - time: 2.100000 + value: {x: -0.091306, y: 0.181947, z: 1.160151} + - time: 2.133333 + value: {x: -0.090768, y: 0.187226, z: 1.153322} + - time: 2.166667 + value: {x: -0.090195, y: 0.192169, z: 1.146035} + - time: 2.200000 + value: {x: -0.089604, y: 0.196733, z: 1.138530} + - time: 2.233333 + value: {x: -0.089002, y: 0.200968, z: 1.130876} + - time: 2.266667 + value: {x: -0.088386, y: 0.204703, z: 1.123047} + - time: 2.300000 + value: {x: -0.087770, y: 0.208133, z: 1.115223} + - time: 2.333333 + value: {x: -0.087149, y: 0.210998, z: 1.107332} + - time: 2.366667 + value: {x: -0.086533, y: 0.213542, z: 1.099505} + - time: 2.400000 + value: {x: -0.085922, y: 0.215559, z: 1.091737} + - time: 2.433333 + value: {x: -0.085317, y: 0.217153, z: 1.084051} + - time: 2.466667 + value: {x: -0.084724, y: 0.218414, z: 1.076519} + - time: 2.533333 + value: {x: -0.083569, y: 0.219655, z: 1.061845} + - time: 2.600000 + value: {x: -0.082463, y: 0.219273, z: 1.047796} + - time: 2.633333 + value: {x: -0.081931, y: 0.218758, z: 1.041035} + - time: 2.700000 + value: {x: -0.080907, y: 0.217034, z: 1.028018} + - time: 2.733333 + value: {x: -0.080418, y: 0.215744, z: 1.021801} + - time: 2.800000 + value: {x: -0.079476, y: 0.213014, z: 1.009839} + - time: 2.833333 + value: {x: -0.079031, y: 0.211248, z: 1.004186} + - time: 2.900000 + value: {x: -0.078174, y: 0.207777, z: 0.993291} + - time: 2.966667 + value: {x: -0.077380, y: 0.203742, z: 0.983210} + - time: 3.033333 + value: {x: -0.076634, y: 0.199670, z: 0.973732} + - time: 3.133333 + value: {x: -0.075613, y: 0.193269, z: 0.960754} + - time: 3.233333 + value: {x: -0.074705, y: 0.186618, z: 0.949217} + - time: 3.333333 + value: {x: -0.073865, y: 0.180061, z: 0.938538} + - time: 3.466667 + value: {x: -0.072820, y: 0.171600, z: 0.925265} + - time: 3.633333 + value: {x: -0.071588, y: 0.161650, z: 0.909613} + - time: 3.733333 + value: {x: -0.070886, y: 0.156127, z: 0.900695} + - time: 3.866667 + value: {x: -0.069955, y: 0.149288, z: 0.888858} + - time: 3.966667 + value: {x: -0.069311, y: 0.144654, z: 0.880687} + - time: 4.033333 + value: {x: -0.068876, y: 0.141769, z: 0.875154} + - time: 4.133333 + value: {x: -0.068250, y: 0.137780, z: 0.867204} + - time: 4.233333 + value: {x: -0.067694, y: 0.134232, z: 0.860132} + - time: 4.366667 + value: {x: -0.066995, y: 0.130147, z: 0.851249} + - time: 4.466667 + value: {x: -0.066528, y: 0.127574, z: 0.845315} + - time: 4.566667 + value: {x: -0.066139, y: 0.125431, z: 0.840373} + - time: 4.666667 + value: {x: -0.065828, y: 0.123720, z: 0.836427} + - time: 4.766666 + value: {x: -0.065597, y: 0.122444, z: 0.833484} + - time: 4.866667 + value: {x: -0.065445, y: 0.121608, z: 0.831556} + - time: 4.966667 + value: {x: -0.065375, y: 0.121224, z: 0.830669} + - time: 5.333333 + value: {x: -0.065370, y: 0.121198, z: 0.830609} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.296531, y: 0.296531, z: 0.296531} + - time: 0.366667 + value: {x: 0.325713, y: 0.325713, z: 0.325713} + - time: 0.666667 + value: {x: 0.350457, y: 0.350457, z: 0.350457} + - time: 1.000000 + value: {x: 0.378856, y: 0.378856, z: 0.378856} + - time: 1.333333 + value: {x: 0.408198, y: 0.408198, z: 0.408198} + - time: 1.666667 + value: {x: 0.438474, y: 0.438474, z: 0.438474} + - time: 2.000000 + value: {x: 0.469673, y: 0.469673, z: 0.469673} + - time: 2.333333 + value: {x: 0.501786, y: 0.501786, z: 0.501786} + - time: 2.666667 + value: {x: 0.534805, y: 0.534805, z: 0.534805} + - time: 3.000000 + value: {x: 0.568722, y: 0.568722, z: 0.568722} + - time: 3.333333 + value: {x: 0.603529, y: 0.603529, z: 0.603529} + - time: 3.666667 + value: {x: 0.639219, y: 0.639219, z: 0.639219} + - time: 4.000000 + value: {x: 0.675783, y: 0.675783, z: 0.675783} + - time: 4.333333 + value: {x: 0.713215, y: 0.713215, z: 0.713215} + - time: 4.666667 + value: {x: 0.751509, y: 0.751509, z: 0.751509} + - time: 5.000000 + value: {x: 0.790659, y: 0.790659, z: 0.790659} + - time: 5.333333 + value: {x: 0.830657, y: 0.830657, z: 0.830657} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_26: + position: + - time: 0.000000 + value: {x: 0.026685, y: 0.461702, z: 0.016434} + - time: 0.033333 + value: {x: 0.026852, y: 0.461727, z: 0.016539} + - time: 0.066667 + value: {x: 0.042192, y: 0.288851, z: 0.026358} + - time: 0.100000 + value: {x: 0.056581, y: 0.169399, z: 0.036986} + - time: 0.133333 + value: {x: 0.070254, y: 0.095259, z: 0.048068} + - time: 0.166667 + value: {x: 0.083396, y: 0.055082, z: 0.059494} + - time: 0.200000 + value: {x: 0.096190, y: 0.035721, z: 0.071388} + - time: 0.233333 + value: {x: 0.108963, y: 0.026355, z: 0.084219} + - time: 0.266667 + value: {x: 0.122621, y: 0.022697, z: 0.099707} + - time: 0.300000 + value: {x: 0.138019, y: 0.021731, z: 0.119637} + - time: 0.333333 + value: {x: 0.155810, y: 0.022063, z: 0.145398} + - time: 0.366667 + value: {x: 0.176641, y: 0.023455, z: 0.178021} + - time: 0.400000 + value: {x: 0.200472, y: 0.025787, z: 0.217598} + - time: 0.433333 + value: {x: 0.224996, y: 0.029087, z: 0.259158} + - time: 0.466667 + value: {x: 0.247673, y: 0.033473, z: 0.296950} + - time: 0.500000 + value: {x: 0.267061, y: 0.039186, z: 0.328189} + - time: 0.533333 + value: {x: 0.284028, y: 0.046498, z: 0.354435} + - time: 0.566667 + value: {x: 0.299260, y: 0.055837, z: 0.377131} + - time: 0.600000 + value: {x: 0.312761, y: 0.067105, z: 0.396444} + - time: 0.633333 + value: {x: 0.323828, y: 0.080229, z: 0.410910} + - time: 0.666667 + value: {x: 0.332206, y: 0.094642, z: 0.419680} + - time: 0.700000 + value: {x: 0.337897, y: 0.108173, z: 0.422909} + - time: 0.733333 + value: {x: 0.341540, y: 0.118190, z: 0.421792} + - time: 0.766667 + value: {x: 0.343529, y: 0.122423, z: 0.417565} + - time: 0.800000 + value: {x: 0.345321, y: 0.120821, z: 0.412775} + - time: 0.833333 + value: {x: 0.348063, y: 0.113914, z: 0.410487} + - time: 0.866667 + value: {x: 0.353015, y: 0.102313, z: 0.412786} + - time: 0.900000 + value: {x: 0.360193, y: 0.088255, z: 0.420091} + - time: 0.933333 + value: {x: 0.369404, y: 0.074231, z: 0.431898} + - time: 0.966667 + value: {x: 0.380712, y: 0.062216, z: 0.448394} + - time: 1.000000 + value: {x: 0.395619, y: 0.052902, z: 0.472619} + - time: 1.033333 + value: {x: 0.416012, y: 0.046355, z: 0.508913} + - time: 1.066667 + value: {x: 0.443648, y: 0.042574, z: 0.560650} + - time: 1.100000 + value: {x: 0.477985, y: 0.041257, z: 0.626934} + - time: 1.133333 + value: {x: 0.516451, y: 0.041784, z: 0.702097} + - time: 1.166667 + value: {x: 0.556564, y: 0.043570, z: 0.780775} + - time: 1.200000 + value: {x: 0.596172, y: 0.046178, z: 0.858567} + - time: 1.233333 + value: {x: 0.633764, y: 0.049579, z: 0.932323} + - time: 1.266667 + value: {x: 0.668284, y: 0.053969, z: 0.999244} + - time: 1.300000 + value: {x: 0.698569, y: 0.059489, z: 1.057480} + - time: 1.333333 + value: {x: 0.724497, y: 0.066058, z: 1.106275} + - time: 1.366667 + value: {x: 0.745846, y: 0.073657, z: 1.145280} + - time: 1.400000 + value: {x: 0.763931, y: 0.081789, z: 1.177235} + - time: 1.433333 + value: {x: 0.778847, y: 0.090349, z: 1.202627} + - time: 1.466667 + value: {x: 0.791604, y: 0.098967, z: 1.223450} + - time: 1.500000 + value: {x: 0.802544, y: 0.107486, z: 1.240626} + - time: 1.533333 + value: {x: 0.812111, y: 0.115878, z: 1.254547} + - time: 1.566667 + value: {x: 0.820400, y: 0.124147, z: 1.266200} + - time: 1.600000 + value: {x: 0.827871, y: 0.132276, z: 1.275838} + - time: 1.633333 + value: {x: 0.834555, y: 0.140277, z: 1.283984} + - time: 1.666667 + value: {x: 0.840637, y: 0.148153, z: 1.290859} + - time: 1.700000 + value: {x: 0.846228, y: 0.155906, z: 1.296692} + - time: 1.733333 + value: {x: 0.851347, y: 0.163557, z: 1.301602} + - time: 1.766667 + value: {x: 0.856021, y: 0.171096, z: 1.305585} + - time: 1.800000 + value: {x: 0.860277, y: 0.178505, z: 1.308719} + - time: 1.833333 + value: {x: 0.864117, y: 0.185781, z: 1.311079} + - time: 1.866667 + value: {x: 0.867691, y: 0.192914, z: 1.312577} + - time: 1.900000 + value: {x: 0.870591, y: 0.199958, z: 1.313235} + - time: 1.933333 + value: {x: 0.873239, y: 0.206862, z: 1.312934} + - time: 1.966667 + value: {x: 0.875567, y: 0.213624, z: 1.312077} + - time: 2.000000 + value: {x: 0.877402, y: 0.220280, z: 1.310348} + - time: 2.033333 + value: {x: 0.878879, y: 0.226790, z: 1.307872} + - time: 2.066667 + value: {x: 0.880180, y: 0.233136, z: 1.305048} + - time: 2.100000 + value: {x: 0.880965, y: 0.239218, z: 1.301396} + - time: 2.133333 + value: {x: 0.881797, y: 0.245032, z: 1.297425} + - time: 2.166667 + value: {x: 0.882351, y: 0.250511, z: 1.293097} + - time: 2.200000 + value: {x: 0.882700, y: 0.255610, z: 1.288670} + - time: 2.233333 + value: {x: 0.883135, y: 0.260368, z: 1.283860} + - time: 2.266667 + value: {x: 0.883302, y: 0.264630, z: 1.279097} + - time: 2.300000 + value: {x: 0.883519, y: 0.268581, z: 1.274225} + - time: 2.333333 + value: {x: 0.883758, y: 0.271958, z: 1.269179} + - time: 2.366667 + value: {x: 0.883864, y: 0.275020, z: 1.264358} + - time: 2.400000 + value: {x: 0.884089, y: 0.277542, z: 1.259416} + - time: 2.433333 + value: {x: 0.884214, y: 0.279646, z: 1.254684} + - time: 2.466667 + value: {x: 0.884418, y: 0.281410, z: 1.250026} + - time: 2.533333 + value: {x: 0.885025, y: 0.283643, z: 1.240887} + - time: 2.600000 + value: {x: 0.885771, y: 0.284242, z: 1.232309} + - time: 2.633333 + value: {x: 0.886205, y: 0.284214, z: 1.228262} + - time: 2.700000 + value: {x: 0.887156, y: 0.283456, z: 1.220672} + - time: 2.800000 + value: {x: 0.889183, y: 0.280854, z: 1.210166} + - time: 2.866667 + value: {x: 0.890782, y: 0.278263, z: 1.204034} + - time: 2.900000 + value: {x: 0.891552, y: 0.277014, z: 1.201241} + - time: 3.000000 + value: {x: 0.894566, y: 0.272373, z: 1.193484} + - time: 3.033333 + value: {x: 0.895602, y: 0.270726, z: 1.191299} + - time: 3.133333 + value: {x: 0.899249, y: 0.265653, z: 1.185125} + - time: 3.166667 + value: {x: 0.900572, y: 0.263825, z: 1.183415} + - time: 3.266667 + value: {x: 0.904625, y: 0.258620, z: 1.178797} + - time: 3.433333 + value: {x: 0.911701, y: 0.249955, z: 1.172528} + - time: 3.533333 + value: {x: 0.916013, y: 0.245010, z: 1.169176} + - time: 3.700000 + value: {x: 0.923255, y: 0.237399, z: 1.163729} + - time: 3.733333 + value: {x: 0.924619, y: 0.236010, z: 1.162925} + - time: 3.766667 + value: {x: 0.926177, y: 0.234650, z: 1.161877} + - time: 3.866667 + value: {x: 0.930259, y: 0.230720, z: 1.158729} + - time: 4.000000 + value: {x: 0.935858, y: 0.226151, z: 1.155520} + - time: 4.033333 + value: {x: 0.937310, y: 0.225089, z: 1.154374} + - time: 4.066667 + value: {x: 0.938546, y: 0.224087, z: 1.153629} + - time: 4.100000 + value: {x: 0.940047, y: 0.223119, z: 1.152649} + - time: 4.133333 + value: {x: 0.941330, y: 0.222212, z: 1.152069} + - time: 4.200000 + value: {x: 0.944344, y: 0.220517, z: 1.150657} + - time: 4.300000 + value: {x: 0.948796, y: 0.218325, z: 1.149262} + - time: 4.333333 + value: {x: 0.950104, y: 0.217682, z: 1.148825} + - time: 4.400000 + value: {x: 0.953142, y: 0.216516, z: 1.147794} + - time: 4.433333 + value: {x: 0.954522, y: 0.216010, z: 1.147662} + - time: 4.533333 + value: {x: 0.959403, y: 0.214743, z: 1.147092} + - time: 4.566667 + value: {x: 0.960917, y: 0.214421, z: 1.147320} + - time: 4.600000 + value: {x: 0.962719, y: 0.214131, z: 1.147300} + - time: 4.633333 + value: {x: 0.964328, y: 0.213900, z: 1.147671} + - time: 4.700000 + value: {x: 0.967940, y: 0.213559, z: 1.148300} + - time: 4.733333 + value: {x: 0.969736, y: 0.213461, z: 1.148834} + - time: 4.800000 + value: {x: 0.973346, y: 0.213411, z: 1.150291} + - time: 4.866667 + value: {x: 0.977318, y: 0.213538, z: 1.151831} + - time: 4.900000 + value: {x: 0.979193, y: 0.213681, z: 1.152964} + - time: 4.966667 + value: {x: 0.983374, y: 0.214099, z: 1.155094} + - time: 5.333333 + value: {x: 1.005739, y: 0.217366, z: 1.169226} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.296531, y: 0.296531, z: 0.296531} + - time: 0.366667 + value: {x: 0.325713, y: 0.325713, z: 0.325713} + - time: 0.666667 + value: {x: 0.350457, y: 0.350457, z: 0.350457} + - time: 1.000000 + value: {x: 0.378856, y: 0.378856, z: 0.378856} + - time: 1.333333 + value: {x: 0.408198, y: 0.408198, z: 0.408198} + - time: 1.666667 + value: {x: 0.438474, y: 0.438474, z: 0.438474} + - time: 2.000000 + value: {x: 0.469673, y: 0.469673, z: 0.469673} + - time: 2.333333 + value: {x: 0.501786, y: 0.501786, z: 0.501786} + - time: 2.666667 + value: {x: 0.534805, y: 0.534805, z: 0.534805} + - time: 3.000000 + value: {x: 0.568722, y: 0.568722, z: 0.568722} + - time: 3.333333 + value: {x: 0.603529, y: 0.603529, z: 0.603529} + - time: 3.666667 + value: {x: 0.639219, y: 0.639219, z: 0.639219} + - time: 4.000000 + value: {x: 0.675783, y: 0.675783, z: 0.675783} + - time: 4.333333 + value: {x: 0.713215, y: 0.713215, z: 0.713215} + - time: 4.666667 + value: {x: 0.751509, y: 0.751509, z: 0.751509} + - time: 5.000000 + value: {x: 0.790659, y: 0.790659, z: 0.790659} + - time: 5.333333 + value: {x: 0.830657, y: 0.830657, z: 0.830657} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_27: + position: + - time: 0.000000 + value: {x: 0.012794, y: 0.485129, z: -0.011062} + - time: 0.033333 + value: {x: 0.012875, y: 0.485297, z: -0.011126} + - time: 0.066667 + value: {x: 0.020357, y: 0.325672, z: -0.016852} + - time: 0.100000 + value: {x: 0.027857, y: 0.217848, z: -0.019908} + - time: 0.133333 + value: {x: 0.035319, y: 0.154189, z: -0.021147} + - time: 0.166667 + value: {x: 0.042755, y: 0.123628, z: -0.020992} + - time: 0.200000 + value: {x: 0.050257, y: 0.113194, z: -0.019576} + - time: 0.233333 + value: {x: 0.058071, y: 0.112193, z: -0.016575} + - time: 0.266667 + value: {x: 0.067029, y: 0.116448, z: -0.010332} + - time: 0.300000 + value: {x: 0.077970, y: 0.122995, z: 0.000794} + - time: 0.333333 + value: {x: 0.091540, y: 0.130475, z: 0.018065} + - time: 0.366667 + value: {x: 0.108269, y: 0.138761, z: 0.042680} + - time: 0.400000 + value: {x: 0.128174, y: 0.147711, z: 0.074498} + - time: 0.433333 + value: {x: 0.148941, y: 0.157373, z: 0.108496} + - time: 0.466667 + value: {x: 0.167927, y: 0.167958, z: 0.139102} + - time: 0.500000 + value: {x: 0.183795, y: 0.179638, z: 0.163235} + - time: 0.533333 + value: {x: 0.197309, y: 0.192772, z: 0.182649} + - time: 0.566667 + value: {x: 0.209147, y: 0.207803, z: 0.198773} + - time: 0.600000 + value: {x: 0.219366, y: 0.224602, z: 0.211614} + - time: 0.633333 + value: {x: 0.227276, y: 0.243090, z: 0.219645} + - time: 0.666667 + value: {x: 0.232522, y: 0.262781, z: 0.222232} + - time: 0.700000 + value: {x: 0.235157, y: 0.281471, z: 0.219387} + - time: 0.733333 + value: {x: 0.235760, y: 0.296577, z: 0.212429} + - time: 0.766667 + value: {x: 0.234856, y: 0.305735, z: 0.202260} + - time: 0.800000 + value: {x: 0.233709, y: 0.309040, z: 0.191874} + - time: 0.833333 + value: {x: 0.233668, y: 0.306878, z: 0.183839} + - time: 0.866667 + value: {x: 0.235788, y: 0.300013, z: 0.180720} + - time: 0.900000 + value: {x: 0.240212, y: 0.290590, z: 0.182617} + - time: 0.933333 + value: {x: 0.246718, y: 0.281125, z: 0.189087} + - time: 0.966667 + value: {x: 0.255384, y: 0.273583, z: 0.200267} + - time: 1.000000 + value: {x: 0.267655, y: 0.268702, z: 0.219333} + - time: 1.033333 + value: {x: 0.285514, y: 0.266478, z: 0.250386} + - time: 1.066667 + value: {x: 0.310588, y: 0.267007, z: 0.297104} + - time: 1.100000 + value: {x: 0.342420, y: 0.269926, z: 0.358372} + - time: 1.133333 + value: {x: 0.378391, y: 0.274652, z: 0.428637} + - time: 1.166667 + value: {x: 0.416004, y: 0.280611, z: 0.502564} + - time: 1.200000 + value: {x: 0.453178, y: 0.287315, z: 0.575574} + - time: 1.233333 + value: {x: 0.488433, y: 0.294716, z: 0.644441} + - time: 1.266667 + value: {x: 0.520533, y: 0.303139, z: 0.706788} + - time: 1.300000 + value: {x: 0.548533, y: 0.312569, z: 0.760246} + - time: 1.333333 + value: {x: 0.572143, y: 0.323048, z: 0.804450} + - time: 1.366667 + value: {x: 0.591184, y: 0.334527, z: 0.838944} + - time: 1.400000 + value: {x: 0.606944, y: 0.346528, z: 0.866531} + - time: 1.433333 + value: {x: 0.619614, y: 0.358877, z: 0.887468} + - time: 1.466667 + value: {x: 0.630146, y: 0.371249, z: 0.903883} + - time: 1.500000 + value: {x: 0.638945, y: 0.383440, z: 0.916543} + - time: 1.533333 + value: {x: 0.646267, y: 0.395559, z: 0.926288} + - time: 1.566667 + value: {x: 0.652469, y: 0.407420, z: 0.933472} + - time: 1.600000 + value: {x: 0.657768, y: 0.419185, z: 0.938936} + - time: 1.633333 + value: {x: 0.662344, y: 0.430758, z: 0.942835} + - time: 1.666667 + value: {x: 0.666325, y: 0.442182, z: 0.945527} + - time: 1.700000 + value: {x: 0.669821, y: 0.453462, z: 0.947247} + - time: 1.733333 + value: {x: 0.672873, y: 0.464601, z: 0.948048} + - time: 1.766667 + value: {x: 0.675491, y: 0.475605, z: 0.947976} + - time: 1.800000 + value: {x: 0.677706, y: 0.486452, z: 0.947090} + - time: 1.833333 + value: {x: 0.679545, y: 0.497121, z: 0.945408} + - time: 1.866667 + value: {x: 0.681021, y: 0.507701, z: 0.943166} + - time: 1.900000 + value: {x: 0.682025, y: 0.518030, z: 0.939669} + - time: 1.933333 + value: {x: 0.682637, y: 0.528306, z: 0.935613} + - time: 1.966667 + value: {x: 0.682975, y: 0.538393, z: 0.930964} + - time: 2.000000 + value: {x: 0.682881, y: 0.548315, z: 0.925360} + - time: 2.033333 + value: {x: 0.682436, y: 0.558072, z: 0.919056} + - time: 2.066667 + value: {x: 0.681825, y: 0.567643, z: 0.912442} + - time: 2.133333 + value: {x: 0.679665, y: 0.585915, z: 0.897310} + - time: 2.166667 + value: {x: 0.678342, y: 0.594554, z: 0.889293} + - time: 2.233333 + value: {x: 0.675408, y: 0.610667, z: 0.872761} + - time: 2.266667 + value: {x: 0.673829, y: 0.617956, z: 0.864165} + - time: 2.300000 + value: {x: 0.672229, y: 0.624973, z: 0.855690} + - time: 2.333333 + value: {x: 0.670578, y: 0.631459, z: 0.847271} + - time: 2.366667 + value: {x: 0.668963, y: 0.637491, z: 0.838721} + - time: 2.400000 + value: {x: 0.667341, y: 0.643067, z: 0.830407} + - time: 2.433333 + value: {x: 0.665763, y: 0.648105, z: 0.822014} + - time: 2.466667 + value: {x: 0.664231, y: 0.652818, z: 0.813824} + - time: 2.500000 + value: {x: 0.662729, y: 0.656893, z: 0.805768} + - time: 2.533333 + value: {x: 0.661283, y: 0.660975, z: 0.797974} + - time: 2.600000 + value: {x: 0.658565, y: 0.667387, z: 0.782671} + - time: 2.633333 + value: {x: 0.657304, y: 0.670222, z: 0.775248} + - time: 2.666667 + value: {x: 0.656118, y: 0.672618, z: 0.767881} + - time: 2.700000 + value: {x: 0.654974, y: 0.675080, z: 0.760787} + - time: 2.766667 + value: {x: 0.652911, y: 0.678956, z: 0.747134} + - time: 2.800000 + value: {x: 0.651945, y: 0.680920, z: 0.740653} + - time: 2.833333 + value: {x: 0.651103, y: 0.682323, z: 0.734187} + - time: 2.900000 + value: {x: 0.649543, y: 0.685226, z: 0.721835} + - time: 2.933333 + value: {x: 0.648892, y: 0.686362, z: 0.715966} + - time: 3.000000 + value: {x: 0.647715, y: 0.688693, z: 0.704758} + - time: 3.033333 + value: {x: 0.647250, y: 0.689646, z: 0.699285} + - time: 3.066667 + value: {x: 0.646848, y: 0.690541, z: 0.694081} + - time: 3.133333 + value: {x: 0.646133, y: 0.692509, z: 0.684129} + - time: 3.233333 + value: {x: 0.645572, y: 0.694821, z: 0.670109} + - time: 3.266667 + value: {x: 0.645428, y: 0.695731, z: 0.665766} + - time: 3.333333 + value: {x: 0.645282, y: 0.697114, z: 0.657035} + - time: 3.466667 + value: {x: 0.645181, y: 0.700202, z: 0.640586} + - time: 3.633333 + value: {x: 0.645264, y: 0.704290, z: 0.621029} + - time: 3.733333 + value: {x: 0.645415, y: 0.706972, z: 0.609786} + - time: 3.766667 + value: {x: 0.645481, y: 0.708012, z: 0.606313} + - time: 3.800000 + value: {x: 0.645474, y: 0.708880, z: 0.602360} + - time: 3.933333 + value: {x: 0.645695, y: 0.712973, z: 0.587934} + - time: 3.966667 + value: {x: 0.645808, y: 0.714158, z: 0.584686} + - time: 4.066667 + value: {x: 0.646007, y: 0.717538, z: 0.574094} + - time: 4.100000 + value: {x: 0.646081, y: 0.718844, z: 0.570894} + - time: 4.133333 + value: {x: 0.646226, y: 0.719992, z: 0.567439} + - time: 4.233333 + value: {x: 0.646804, y: 0.723946, z: 0.558209} + - time: 4.300000 + value: {x: 0.647287, y: 0.726791, z: 0.552487} + - time: 4.333333 + value: {x: 0.647488, y: 0.728135, z: 0.549306} + - time: 4.433333 + value: {x: 0.648282, y: 0.732604, z: 0.540837} + - time: 4.500000 + value: {x: 0.649003, y: 0.735791, z: 0.535802} + - time: 4.533333 + value: {x: 0.649409, y: 0.737506, z: 0.533574} + - time: 4.566667 + value: {x: 0.649892, y: 0.739066, z: 0.531107} + - time: 4.666667 + value: {x: 0.651521, y: 0.744244, z: 0.524886} + - time: 4.766666 + value: {x: 0.653512, y: 0.749741, z: 0.519647} + - time: 4.800000 + value: {x: 0.654257, y: 0.751651, z: 0.518131} + - time: 4.900000 + value: {x: 0.656744, y: 0.757578, z: 0.514200} + - time: 4.966667 + value: {x: 0.658600, y: 0.761795, z: 0.512283} + - time: 5.333333 + value: {x: 0.669445, y: 0.784490, z: 0.503613} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.296531, y: 0.296531, z: 0.296531} + - time: 0.366667 + value: {x: 0.325713, y: 0.325713, z: 0.325713} + - time: 0.666667 + value: {x: 0.350457, y: 0.350457, z: 0.350457} + - time: 1.000000 + value: {x: 0.378856, y: 0.378856, z: 0.378856} + - time: 1.333333 + value: {x: 0.408198, y: 0.408198, z: 0.408198} + - time: 1.666667 + value: {x: 0.438474, y: 0.438474, z: 0.438474} + - time: 2.000000 + value: {x: 0.469673, y: 0.469673, z: 0.469673} + - time: 2.333333 + value: {x: 0.501786, y: 0.501786, z: 0.501786} + - time: 2.666667 + value: {x: 0.534805, y: 0.534805, z: 0.534805} + - time: 3.000000 + value: {x: 0.568722, y: 0.568722, z: 0.568722} + - time: 3.333333 + value: {x: 0.603529, y: 0.603529, z: 0.603529} + - time: 3.666667 + value: {x: 0.639219, y: 0.639219, z: 0.639219} + - time: 4.000000 + value: {x: 0.675783, y: 0.675783, z: 0.675783} + - time: 4.333333 + value: {x: 0.713215, y: 0.713215, z: 0.713215} + - time: 4.666667 + value: {x: 0.751509, y: 0.751509, z: 0.751509} + - time: 5.000000 + value: {x: 0.790659, y: 0.790659, z: 0.790659} + - time: 5.333333 + value: {x: 0.830657, y: 0.830657, z: 0.830657} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_28: + position: + - time: 0.000000 + value: {x: -0.048565, y: 0.457088, z: -0.008051} + - time: 0.033333 + value: {x: -0.048792, y: 0.457085, z: -0.008087} + - time: 0.066667 + value: {x: -0.075640, y: 0.281598, z: -0.012284} + - time: 0.100000 + value: {x: -0.097357, y: 0.159868, z: -0.014657} + - time: 0.133333 + value: {x: -0.115498, y: 0.083672, z: -0.015826} + - time: 0.166667 + value: {x: -0.130914, y: 0.041600, z: -0.016087} + - time: 0.200000 + value: {x: -0.144021, y: 0.020485, z: -0.015492} + - time: 0.233333 + value: {x: -0.154746, y: 0.009479, z: -0.013845} + - time: 0.266667 + value: {x: -0.161773, y: 0.004257, z: -0.010141} + - time: 0.300000 + value: {x: -0.163727, y: 0.001813, z: -0.003264} + - time: 0.333333 + value: {x: -0.159550, y: 0.000768, z: 0.007666} + - time: 0.366667 + value: {x: -0.148306, y: 0.000788, z: 0.023162} + - time: 0.400000 + value: {x: -0.130122, y: 0.001822, z: 0.043352} + - time: 0.433333 + value: {x: -0.109555, y: 0.003898, z: 0.065036} + - time: 0.466667 + value: {x: -0.091714, y: 0.007050, z: 0.084406} + - time: 0.500000 + value: {x: -0.079316, y: 0.011618, z: 0.099799} + - time: 0.533333 + value: {x: -0.070884, y: 0.017791, z: 0.112092} + - time: 0.566667 + value: {x: -0.065160, y: 0.025990, z: 0.122196} + - time: 0.600000 + value: {x: -0.062115, y: 0.036173, z: 0.130280} + - time: 0.633333 + value: {x: -0.063124, y: 0.048283, z: 0.135422} + - time: 0.666667 + value: {x: -0.068844, y: 0.061662, z: 0.136958} + - time: 0.700000 + value: {x: -0.079237, y: 0.074189, z: 0.135044} + - time: 0.733333 + value: {x: -0.093175, y: 0.083183, z: 0.130377} + - time: 0.766667 + value: {x: -0.109755, y: 0.086493, z: 0.123902} + - time: 0.800000 + value: {x: -0.126444, y: 0.083894, z: 0.117023} + - time: 0.833333 + value: {x: -0.140788, y: 0.076104, z: 0.111941} + - time: 0.866667 + value: {x: -0.150647, y: 0.063547, z: 0.109749} + - time: 0.900000 + value: {x: -0.155837, y: 0.048579, z: 0.110866} + - time: 0.933333 + value: {x: -0.156787, y: 0.033663, z: 0.114932} + - time: 0.966667 + value: {x: -0.153364, y: 0.020793, z: 0.122086} + - time: 1.000000 + value: {x: -0.142766, y: 0.010606, z: 0.134207} + - time: 1.033333 + value: {x: -0.121241, y: 0.003256, z: 0.154188} + - time: 1.066667 + value: {x: -0.085587, y: -0.001373, z: 0.184038} + - time: 1.100000 + value: {x: -0.036742, y: -0.003502, z: 0.223283} + - time: 1.133333 + value: {x: 0.020265, y: -0.003799, z: 0.268235} + - time: 1.166667 + value: {x: 0.080626, y: -0.002858, z: 0.315441} + - time: 1.200000 + value: {x: 0.140281, y: -0.001054, z: 0.362161} + - time: 1.233333 + value: {x: 0.196351, y: 0.001617, z: 0.406414} + - time: 1.266667 + value: {x: 0.246565, y: 0.005187, z: 0.446197} + - time: 1.300000 + value: {x: 0.288954, y: 0.009991, z: 0.480577} + - time: 1.333333 + value: {x: 0.323063, y: 0.015801, z: 0.508875} + - time: 1.366667 + value: {x: 0.348514, y: 0.022638, z: 0.530919} + - time: 1.400000 + value: {x: 0.367801, y: 0.029979, z: 0.548432} + - time: 1.433333 + value: {x: 0.381225, y: 0.037806, z: 0.561835} + - time: 1.466667 + value: {x: 0.390653, y: 0.045697, z: 0.572338} + - time: 1.500000 + value: {x: 0.396821, y: 0.053553, z: 0.580607} + - time: 1.533333 + value: {x: 0.400337, y: 0.061176, z: 0.586676} + - time: 1.566667 + value: {x: 0.401721, y: 0.068808, z: 0.591476} + - time: 1.600000 + value: {x: 0.401536, y: 0.076210, z: 0.594894} + - time: 1.633333 + value: {x: 0.400039, y: 0.083533, z: 0.597432} + - time: 1.666667 + value: {x: 0.397505, y: 0.090726, z: 0.599168} + - time: 1.700000 + value: {x: 0.394141, y: 0.097790, z: 0.600249} + - time: 1.733333 + value: {x: 0.390015, y: 0.104768, z: 0.600774} + - time: 1.766667 + value: {x: 0.385149, y: 0.111634, z: 0.600720} + - time: 1.800000 + value: {x: 0.379603, y: 0.118376, z: 0.600145} + - time: 1.833333 + value: {x: 0.373408, y: 0.125010, z: 0.599121} + - time: 1.866667 + value: {x: 0.366671, y: 0.131405, z: 0.597444} + - time: 1.900000 + value: {x: 0.358998, y: 0.137883, z: 0.595455} + - time: 1.933333 + value: {x: 0.350750, y: 0.144090, z: 0.592700} + - time: 1.966667 + value: {x: 0.342036, y: 0.150183, z: 0.589645} + - time: 2.000000 + value: {x: 0.332543, y: 0.156218, z: 0.586101} + - time: 2.033333 + value: {x: 0.322459, y: 0.162105, z: 0.582091} + - time: 2.066667 + value: {x: 0.312137, y: 0.167830, z: 0.577874} + - time: 2.100000 + value: {x: 0.301026, y: 0.173363, z: 0.573232} + - time: 2.133333 + value: {x: 0.289908, y: 0.178500, z: 0.568234} + - time: 2.166667 + value: {x: 0.278441, y: 0.183363, z: 0.563100} + - time: 2.200000 + value: {x: 0.266809, y: 0.187941, z: 0.558032} + - time: 2.233333 + value: {x: 0.255174, y: 0.192003, z: 0.552513} + - time: 2.266667 + value: {x: 0.243373, y: 0.195746, z: 0.547257} + - time: 2.300000 + value: {x: 0.231652, y: 0.199106, z: 0.541855} + - time: 2.333333 + value: {x: 0.219952, y: 0.201821, z: 0.536264} + - time: 2.366667 + value: {x: 0.208293, y: 0.204363, z: 0.531008} + - time: 2.400000 + value: {x: 0.196774, y: 0.206251, z: 0.525537} + - time: 2.433333 + value: {x: 0.185319, y: 0.207837, z: 0.520364} + - time: 2.466667 + value: {x: 0.174047, y: 0.209049, z: 0.515202} + - time: 2.533333 + value: {x: 0.151988, y: 0.210087, z: 0.504913} + - time: 2.600000 + value: {x: 0.130586, y: 0.209545, z: 0.495097} + - time: 2.633333 + value: {x: 0.120153, y: 0.208968, z: 0.490387} + - time: 2.700000 + value: {x: 0.099787, y: 0.207193, z: 0.481419} + - time: 2.733333 + value: {x: 0.089908, y: 0.205856, z: 0.477071} + - time: 2.800000 + value: {x: 0.070696, y: 0.202903, z: 0.468405} + - time: 2.866667 + value: {x: 0.052243, y: 0.199259, z: 0.460425} + - time: 2.900000 + value: {x: 0.043201, y: 0.197573, z: 0.456735} + - time: 2.933333 + value: {x: 0.034443, y: 0.195512, z: 0.453062} + - time: 3.000000 + value: {x: 0.017397, y: 0.191330, z: 0.445760} + - time: 3.066667 + value: {x: 0.001061, y: 0.186995, z: 0.439211} + - time: 3.133333 + value: {x: -0.014663, y: 0.182562, z: 0.432642} + - time: 3.166667 + value: {x: -0.022219, y: 0.180224, z: 0.429631} + - time: 3.233333 + value: {x: -0.037042, y: 0.175818, z: 0.424025} + - time: 3.266667 + value: {x: -0.044245, y: 0.173561, z: 0.421061} + - time: 3.333333 + value: {x: -0.058404, y: 0.169097, z: 0.415809} + - time: 3.466667 + value: {x: -0.085664, y: 0.160418, z: 0.405472} + - time: 3.600000 + value: {x: -0.111818, y: 0.152197, z: 0.395643} + - time: 3.700000 + value: {x: -0.130931, y: 0.146284, z: 0.388298} + - time: 3.733333 + value: {x: -0.137153, y: 0.144541, z: 0.386200} + - time: 3.766667 + value: {x: -0.143246, y: 0.142635, z: 0.383716} + - time: 3.800000 + value: {x: -0.149571, y: 0.140929, z: 0.381506} + - time: 3.866667 + value: {x: -0.161812, y: 0.137401, z: 0.376718} + - time: 3.900000 + value: {x: -0.167829, y: 0.135838, z: 0.374656} + - time: 3.966667 + value: {x: -0.179472, y: 0.132622, z: 0.370216} + - time: 4.000000 + value: {x: -0.185312, y: 0.131220, z: 0.368283} + - time: 4.033333 + value: {x: -0.191172, y: 0.129614, z: 0.365803} + - time: 4.066667 + value: {x: -0.197019, y: 0.128311, z: 0.363878} + - time: 4.100000 + value: {x: -0.202667, y: 0.126811, z: 0.361531} + - time: 4.133333 + value: {x: -0.208303, y: 0.125611, z: 0.359739} + - time: 4.200000 + value: {x: -0.219117, y: 0.122978, z: 0.355585} + - time: 4.266666 + value: {x: -0.229609, y: 0.120783, z: 0.352153} + - time: 4.300000 + value: {x: -0.234752, y: 0.119595, z: 0.350133} + - time: 4.333333 + value: {x: -0.240037, y: 0.118661, z: 0.348477} + - time: 4.400000 + value: {x: -0.250132, y: 0.116603, z: 0.344706} + - time: 4.433333 + value: {x: -0.255082, y: 0.115839, z: 0.343304} + - time: 4.533333 + value: {x: -0.269034, y: 0.113273, z: 0.338395} + - time: 4.566667 + value: {x: -0.273527, y: 0.112696, z: 0.337255} + - time: 4.600000 + value: {x: -0.277807, y: 0.111905, z: 0.335665} + - time: 4.666667 + value: {x: -0.286180, y: 0.110872, z: 0.333483} + - time: 4.700000 + value: {x: -0.290117, y: 0.110217, z: 0.332079} + - time: 4.733333 + value: {x: -0.293997, y: 0.109762, z: 0.331044} + - time: 4.766666 + value: {x: -0.297806, y: 0.109468, z: 0.330296} + - time: 4.833333 + value: {x: -0.304944, y: 0.108666, z: 0.328293} + - time: 4.866667 + value: {x: -0.308357, y: 0.108380, z: 0.327480} + - time: 4.900000 + value: {x: -0.311702, y: 0.108271, z: 0.326985} + - time: 4.933333 + value: {x: -0.314858, y: 0.108020, z: 0.326180} + - time: 5.000000 + value: {x: -0.320870, y: 0.107810, z: 0.325058} + - time: 5.333333 + value: {x: -0.348489, y: 0.107440, z: 0.320669} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.661496, y: 0.661496, z: 0.661496} + - time: 0.466667 + value: {x: 0.694332, y: 0.694332, z: 0.694332} + - time: 1.000000 + value: {x: 0.732691, y: 0.732691, z: 0.732691} + - time: 1.533333 + value: {x: 0.771931, y: 0.771931, z: 0.771931} + - time: 2.066667 + value: {x: 0.812045, y: 0.812045, z: 0.812045} + - time: 2.600000 + value: {x: 0.853027, y: 0.853027, z: 0.853027} + - time: 3.133333 + value: {x: 0.894870, y: 0.894870, z: 0.894870} + - time: 3.666667 + value: {x: 0.937569, y: 0.937569, z: 0.937569} + - time: 4.200000 + value: {x: 0.981118, y: 0.981118, z: 0.981118} + - time: 4.766666 + value: {x: 1.028315, y: 1.028315, z: 1.028315} + - time: 5.333333 + value: {x: 1.076459, y: 1.076459, z: 1.076459} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_29: + position: + - time: 0.000000 + value: {x: 0.040389, y: 0.463761, z: 0.025541} + - time: 0.033333 + value: {x: 0.040582, y: 0.463790, z: 0.025664} + - time: 0.066667 + value: {x: 0.063778, y: 0.292060, z: 0.040366} + - time: 0.100000 + value: {x: 0.085852, y: 0.173606, z: 0.054531} + - time: 0.133333 + value: {x: 0.107043, y: 0.100355, z: 0.068217} + - time: 0.166667 + value: {x: 0.127578, y: 0.060985, z: 0.081532} + - time: 0.200000 + value: {x: 0.147736, y: 0.042366, z: 0.094689} + - time: 0.233333 + value: {x: 0.168086, y: 0.033687, z: 0.108072} + - time: 0.266667 + value: {x: 0.190326, y: 0.030673, z: 0.122828} + - time: 0.300000 + value: {x: 0.216081, y: 0.030312, z: 0.140168} + - time: 0.333333 + value: {x: 0.246597, y: 0.031217, z: 0.161048} + - time: 0.366667 + value: {x: 0.283065, y: 0.033150, z: 0.186067} + - time: 0.400000 + value: {x: 0.325421, y: 0.036000, z: 0.215385} + - time: 0.433333 + value: {x: 0.369213, y: 0.039794, z: 0.245843} + - time: 0.466667 + value: {x: 0.409507, y: 0.044653, z: 0.273689} + - time: 0.500000 + value: {x: 0.443560, y: 0.050820, z: 0.297263} + - time: 0.533333 + value: {x: 0.472999, y: 0.058569, z: 0.317489} + - time: 0.566667 + value: {x: 0.499142, y: 0.068329, z: 0.335300} + - time: 0.600000 + value: {x: 0.522013, y: 0.080004, z: 0.350871} + - time: 0.633333 + value: {x: 0.540262, y: 0.093523, z: 0.363290} + - time: 0.666667 + value: {x: 0.553356, y: 0.108317, z: 0.371930} + - time: 0.700000 + value: {x: 0.561318, y: 0.122217, z: 0.376949} + - time: 0.733333 + value: {x: 0.565356, y: 0.132592, z: 0.379066} + - time: 0.766667 + value: {x: 0.566277, y: 0.137174, z: 0.379207} + - time: 0.800000 + value: {x: 0.566811, y: 0.135910, z: 0.378826} + - time: 0.833333 + value: {x: 0.569247, y: 0.129333, z: 0.380087} + - time: 0.866667 + value: {x: 0.575931, y: 0.118052, z: 0.384137} + - time: 0.900000 + value: {x: 0.586943, y: 0.104308, z: 0.391371} + - time: 0.933333 + value: {x: 0.601898, y: 0.090589, z: 0.401442} + - time: 0.966667 + value: {x: 0.620925, y: 0.078872, z: 0.414493} + - time: 1.000000 + value: {x: 0.646894, y: 0.069850, z: 0.432417} + - time: 1.033333 + value: {x: 0.683479, y: 0.063589, z: 0.458091} + - time: 1.066667 + value: {x: 0.734012, y: 0.060086, z: 0.493557} + - time: 1.100000 + value: {x: 0.797483, y: 0.059042, z: 0.538328} + - time: 1.133333 + value: {x: 0.868916, y: 0.059836, z: 0.588727} + - time: 1.166667 + value: {x: 0.943525, y: 0.061882, z: 0.641308} + - time: 1.200000 + value: {x: 1.017194, y: 0.064746, z: 0.693320} + - time: 1.233333 + value: {x: 1.087023, y: 0.068399, z: 0.742775} + - time: 1.266667 + value: {x: 1.150907, y: 0.073034, z: 0.787717} + - time: 1.300000 + value: {x: 1.206691, y: 0.078796, z: 0.827161} + - time: 1.333333 + value: {x: 1.254072, y: 0.085603, z: 0.860471} + - time: 1.366667 + value: {x: 1.292641, y: 0.093434, z: 0.887467} + - time: 1.400000 + value: {x: 1.324919, y: 0.101793, z: 0.909880} + - time: 1.433333 + value: {x: 1.351129, y: 0.110577, z: 0.928112} + - time: 1.466667 + value: {x: 1.373194, y: 0.119415, z: 0.943388} + - time: 1.500000 + value: {x: 1.391795, y: 0.128153, z: 0.956358} + - time: 1.533333 + value: {x: 1.407713, y: 0.136756, z: 0.967105} + - time: 1.566667 + value: {x: 1.421238, y: 0.145235, z: 0.976499} + - time: 1.600000 + value: {x: 1.433155, y: 0.153569, z: 0.984482} + - time: 1.633333 + value: {x: 1.443588, y: 0.161773, z: 0.991528} + - time: 1.666667 + value: {x: 1.452866, y: 0.169848, z: 0.997727} + - time: 1.700000 + value: {x: 1.461205, y: 0.177797, z: 1.003224} + - time: 1.733333 + value: {x: 1.468648, y: 0.185640, z: 1.008120} + - time: 1.766667 + value: {x: 1.475243, y: 0.193369, z: 1.012393} + - time: 1.800000 + value: {x: 1.481043, y: 0.200965, z: 1.016102} + - time: 1.833333 + value: {x: 1.486062, y: 0.208425, z: 1.019316} + - time: 1.866667 + value: {x: 1.490529, y: 0.215737, z: 1.021858} + - time: 1.900000 + value: {x: 1.493789, y: 0.222961, z: 1.024009} + - time: 1.933333 + value: {x: 1.496505, y: 0.230040, z: 1.025390} + - time: 1.966667 + value: {x: 1.498628, y: 0.236975, z: 1.026421} + - time: 2.000000 + value: {x: 1.499832, y: 0.243802, z: 1.026918} + - time: 2.033333 + value: {x: 1.500352, y: 0.250480, z: 1.026913} + - time: 2.066667 + value: {x: 1.500541, y: 0.256991, z: 1.026666} + - time: 2.100000 + value: {x: 1.499778, y: 0.263237, z: 1.025941} + - time: 2.133333 + value: {x: 1.499049, y: 0.269212, z: 1.024858} + - time: 2.166667 + value: {x: 1.497822, y: 0.274849, z: 1.023592} + - time: 2.200000 + value: {x: 1.496254, y: 0.280106, z: 1.022334} + - time: 2.233333 + value: {x: 1.494771, y: 0.285017, z: 1.020637} + - time: 2.266667 + value: {x: 1.492868, y: 0.289433, z: 1.019128} + - time: 2.300000 + value: {x: 1.491033, y: 0.293534, z: 1.017459} + - time: 2.333333 + value: {x: 1.489210, y: 0.297058, z: 1.015589} + - time: 2.366667 + value: {x: 1.487208, y: 0.300267, z: 1.013987} + - time: 2.400000 + value: {x: 1.485386, y: 0.302932, z: 1.012173} + - time: 2.433333 + value: {x: 1.483436, y: 0.305179, z: 1.010594} + - time: 2.466667 + value: {x: 1.481628, y: 0.307084, z: 1.009011} + - time: 2.533333 + value: {x: 1.478369, y: 0.309590, z: 1.005815} + - time: 2.600000 + value: {x: 1.475429, y: 0.310457, z: 1.002965} + - time: 2.633333 + value: {x: 1.474099, y: 0.310561, z: 1.001694} + - time: 2.700000 + value: {x: 1.471660, y: 0.310062, z: 0.999505} + - time: 2.733333 + value: {x: 1.470659, y: 0.309376, z: 0.998512} + - time: 2.800000 + value: {x: 1.469120, y: 0.307832, z: 0.996508} + - time: 2.833333 + value: {x: 1.468409, y: 0.306661, z: 0.995882} + - time: 2.866667 + value: {x: 1.467975, y: 0.305484, z: 0.995065} + - time: 2.900000 + value: {x: 1.467404, y: 0.304355, z: 0.994585} + - time: 2.933333 + value: {x: 1.467120, y: 0.302915, z: 0.994116} + - time: 3.000000 + value: {x: 1.466930, y: 0.300058, z: 0.993171} + - time: 3.033333 + value: {x: 1.466890, y: 0.298526, z: 0.993014} + - time: 3.100000 + value: {x: 1.467412, y: 0.295314, z: 0.992560} + - time: 3.166667 + value: {x: 1.468222, y: 0.292059, z: 0.992484} + - time: 3.233333 + value: {x: 1.469237, y: 0.288762, z: 0.992869} + - time: 3.266667 + value: {x: 1.469981, y: 0.287168, z: 0.992898} + - time: 3.333333 + value: {x: 1.471311, y: 0.283794, z: 0.993504} + - time: 3.533333 + value: {x: 1.476190, y: 0.274341, z: 0.995377} + - time: 3.700000 + value: {x: 1.480488, y: 0.267178, z: 0.996841} + - time: 3.733333 + value: {x: 1.481272, y: 0.265877, z: 0.997400} + - time: 3.766667 + value: {x: 1.482328, y: 0.264601, z: 0.997602} + - time: 3.800000 + value: {x: 1.482909, y: 0.263332, z: 0.998011} + - time: 3.833333 + value: {x: 1.483760, y: 0.262100, z: 0.998169} + - time: 3.900000 + value: {x: 1.485333, y: 0.259797, z: 0.998970} + - time: 3.966667 + value: {x: 1.487298, y: 0.257668, z: 0.999662} + - time: 4.000000 + value: {x: 1.488054, y: 0.256673, z: 1.000231} + - time: 4.033333 + value: {x: 1.488959, y: 0.255687, z: 1.000289} + - time: 4.066667 + value: {x: 1.489593, y: 0.254763, z: 1.000828} + - time: 4.100000 + value: {x: 1.490610, y: 0.253870, z: 1.000981} + - time: 4.166667 + value: {x: 1.492313, y: 0.252245, z: 1.002082} + - time: 4.200000 + value: {x: 1.493517, y: 0.251488, z: 1.002346} + - time: 4.266666 + value: {x: 1.495588, y: 0.250134, z: 1.003672} + - time: 4.300000 + value: {x: 1.496804, y: 0.249510, z: 1.004042} + - time: 4.333333 + value: {x: 1.497635, y: 0.248937, z: 1.004710} + - time: 4.400000 + value: {x: 1.499950, y: 0.247905, z: 1.005613} + - time: 4.433333 + value: {x: 1.500958, y: 0.247468, z: 1.006478} + - time: 4.533333 + value: {x: 1.505145, y: 0.246393, z: 1.008399} + - time: 4.566667 + value: {x: 1.506439, y: 0.246137, z: 1.009462} + - time: 4.600000 + value: {x: 1.508152, y: 0.245907, z: 1.010117} + - time: 4.666667 + value: {x: 1.511256, y: 0.245612, z: 1.012290} + - time: 4.700000 + value: {x: 1.513195, y: 0.245517, z: 1.013086} + - time: 4.733333 + value: {x: 1.515005, y: 0.245480, z: 1.014202} + - time: 4.766666 + value: {x: 1.516741, y: 0.245495, z: 1.015564} + - time: 4.866667 + value: {x: 1.523056, y: 0.245786, z: 1.019100} + - time: 4.900000 + value: {x: 1.525111, y: 0.245988, z: 1.020657} + - time: 4.933333 + value: {x: 1.527494, y: 0.246224, z: 1.021937} + - time: 5.333333 + value: {x: 1.555927, y: 0.250324, z: 1.039858} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.661496, y: 0.661496, z: 0.661496} + - time: 0.466667 + value: {x: 0.694332, y: 0.694332, z: 0.694332} + - time: 1.000000 + value: {x: 0.732691, y: 0.732691, z: 0.732691} + - time: 1.533333 + value: {x: 0.771931, y: 0.771931, z: 0.771931} + - time: 2.066667 + value: {x: 0.812045, y: 0.812045, z: 0.812045} + - time: 2.600000 + value: {x: 0.853027, y: 0.853027, z: 0.853027} + - time: 3.133333 + value: {x: 0.894870, y: 0.894870, z: 0.894870} + - time: 3.666667 + value: {x: 0.937569, y: 0.937569, z: 0.937569} + - time: 4.200000 + value: {x: 0.981118, y: 0.981118, z: 0.981118} + - time: 4.766666 + value: {x: 1.028315, y: 1.028315, z: 1.028315} + - time: 5.333333 + value: {x: 1.076459, y: 1.076459, z: 1.076459} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_3: + position: + - time: 0.000000 + value: {x: -0.000742, y: 0.457730, z: 0.000000} + - time: 0.033333 + value: {x: -0.000742, y: 0.457730, z: 0.000000} + - time: 0.066667 + value: {x: -0.000580, y: 0.282607, z: 0.000000} + - time: 0.100000 + value: {x: 0.001758, y: 0.161182, z: 0.000000} + - time: 0.133333 + value: {x: 0.005530, y: 0.085264, z: 0.000000} + - time: 0.166667 + value: {x: 0.010398, y: 0.043457, z: 0.000000} + - time: 0.200000 + value: {x: 0.016329, y: 0.022582, z: 0.000000} + - time: 0.233333 + value: {x: 0.023739, y: 0.011796, z: 0.000000} + - time: 0.266667 + value: {x: 0.034477, y: 0.006799, z: 0.000000} + - time: 0.300000 + value: {x: 0.050422, y: 0.004559, z: 0.000000} + - time: 0.333333 + value: {x: 0.073030, y: 0.003674, z: 0.000000} + - time: 0.366667 + value: {x: 0.103518, y: 0.003901, z: 0.000000} + - time: 0.400000 + value: {x: 0.141860, y: 0.005112, z: 0.000000} + - time: 0.433333 + value: {x: 0.182536, y: 0.007328, z: 0.000000} + - time: 0.466667 + value: {x: 0.219291, y: 0.010668, z: 0.000000} + - time: 0.500000 + value: {x: 0.248894, y: 0.015363, z: 0.000000} + - time: 0.533333 + value: {x: 0.273163, y: 0.021688, z: 0.000000} + - time: 0.566667 + value: {x: 0.293682, y: 0.030067, z: 0.000000} + - time: 0.600000 + value: {x: 0.310546, y: 0.040399, z: 0.000000} + - time: 0.633333 + value: {x: 0.322106, y: 0.052606, z: 0.000000} + - time: 0.666667 + value: {x: 0.327537, y: 0.066125, z: 0.000000} + - time: 0.700000 + value: {x: 0.326933, y: 0.078779, z: 0.000000} + - time: 0.733333 + value: {x: 0.321675, y: 0.087941, z: 0.000000} + - time: 0.766667 + value: {x: 0.312951, y: 0.091330, z: 0.000000} + - time: 0.800000 + value: {x: 0.303805, y: 0.088904, z: 0.000000} + - time: 0.833333 + value: {x: 0.297356, y: 0.081183, z: 0.000000} + - time: 0.866667 + value: {x: 0.296157, y: 0.068786, z: 0.000000} + - time: 0.900000 + value: {x: 0.300501, y: 0.053944, z: 0.000000} + - time: 0.933333 + value: {x: 0.309864, y: 0.039148, z: 0.000000} + - time: 0.966667 + value: {x: 0.324424, y: 0.026371, z: 0.000000} + - time: 1.000000 + value: {x: 0.347606, y: 0.016308, z: 0.000000} + - time: 1.033333 + value: {x: 0.384074, y: 0.009019, z: 0.000000} + - time: 1.066667 + value: {x: 0.437710, y: 0.004508, z: 0.000000} + - time: 1.100000 + value: {x: 0.507408, y: 0.002471, z: 0.000000} + - time: 1.133333 + value: {x: 0.586975, y: 0.002288, z: 0.000000} + - time: 1.166667 + value: {x: 0.670508, y: 0.003374, z: 0.000000} + - time: 1.200000 + value: {x: 0.753056, y: 0.005288, z: 0.000000} + - time: 1.233333 + value: {x: 0.831104, y: 0.008001, z: 0.000000} + - time: 1.266667 + value: {x: 0.901784, y: 0.011716, z: 0.000000} + - time: 1.300000 + value: {x: 0.962783, y: 0.016562, z: 0.000000} + - time: 1.333333 + value: {x: 1.013471, y: 0.022468, z: 0.000000} + - time: 1.366667 + value: {x: 1.053407, y: 0.029412, z: 0.000000} + - time: 1.400000 + value: {x: 1.085646, y: 0.036897, z: 0.000000} + - time: 1.433333 + value: {x: 1.110605, y: 0.044814, z: 0.000000} + - time: 1.466667 + value: {x: 1.130556, y: 0.052795, z: 0.000000} + - time: 1.500000 + value: {x: 1.146432, y: 0.060681, z: 0.000000} + - time: 1.533333 + value: {x: 1.158901, y: 0.068451, z: 0.000000} + - time: 1.566667 + value: {x: 1.168721, y: 0.076098, z: 0.000000} + - time: 1.600000 + value: {x: 1.176480, y: 0.083615, z: 0.000000} + - time: 1.633333 + value: {x: 1.182559, y: 0.091008, z: 0.000000} + - time: 1.666667 + value: {x: 1.187275, y: 0.098281, z: 0.000000} + - time: 1.700000 + value: {x: 1.190885, y: 0.105437, z: 0.000000} + - time: 1.733333 + value: {x: 1.193483, y: 0.112495, z: 0.000000} + - time: 1.766667 + value: {x: 1.195093, y: 0.119447, z: 0.000000} + - time: 1.800000 + value: {x: 1.195790, y: 0.126275, z: 0.000000} + - time: 1.833333 + value: {x: 1.195626, y: 0.132973, z: 0.000000} + - time: 1.866667 + value: {x: 1.194675, y: 0.139537, z: 0.000000} + - time: 1.900000 + value: {x: 1.192584, y: 0.146008, z: 0.000000} + - time: 1.933333 + value: {x: 1.189651, y: 0.152352, z: 0.000000} + - time: 1.966667 + value: {x: 1.186089, y: 0.158555, z: 0.000000} + - time: 2.000000 + value: {x: 1.181526, y: 0.164655, z: 0.000000} + - time: 2.033333 + value: {x: 1.176168, y: 0.170614, z: 0.000000} + - time: 2.066667 + value: {x: 1.170452, y: 0.176413, z: 0.000000} + - time: 2.100000 + value: {x: 1.163739, y: 0.181947, z: 0.000000} + - time: 2.133333 + value: {x: 1.156888, y: 0.187226, z: 0.000000} + - time: 2.166667 + value: {x: 1.149579, y: 0.192169, z: 0.000000} + - time: 2.200000 + value: {x: 1.142051, y: 0.196733, z: 0.000000} + - time: 2.233333 + value: {x: 1.134373, y: 0.200968, z: 0.000000} + - time: 2.266667 + value: {x: 1.126520, y: 0.204703, z: 0.000000} + - time: 2.300000 + value: {x: 1.118671, y: 0.208133, z: 0.000000} + - time: 2.333333 + value: {x: 1.110756, y: 0.210998, z: 0.000000} + - time: 2.366667 + value: {x: 1.102905, y: 0.213542, z: 0.000000} + - time: 2.400000 + value: {x: 1.095113, y: 0.215559, z: 0.000000} + - time: 2.433333 + value: {x: 1.087404, y: 0.217153, z: 0.000000} + - time: 2.466667 + value: {x: 1.079848, y: 0.218413, z: 0.000000} + - time: 2.533333 + value: {x: 1.065128, y: 0.219655, z: 0.000000} + - time: 2.600000 + value: {x: 1.051036, y: 0.219273, z: 0.000000} + - time: 2.633333 + value: {x: 1.044254, y: 0.218758, z: 0.000000} + - time: 2.700000 + value: {x: 1.031197, y: 0.217034, z: 0.000000} + - time: 2.733333 + value: {x: 1.024961, y: 0.215744, z: 0.000000} + - time: 2.800000 + value: {x: 1.012962, y: 0.213014, z: 0.000000} + - time: 2.833333 + value: {x: 1.007291, y: 0.211248, z: 0.000000} + - time: 2.900000 + value: {x: 0.996363, y: 0.207777, z: 0.000000} + - time: 2.966667 + value: {x: 0.986250, y: 0.203742, z: 0.000000} + - time: 3.033333 + value: {x: 0.976743, y: 0.199670, z: 0.000000} + - time: 3.133333 + value: {x: 0.963725, y: 0.193269, z: 0.000000} + - time: 3.233333 + value: {x: 0.952152, y: 0.186618, z: 0.000000} + - time: 3.333333 + value: {x: 0.941440, y: 0.180061, z: 0.000000} + - time: 3.466667 + value: {x: 0.928127, y: 0.171600, z: 0.000000} + - time: 3.633333 + value: {x: 0.912426, y: 0.161650, z: 0.000000} + - time: 3.733333 + value: {x: 0.903481, y: 0.156127, z: 0.000000} + - time: 3.866667 + value: {x: 0.891607, y: 0.149288, z: 0.000000} + - time: 3.966667 + value: {x: 0.883410, y: 0.144654, z: 0.000000} + - time: 4.033333 + value: {x: 0.877860, y: 0.141769, z: 0.000000} + - time: 4.133333 + value: {x: 0.869886, y: 0.137780, z: 0.000000} + - time: 4.233333 + value: {x: 0.862792, y: 0.134232, z: 0.000000} + - time: 4.366667 + value: {x: 0.853881, y: 0.130147, z: 0.000000} + - time: 4.466667 + value: {x: 0.847928, y: 0.127574, z: 0.000000} + - time: 4.566667 + value: {x: 0.842972, y: 0.125431, z: 0.000000} + - time: 4.666667 + value: {x: 0.839014, y: 0.123720, z: 0.000000} + - time: 4.766666 + value: {x: 0.836061, y: 0.122444, z: 0.000000} + - time: 4.866667 + value: {x: 0.834127, y: 0.121608, z: 0.000000} + - time: 4.966667 + value: {x: 0.833237, y: 0.121223, z: 0.000000} + - time: 5.333333 + value: {x: 0.833178, y: 0.121198, z: 0.000000} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.400714, y: 0.400714, z: 0.400714} + - time: 0.033333 + value: {x: 0.419434, y: 0.419434, z: 0.419434} + - time: 0.066667 + value: {x: 0.438520, y: 0.438520, z: 0.438520} + - time: 0.100000 + value: {x: 0.457968, y: 0.457968, z: 0.457968} + - time: 0.133333 + value: {x: 0.477777, y: 0.477777, z: 0.477777} + - time: 0.166667 + value: {x: 0.497945, y: 0.497945, z: 0.497945} + - time: 0.200000 + value: {x: 0.518469, y: 0.518469, z: 0.518469} + - time: 0.233333 + value: {x: 0.539347, y: 0.539347, z: 0.539347} + - time: 0.266667 + value: {x: 0.560577, y: 0.560577, z: 0.560577} + - time: 0.300000 + value: {x: 0.582158, y: 0.582158, z: 0.582158} + - time: 0.333333 + value: {x: 0.604087, y: 0.604087, z: 0.604087} + - time: 0.366667 + value: {x: 0.626363, y: 0.626363, z: 0.626363} + - time: 0.400000 + value: {x: 0.648983, y: 0.648983, z: 0.648983} + - time: 0.433333 + value: {x: 0.671946, y: 0.671946, z: 0.671946} + - time: 0.466667 + value: {x: 0.695251, y: 0.695251, z: 0.695251} + - time: 0.500000 + value: {x: 0.718896, y: 0.718896, z: 0.718896} + - time: 0.533333 + value: {x: 0.742878, y: 0.742878, z: 0.742878} + - time: 0.566667 + value: {x: 0.767198, y: 0.767198, z: 0.767198} + - time: 0.600000 + value: {x: 0.791851, y: 0.791851, z: 0.791851} + - time: 0.633333 + value: {x: 0.816839, y: 0.816839, z: 0.816839} + - time: 0.666667 + value: {x: 0.842159, y: 0.842159, z: 0.842159} + - time: 0.700000 + value: {x: 0.867808, y: 0.867808, z: 0.867808} + - time: 0.733333 + value: {x: 0.893788, y: 0.893788, z: 0.893788} + - time: 0.766667 + value: {x: 0.920095, y: 0.920095, z: 0.920095} + - time: 0.800000 + value: {x: 0.946728, y: 0.946728, z: 0.946728} + - time: 0.833333 + value: {x: 0.973686, y: 0.973686, z: 0.973686} + - time: 0.866667 + value: {x: 1.000968, y: 1.000968, z: 1.000968} + - time: 0.900000 + value: {x: 1.028572, y: 1.028572, z: 1.028572} + - time: 0.933333 + value: {x: 1.056498, y: 1.056498, z: 1.056498} + - time: 0.966667 + value: {x: 1.084744, y: 1.084744, z: 1.084744} + - time: 1.000000 + value: {x: 1.113308, y: 1.113308, z: 1.113308} + - time: 1.033333 + value: {x: 1.142190, y: 1.142190, z: 1.142190} + - time: 1.066667 + value: {x: 1.171389, y: 1.171389, z: 1.171389} + - time: 1.100000 + value: {x: 1.200902, y: 1.200902, z: 1.200902} + - time: 1.133333 + value: {x: 1.230731, y: 1.230731, z: 1.230731} + - time: 1.166667 + value: {x: 1.260872, y: 1.260872, z: 1.260872} + - time: 1.200000 + value: {x: 1.291324, y: 1.291324, z: 1.291324} + - time: 1.233333 + value: {x: 1.322089, y: 1.322089, z: 1.322089} + - time: 1.266667 + value: {x: 1.353163, y: 1.353163, z: 1.353163} + - time: 1.300000 + value: {x: 1.384545, y: 1.384545, z: 1.384545} + - time: 1.333333 + value: {x: 1.416236, y: 1.416236, z: 1.416236} + - time: 1.366667 + value: {x: 1.448234, y: 1.448234, z: 1.448234} + - time: 1.400000 + value: {x: 1.480537, y: 1.480537, z: 1.480537} + - time: 1.433333 + value: {x: 1.513146, y: 1.513146, z: 1.513146} + - time: 1.466667 + value: {x: 1.546058, y: 1.546058, z: 1.546058} + - time: 1.500000 + value: {x: 1.579273, y: 1.579273, z: 1.579273} + - time: 1.533333 + value: {x: 1.612791, y: 1.612791, z: 1.612791} + - time: 1.566667 + value: {x: 1.646609, y: 1.646609, z: 1.646609} + - time: 1.600000 + value: {x: 1.680728, y: 1.680728, z: 1.680728} + - time: 1.633333 + value: {x: 1.715147, y: 1.715147, z: 1.715147} + - time: 1.666667 + value: {x: 1.749864, y: 1.749864, z: 1.749864} + - time: 1.700000 + value: {x: 1.784878, y: 1.784878, z: 1.784878} + - time: 1.733333 + value: {x: 1.820190, y: 1.820190, z: 1.820190} + - time: 1.766667 + value: {x: 1.855798, y: 1.855798, z: 1.855798} + - time: 1.800000 + value: {x: 1.891701, y: 1.891701, z: 1.891701} + - time: 1.833333 + value: {x: 1.927899, y: 1.927899, z: 1.927899} + - time: 1.866667 + value: {x: 1.964390, y: 1.964390, z: 1.964390} + - time: 1.900000 + value: {x: 2.001174, y: 2.001174, z: 2.001174} + - time: 1.933333 + value: {x: 2.038250, y: 2.038250, z: 2.038250} + - time: 1.966667 + value: {x: 2.075617, y: 2.075617, z: 2.075617} + - time: 2.000000 + value: {x: 2.113275, y: 2.113275, z: 2.113275} + - time: 2.033333 + value: {x: 2.151223, y: 2.151223, z: 2.151223} + - time: 2.066667 + value: {x: 2.189460, y: 2.189460, z: 2.189460} + - time: 2.100000 + value: {x: 2.227985, y: 2.227985, z: 2.227985} + - time: 2.133333 + value: {x: 2.266797, y: 2.266797, z: 2.266797} + - time: 2.166667 + value: {x: 2.305897, y: 2.305897, z: 2.305897} + - time: 2.200000 + value: {x: 2.345283, y: 2.345283, z: 2.345283} + - time: 2.233333 + value: {x: 2.384955, y: 2.384955, z: 2.384955} + - time: 2.266667 + value: {x: 2.424911, y: 2.424911, z: 2.424911} + - time: 2.300000 + value: {x: 2.465151, y: 2.465151, z: 2.465151} + - time: 2.333333 + value: {x: 2.505676, y: 2.505676, z: 2.505676} + - time: 2.366667 + value: {x: 2.546482, y: 2.546482, z: 2.546482} + - time: 2.400000 + value: {x: 2.587570, y: 2.587570, z: 2.587570} + - time: 2.433333 + value: {x: 2.628942, y: 2.628942, z: 2.628942} + - time: 2.466667 + value: {x: 2.670593, y: 2.670593, z: 2.670593} + - time: 2.500000 + value: {x: 2.712525, y: 2.712525, z: 2.712525} + - time: 2.533333 + value: {x: 2.754737, y: 2.754737, z: 2.754737} + - time: 2.566667 + value: {x: 2.797227, y: 2.797227, z: 2.797227} + - time: 2.600000 + value: {x: 2.839996, y: 2.839996, z: 2.839996} + - time: 2.633333 + value: {x: 2.883043, y: 2.883043, z: 2.883043} + - time: 2.666667 + value: {x: 2.926366, y: 2.926366, z: 2.926366} + - time: 2.700000 + value: {x: 2.969967, y: 2.969967, z: 2.969967} + - time: 2.733333 + value: {x: 3.013844, y: 3.013844, z: 3.013844} + - time: 2.766667 + value: {x: 3.057996, y: 3.057996, z: 3.057996} + - time: 2.800000 + value: {x: 3.102423, y: 3.102423, z: 3.102423} + - time: 2.833333 + value: {x: 3.147125, y: 3.147125, z: 3.147125} + - time: 2.866667 + value: {x: 3.192100, y: 3.192100, z: 3.192100} + - time: 2.900000 + value: {x: 3.237348, y: 3.237348, z: 3.237348} + - time: 2.933333 + value: {x: 3.282870, y: 3.282870, z: 3.282870} + - time: 2.966667 + value: {x: 3.328663, y: 3.328663, z: 3.328663} + - time: 3.000000 + value: {x: 3.374727, y: 3.374727, z: 3.374727} + - time: 3.033333 + value: {x: 3.421064, y: 3.421064, z: 3.421064} + - time: 3.066667 + value: {x: 3.467670, y: 3.467670, z: 3.467670} + - time: 3.100000 + value: {x: 3.514546, y: 3.514546, z: 3.514546} + - time: 3.133333 + value: {x: 3.561692, y: 3.561692, z: 3.561692} + - time: 3.166667 + value: {x: 3.609108, y: 3.609108, z: 3.609108} + - time: 3.200000 + value: {x: 3.656791, y: 3.656791, z: 3.656791} + - time: 3.233333 + value: {x: 3.704742, y: 3.704742, z: 3.704742} + - time: 3.266667 + value: {x: 3.752961, y: 3.752961, z: 3.752961} + - time: 3.300000 + value: {x: 3.801447, y: 3.801447, z: 3.801447} + - time: 3.333333 + value: {x: 3.850199, y: 3.850199, z: 3.850199} + - time: 3.366667 + value: {x: 3.899218, y: 3.899218, z: 3.899218} + - time: 3.400000 + value: {x: 3.948502, y: 3.948502, z: 3.948502} + - time: 3.433333 + value: {x: 3.998051, y: 3.998051, z: 3.998051} + - time: 3.466667 + value: {x: 4.047864, y: 4.047864, z: 4.047864} + - time: 3.500000 + value: {x: 4.097942, y: 4.097942, z: 4.097942} + - time: 3.533333 + value: {x: 4.148283, y: 4.148283, z: 4.148283} + - time: 3.566667 + value: {x: 4.198888, y: 4.198888, z: 4.198888} + - time: 3.600000 + value: {x: 4.249756, y: 4.249756, z: 4.249756} + - time: 3.633333 + value: {x: 4.300885, y: 4.300885, z: 4.300885} + - time: 3.666667 + value: {x: 4.352276, y: 4.352276, z: 4.352276} + - time: 3.700000 + value: {x: 4.403930, y: 4.403930, z: 4.403930} + - time: 3.733333 + value: {x: 4.455843, y: 4.455843, z: 4.455843} + - time: 3.766667 + value: {x: 4.508018, y: 4.508018, z: 4.508018} + - time: 3.800000 + value: {x: 4.560452, y: 4.560452, z: 4.560452} + - time: 3.833333 + value: {x: 4.613145, y: 4.613145, z: 4.613145} + - time: 3.866667 + value: {x: 4.666099, y: 4.666099, z: 4.666099} + - time: 3.900000 + value: {x: 4.719311, y: 4.719311, z: 4.719311} + - time: 3.933333 + value: {x: 4.772781, y: 4.772781, z: 4.772781} + - time: 3.966667 + value: {x: 4.826510, y: 4.826510, z: 4.826510} + - time: 4.000000 + value: {x: 4.880496, y: 4.880496, z: 4.880496} + - time: 4.033333 + value: {x: 4.934739, y: 4.934739, z: 4.934739} + - time: 4.066667 + value: {x: 4.989239, y: 4.989239, z: 4.989239} + - time: 4.100000 + value: {x: 5.043995, y: 5.043995, z: 5.043995} + - time: 4.133333 + value: {x: 5.099007, y: 5.099007, z: 5.099007} + - time: 4.166667 + value: {x: 5.154274, y: 5.154274, z: 5.154274} + - time: 4.200000 + value: {x: 5.209797, y: 5.209797, z: 5.209797} + - time: 4.233333 + value: {x: 5.265574, y: 5.265574, z: 5.265574} + - time: 4.266666 + value: {x: 5.321607, y: 5.321607, z: 5.321607} + - time: 4.300000 + value: {x: 5.377894, y: 5.377894, z: 5.377894} + - time: 4.333333 + value: {x: 5.434433, y: 5.434433, z: 5.434433} + - time: 4.366667 + value: {x: 5.491226, y: 5.491226, z: 5.491226} + - time: 4.400000 + value: {x: 5.548272, y: 5.548272, z: 5.548272} + - time: 4.433333 + value: {x: 5.605569, y: 5.605569, z: 5.605569} + - time: 4.466667 + value: {x: 5.663120, y: 5.663120, z: 5.663120} + - time: 4.500000 + value: {x: 5.720922, y: 5.720922, z: 5.720922} + - time: 4.533333 + value: {x: 5.778975, y: 5.778975, z: 5.778975} + - time: 4.566667 + value: {x: 5.837280, y: 5.837280, z: 5.837280} + - time: 4.600000 + value: {x: 5.895835, y: 5.895835, z: 5.895835} + - time: 4.633333 + value: {x: 5.954640, y: 5.954640, z: 5.954640} + - time: 4.666667 + value: {x: 6.013695, y: 6.013695, z: 6.013695} + - time: 4.700000 + value: {x: 6.072999, y: 6.072999, z: 6.072999} + - time: 4.733333 + value: {x: 6.132553, y: 6.132553, z: 6.132553} + - time: 4.766666 + value: {x: 6.192357, y: 6.192357, z: 6.192357} + - time: 4.800000 + value: {x: 6.252409, y: 6.252409, z: 6.252409} + - time: 4.833333 + value: {x: 6.312710, y: 6.312710, z: 6.312710} + - time: 4.866667 + value: {x: 6.373257, y: 6.373257, z: 6.373257} + - time: 4.900000 + value: {x: 6.434052, y: 6.434052, z: 6.434052} + - time: 4.933333 + value: {x: 6.495093, y: 6.495093, z: 6.495093} + - time: 4.966667 + value: {x: 6.556385, y: 6.556385, z: 6.556385} + - time: 5.000000 + value: {x: 6.617919, y: 6.617919, z: 6.617919} + - time: 5.033333 + value: {x: 6.679702, y: 6.679702, z: 6.679702} + - time: 5.066667 + value: {x: 6.741729, y: 6.741729, z: 6.741729} + - time: 5.100000 + value: {x: 6.804002, y: 6.804002, z: 6.804002} + - time: 5.133333 + value: {x: 6.866521, y: 6.866521, z: 6.866521} + - time: 5.166667 + value: {x: 6.929286, y: 6.929286, z: 6.929286} + - time: 5.200000 + value: {x: 6.992294, y: 6.992294, z: 6.992294} + - time: 5.233333 + value: {x: 7.055546, y: 7.055546, z: 7.055546} + - time: 5.266666 + value: {x: 7.119041, y: 7.119041, z: 7.119041} + - time: 5.300000 + value: {x: 7.182782, y: 7.182782, z: 7.182782} + - time: 5.333333 + value: {x: 7.246766, y: 7.246766, z: 7.246766} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_30: + position: + - time: 0.000000 + value: {x: 0.019298, y: 0.499329, z: -0.016205} + - time: 0.033333 + value: {x: 0.019392, y: 0.499526, z: -0.016280} + - time: 0.066667 + value: {x: 0.030720, y: 0.347807, z: -0.025055} + - time: 0.100000 + value: {x: 0.042425, y: 0.246855, z: -0.031486} + - time: 0.133333 + value: {x: 0.054298, y: 0.189327, z: -0.036282} + - time: 0.166667 + value: {x: 0.066303, y: 0.164335, z: -0.039821} + - time: 0.200000 + value: {x: 0.078574, y: 0.159016, z: -0.042276} + - time: 0.233333 + value: {x: 0.091561, y: 0.162761, z: -0.043490} + - time: 0.266667 + value: {x: 0.106845, y: 0.171458, z: -0.042418} + - time: 0.300000 + value: {x: 0.126024, y: 0.182180, z: -0.038063} + - time: 0.333333 + value: {x: 0.150335, y: 0.193594, z: -0.029669} + - time: 0.366667 + value: {x: 0.180789, y: 0.205632, z: -0.016385} + - time: 0.400000 + value: {x: 0.217411, y: 0.218148, z: 0.001599} + - time: 0.433333 + value: {x: 0.255734, y: 0.231208, z: 0.021043} + - time: 0.466667 + value: {x: 0.290669, y: 0.245065, z: 0.038461} + - time: 0.500000 + value: {x: 0.319627, y: 0.259868, z: 0.051748} + - time: 0.533333 + value: {x: 0.344085, y: 0.276017, z: 0.062117} + - time: 0.566667 + value: {x: 0.365344, y: 0.293966, z: 0.070479} + - time: 0.600000 + value: {x: 0.383507, y: 0.313572, z: 0.076768} + - time: 0.633333 + value: {x: 0.397244, y: 0.334760, z: 0.079980} + - time: 0.666667 + value: {x: 0.405873, y: 0.357079, z: 0.079804} + - time: 0.700000 + value: {x: 0.409490, y: 0.378314, z: 0.076188} + - time: 0.733333 + value: {x: 0.409215, y: 0.395906, z: 0.070027} + - time: 0.766667 + value: {x: 0.406049, y: 0.407451, z: 0.061759} + - time: 0.800000 + value: {x: 0.402436, y: 0.413109, z: 0.053495} + - time: 0.833333 + value: {x: 0.400962, y: 0.413203, z: 0.046665} + - time: 0.866667 + value: {x: 0.403669, y: 0.408568, z: 0.043121} + - time: 0.900000 + value: {x: 0.410827, y: 0.401308, z: 0.042790} + - time: 0.933333 + value: {x: 0.422006, y: 0.393952, z: 0.045416} + - time: 0.966667 + value: {x: 0.437358, y: 0.388461, z: 0.051063} + - time: 1.000000 + value: {x: 0.459665, y: 0.385594, z: 0.061827} + - time: 1.033333 + value: {x: 0.492745, y: 0.385318, z: 0.080231} + - time: 1.066667 + value: {x: 0.539735, y: 0.387772, z: 0.108764} + - time: 1.100000 + value: {x: 0.599754, y: 0.392568, z: 0.146617} + - time: 1.133333 + value: {x: 0.667756, y: 0.399136, z: 0.190282} + - time: 1.166667 + value: {x: 0.738930, y: 0.406912, z: 0.236352} + - time: 1.200000 + value: {x: 0.809267, y: 0.415384, z: 0.281820} + - time: 1.233333 + value: {x: 0.875908, y: 0.424497, z: 0.324583} + - time: 1.266667 + value: {x: 0.936489, y: 0.434633, z: 0.363301} + - time: 1.300000 + value: {x: 0.989169, y: 0.445710, z: 0.396234} + - time: 1.333333 + value: {x: 1.033405, y: 0.457822, z: 0.423313} + - time: 1.366667 + value: {x: 1.068847, y: 0.470908, z: 0.444204} + - time: 1.400000 + value: {x: 1.097979, y: 0.484499, z: 0.460727} + - time: 1.433333 + value: {x: 1.121160, y: 0.498394, z: 0.472949} + - time: 1.466667 + value: {x: 1.140229, y: 0.512284, z: 0.482292} + - time: 1.500000 + value: {x: 1.155961, y: 0.525949, z: 0.489182} + - time: 1.533333 + value: {x: 1.168864, y: 0.539553, z: 0.494343} + - time: 1.566667 + value: {x: 1.179605, y: 0.552834, z: 0.497741} + - time: 1.600000 + value: {x: 1.188618, y: 0.566026, z: 0.500157} + - time: 1.633333 + value: {x: 1.196242, y: 0.578989, z: 0.501539} + - time: 1.666667 + value: {x: 1.202727, y: 0.591784, z: 0.502171} + - time: 1.700000 + value: {x: 1.208281, y: 0.604416, z: 0.502208} + - time: 1.733333 + value: {x: 1.212987, y: 0.616883, z: 0.501657} + - time: 1.766667 + value: {x: 1.216861, y: 0.629196, z: 0.500567} + - time: 1.800000 + value: {x: 1.219964, y: 0.641332, z: 0.498969} + - time: 1.833333 + value: {x: 1.222346, y: 0.653264, z: 0.496849} + - time: 1.866667 + value: {x: 1.224043, y: 0.665120, z: 0.494493} + - time: 1.900000 + value: {x: 1.224822, y: 0.676653, z: 0.491161} + - time: 1.933333 + value: {x: 1.224862, y: 0.688160, z: 0.487634} + - time: 1.966667 + value: {x: 1.224375, y: 0.699450, z: 0.483711} + - time: 2.000000 + value: {x: 1.223058, y: 0.710545, z: 0.479140} + - time: 2.033333 + value: {x: 1.221070, y: 0.721460, z: 0.474137} + - time: 2.066667 + value: {x: 1.218768, y: 0.732173, z: 0.468950} + - time: 2.133333 + value: {x: 1.212369, y: 0.752681, z: 0.457382} + - time: 2.166667 + value: {x: 1.208707, y: 0.762416, z: 0.451334} + - time: 2.200000 + value: {x: 1.204865, y: 0.771634, z: 0.444997} + - time: 2.233333 + value: {x: 1.200846, y: 0.780677, z: 0.438947} + - time: 2.266667 + value: {x: 1.196700, y: 0.788992, z: 0.432465} + - time: 2.300000 + value: {x: 1.192523, y: 0.797045, z: 0.426152} + - time: 2.333333 + value: {x: 1.188256, y: 0.804575, z: 0.419967} + - time: 2.366667 + value: {x: 1.184054, y: 0.811595, z: 0.413554} + - time: 2.400000 + value: {x: 1.179853, y: 0.818183, z: 0.407433} + - time: 2.433333 + value: {x: 1.175731, y: 0.824184, z: 0.401144} + - time: 2.466667 + value: {x: 1.171704, y: 0.829859, z: 0.395036} + - time: 2.500000 + value: {x: 1.167741, y: 0.834889, z: 0.389046} + - time: 2.533333 + value: {x: 1.163897, y: 0.839934, z: 0.383297} + - time: 2.600000 + value: {x: 1.156545, y: 0.848202, z: 0.371897} + - time: 2.633333 + value: {x: 1.153063, y: 0.851942, z: 0.366336} + - time: 2.666667 + value: {x: 1.149723, y: 0.855207, z: 0.360735} + - time: 2.700000 + value: {x: 1.146476, y: 0.858553, z: 0.355410} + - time: 2.766667 + value: {x: 1.140423, y: 0.864159, z: 0.345102} + - time: 2.800000 + value: {x: 1.137538, y: 0.866999, z: 0.340277} + - time: 2.833333 + value: {x: 1.134881, y: 0.869217, z: 0.335300} + - time: 2.900000 + value: {x: 1.129831, y: 0.873760, z: 0.325872} + - time: 2.933333 + value: {x: 1.127559, y: 0.875698, z: 0.321357} + - time: 3.000000 + value: {x: 1.123278, y: 0.879634, z: 0.312796} + - time: 3.033333 + value: {x: 1.121372, y: 0.881344, z: 0.308504} + - time: 3.066667 + value: {x: 1.119598, y: 0.883005, z: 0.304453} + - time: 3.133333 + value: {x: 1.116241, y: 0.886508, z: 0.296775} + - time: 3.233333 + value: {x: 1.112201, y: 0.890986, z: 0.285651} + - time: 3.266667 + value: {x: 1.110956, y: 0.892630, z: 0.282275} + - time: 3.300000 + value: {x: 1.109823, y: 0.893941, z: 0.278643} + - time: 3.466667 + value: {x: 1.104701, y: 0.901164, z: 0.262127} + - time: 3.633333 + value: {x: 1.100159, y: 0.908432, z: 0.246476} + - time: 3.733333 + value: {x: 1.097677, y: 0.912926, z: 0.237450} + - time: 3.766667 + value: {x: 1.096897, y: 0.914587, z: 0.234742} + - time: 3.800000 + value: {x: 1.095963, y: 0.916011, z: 0.231527} + - time: 3.933333 + value: {x: 1.092777, y: 0.922361, z: 0.219971} + - time: 3.966667 + value: {x: 1.092112, y: 0.924121, z: 0.217425} + - time: 4.000000 + value: {x: 1.091439, y: 0.925687, z: 0.214478} + - time: 4.033333 + value: {x: 1.090575, y: 0.927498, z: 0.211886} + - time: 4.066667 + value: {x: 1.089830, y: 0.929076, z: 0.208881} + - time: 4.100000 + value: {x: 1.089107, y: 0.930938, z: 0.206412} + - time: 4.133333 + value: {x: 1.088503, y: 0.932565, z: 0.203530} + - time: 4.166667 + value: {x: 1.087944, y: 0.934344, z: 0.200942} + - time: 4.200000 + value: {x: 1.087425, y: 0.936296, z: 0.198689} + - time: 4.233333 + value: {x: 1.087023, y: 0.938031, z: 0.196053} + - time: 4.300000 + value: {x: 1.086248, y: 0.941872, z: 0.191433} + - time: 4.333333 + value: {x: 1.085777, y: 0.943661, z: 0.188768} + - time: 4.400000 + value: {x: 1.085005, y: 0.947673, z: 0.184298} + - time: 4.433333 + value: {x: 1.084778, y: 0.949518, z: 0.181803} + - time: 4.500000 + value: {x: 1.084505, y: 0.953617, z: 0.177629} + - time: 4.533333 + value: {x: 1.084470, y: 0.955805, z: 0.175828} + - time: 4.566667 + value: {x: 1.084565, y: 0.957765, z: 0.173631} + - time: 4.600000 + value: {x: 1.084687, y: 0.960027, z: 0.172008} + - time: 4.666667 + value: {x: 1.085256, y: 0.964217, z: 0.168208} + - time: 4.700000 + value: {x: 1.085620, y: 0.966574, z: 0.166820} + - time: 4.766666 + value: {x: 1.086679, y: 0.970944, z: 0.163467} + - time: 4.800000 + value: {x: 1.087317, y: 0.973258, z: 0.162053} + - time: 4.900000 + value: {x: 1.089741, y: 0.980355, z: 0.158201} + - time: 4.966667 + value: {x: 1.091766, y: 0.985357, z: 0.156208} + - time: 5.333333 + value: {x: 1.104382, y: 1.011806, z: 0.146135} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.661496, y: 0.661496, z: 0.661496} + - time: 0.466667 + value: {x: 0.694332, y: 0.694332, z: 0.694332} + - time: 1.000000 + value: {x: 0.732691, y: 0.732691, z: 0.732691} + - time: 1.533333 + value: {x: 0.771931, y: 0.771931, z: 0.771931} + - time: 2.066667 + value: {x: 0.812045, y: 0.812045, z: 0.812045} + - time: 2.600000 + value: {x: 0.853027, y: 0.853027, z: 0.853027} + - time: 3.133333 + value: {x: 0.894870, y: 0.894870, z: 0.894870} + - time: 3.666667 + value: {x: 0.937569, y: 0.937569, z: 0.937569} + - time: 4.200000 + value: {x: 0.981118, y: 0.981118, z: 0.981118} + - time: 4.766666 + value: {x: 1.028315, y: 1.028315, z: 1.028315} + - time: 5.333333 + value: {x: 1.076459, y: 1.076459, z: 1.076459} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_31: + position: + - time: 0.000000 + value: {x: -0.000604, y: 0.457730, z: -0.000431} + - time: 0.033333 + value: {x: -0.000604, y: 0.457730, z: -0.000431} + - time: 0.066667 + value: {x: -0.000472, y: 0.282607, z: -0.000337} + - time: 0.100000 + value: {x: 0.001431, y: 0.161182, z: 0.001021} + - time: 0.133333 + value: {x: 0.004502, y: 0.085264, z: 0.003211} + - time: 0.166667 + value: {x: 0.008465, y: 0.043457, z: 0.006038} + - time: 0.200000 + value: {x: 0.013294, y: 0.022582, z: 0.009482} + - time: 0.233333 + value: {x: 0.019326, y: 0.011796, z: 0.013785} + - time: 0.266667 + value: {x: 0.028068, y: 0.006799, z: 0.020021} + - time: 0.300000 + value: {x: 0.041050, y: 0.004559, z: 0.029280} + - time: 0.333333 + value: {x: 0.059455, y: 0.003674, z: 0.042409} + - time: 0.366667 + value: {x: 0.084276, y: 0.003901, z: 0.060113} + - time: 0.400000 + value: {x: 0.115491, y: 0.005112, z: 0.082379} + - time: 0.433333 + value: {x: 0.148605, y: 0.007328, z: 0.105999} + - time: 0.466667 + value: {x: 0.178529, y: 0.010668, z: 0.127343} + - time: 0.500000 + value: {x: 0.202628, y: 0.015363, z: 0.144533} + - time: 0.533333 + value: {x: 0.222386, y: 0.021688, z: 0.158627} + - time: 0.566667 + value: {x: 0.239091, y: 0.030067, z: 0.170542} + - time: 0.600000 + value: {x: 0.252820, y: 0.040399, z: 0.180335} + - time: 0.633333 + value: {x: 0.262232, y: 0.052606, z: 0.187048} + - time: 0.666667 + value: {x: 0.266653, y: 0.066125, z: 0.190202} + - time: 0.700000 + value: {x: 0.266161, y: 0.078779, z: 0.189851} + - time: 0.733333 + value: {x: 0.261880, y: 0.087941, z: 0.186797} + - time: 0.766667 + value: {x: 0.254778, y: 0.091330, z: 0.181732} + - time: 0.800000 + value: {x: 0.247332, y: 0.088904, z: 0.176421} + - time: 0.833333 + value: {x: 0.242082, y: 0.081183, z: 0.172676} + - time: 0.866667 + value: {x: 0.241106, y: 0.068786, z: 0.171979} + - time: 0.900000 + value: {x: 0.244643, y: 0.053944, z: 0.174502} + - time: 0.933333 + value: {x: 0.252265, y: 0.039148, z: 0.179939} + - time: 0.966667 + value: {x: 0.264119, y: 0.026371, z: 0.188394} + - time: 1.000000 + value: {x: 0.282992, y: 0.016308, z: 0.201856} + - time: 1.033333 + value: {x: 0.312681, y: 0.009019, z: 0.223033} + - time: 1.066667 + value: {x: 0.356347, y: 0.004508, z: 0.254180} + - time: 1.100000 + value: {x: 0.413089, y: 0.002471, z: 0.294653} + - time: 1.133333 + value: {x: 0.477866, y: 0.002288, z: 0.340858} + - time: 1.166667 + value: {x: 0.545871, y: 0.003374, z: 0.389366} + - time: 1.200000 + value: {x: 0.613075, y: 0.005288, z: 0.437302} + - time: 1.233333 + value: {x: 0.676614, y: 0.008001, z: 0.482624} + - time: 1.266667 + value: {x: 0.734157, y: 0.011716, z: 0.523669} + - time: 1.300000 + value: {x: 0.783817, y: 0.016562, z: 0.559091} + - time: 1.333333 + value: {x: 0.825082, y: 0.022468, z: 0.588525} + - time: 1.366667 + value: {x: 0.857595, y: 0.029412, z: 0.611716} + - time: 1.400000 + value: {x: 0.883841, y: 0.036897, z: 0.630438} + - time: 1.433333 + value: {x: 0.904161, y: 0.044814, z: 0.644932} + - time: 1.466667 + value: {x: 0.920403, y: 0.052795, z: 0.656517} + - time: 1.500000 + value: {x: 0.933328, y: 0.060681, z: 0.665736} + - time: 1.533333 + value: {x: 0.943480, y: 0.068451, z: 0.672978} + - time: 1.566667 + value: {x: 0.951474, y: 0.076098, z: 0.678680} + - time: 1.600000 + value: {x: 0.957790, y: 0.083615, z: 0.683185} + - time: 1.633333 + value: {x: 0.962739, y: 0.091008, z: 0.686715} + - time: 1.666667 + value: {x: 0.966579, y: 0.098281, z: 0.689454} + - time: 1.700000 + value: {x: 0.969517, y: 0.105437, z: 0.691550} + - time: 1.733333 + value: {x: 0.971633, y: 0.112495, z: 0.693059} + - time: 1.766667 + value: {x: 0.972944, y: 0.119447, z: 0.693994} + - time: 1.800000 + value: {x: 0.973511, y: 0.126275, z: 0.694399} + - time: 1.833333 + value: {x: 0.973378, y: 0.132972, z: 0.694304} + - time: 1.866667 + value: {x: 0.972604, y: 0.139537, z: 0.693752} + - time: 1.900000 + value: {x: 0.970901, y: 0.146008, z: 0.692537} + - time: 1.933333 + value: {x: 0.968513, y: 0.152352, z: 0.690834} + - time: 1.966667 + value: {x: 0.965614, y: 0.158555, z: 0.688766} + - time: 2.000000 + value: {x: 0.961899, y: 0.164655, z: 0.686116} + - time: 2.033333 + value: {x: 0.957537, y: 0.170614, z: 0.683004} + - time: 2.066667 + value: {x: 0.952883, y: 0.176413, z: 0.679685} + - time: 2.100000 + value: {x: 0.947418, y: 0.181947, z: 0.675787} + - time: 2.133333 + value: {x: 0.941841, y: 0.187226, z: 0.671808} + - time: 2.166667 + value: {x: 0.935890, y: 0.192169, z: 0.667564} + - time: 2.200000 + value: {x: 0.929761, y: 0.196733, z: 0.663192} + - time: 2.233333 + value: {x: 0.923511, y: 0.200968, z: 0.658734} + - time: 2.266667 + value: {x: 0.917117, y: 0.204703, z: 0.654173} + - time: 2.300000 + value: {x: 0.910728, y: 0.208133, z: 0.649616} + - time: 2.333333 + value: {x: 0.904284, y: 0.210998, z: 0.645019} + - time: 2.366667 + value: {x: 0.897892, y: 0.213542, z: 0.640460} + - time: 2.400000 + value: {x: 0.891548, y: 0.215559, z: 0.635935} + - time: 2.433333 + value: {x: 0.885272, y: 0.217153, z: 0.631459} + - time: 2.466667 + value: {x: 0.879121, y: 0.218414, z: 0.627071} + - time: 2.533333 + value: {x: 0.867137, y: 0.219655, z: 0.618523} + - time: 2.600000 + value: {x: 0.855665, y: 0.219273, z: 0.610340} + - time: 2.633333 + value: {x: 0.850144, y: 0.218758, z: 0.606402} + - time: 2.700000 + value: {x: 0.839513, y: 0.217034, z: 0.598819} + - time: 2.733333 + value: {x: 0.834437, y: 0.215744, z: 0.595198} + - time: 2.800000 + value: {x: 0.824668, y: 0.213014, z: 0.588230} + - time: 2.900000 + value: {x: 0.811154, y: 0.207777, z: 0.578591} + - time: 2.966667 + value: {x: 0.802922, y: 0.203742, z: 0.572719} + - time: 3.033333 + value: {x: 0.795182, y: 0.199670, z: 0.567198} + - time: 3.133333 + value: {x: 0.784584, y: 0.193269, z: 0.559638} + - time: 3.233333 + value: {x: 0.775162, y: 0.186618, z: 0.552917} + - time: 3.333333 + value: {x: 0.766441, y: 0.180061, z: 0.546697} + - time: 3.500000 + value: {x: 0.752993, y: 0.169539, z: 0.537105} + - time: 3.666667 + value: {x: 0.740324, y: 0.159757, z: 0.528068} + - time: 3.800000 + value: {x: 0.730685, y: 0.152631, z: 0.521192} + - time: 3.900000 + value: {x: 0.723574, y: 0.147693, z: 0.516120} + - time: 4.033333 + value: {x: 0.714680, y: 0.141769, z: 0.509776} + - time: 4.133333 + value: {x: 0.708188, y: 0.137780, z: 0.505145} + - time: 4.233333 + value: {x: 0.702412, y: 0.134232, z: 0.501026} + - time: 4.366667 + value: {x: 0.695158, y: 0.130147, z: 0.495851} + - time: 4.466667 + value: {x: 0.690312, y: 0.127574, z: 0.492394} + - time: 4.566667 + value: {x: 0.686276, y: 0.125431, z: 0.489516} + - time: 4.666667 + value: {x: 0.683054, y: 0.123720, z: 0.487218} + - time: 4.766666 + value: {x: 0.680650, y: 0.122444, z: 0.485503} + - time: 4.866667 + value: {x: 0.679076, y: 0.121608, z: 0.484380} + - time: 4.966667 + value: {x: 0.678351, y: 0.121224, z: 0.483863} + - time: 5.333333 + value: {x: 0.678303, y: 0.121198, z: 0.483829} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.661496, y: 0.661496, z: 0.661496} + - time: 0.466667 + value: {x: 0.694332, y: 0.694332, z: 0.694332} + - time: 1.000000 + value: {x: 0.732691, y: 0.732691, z: 0.732691} + - time: 1.533333 + value: {x: 0.771931, y: 0.771931, z: 0.771931} + - time: 2.066667 + value: {x: 0.812045, y: 0.812045, z: 0.812045} + - time: 2.600000 + value: {x: 0.853027, y: 0.853027, z: 0.853027} + - time: 3.133333 + value: {x: 0.894870, y: 0.894870, z: 0.894870} + - time: 3.666667 + value: {x: 0.937569, y: 0.937569, z: 0.937569} + - time: 4.200000 + value: {x: 0.981118, y: 0.981118, z: 0.981118} + - time: 4.766666 + value: {x: 1.028315, y: 1.028315, z: 1.028315} + - time: 5.333333 + value: {x: 1.076459, y: 1.076459, z: 1.076459} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_4: + position: + - time: 0.000000 + value: {x: 0.015597, y: 0.491681, z: -0.012509} + - time: 0.033333 + value: {x: 0.015660, y: 0.491814, z: -0.012559} + - time: 0.066667 + value: {x: 0.024911, y: 0.335734, z: -0.019856} + - time: 0.100000 + value: {x: 0.034906, y: 0.230935, z: -0.027332} + - time: 0.133333 + value: {x: 0.045323, y: 0.169922, z: -0.034852} + - time: 0.166667 + value: {x: 0.056066, y: 0.141717, z: -0.042398} + - time: 0.200000 + value: {x: 0.067237, y: 0.133402, z: -0.050082} + - time: 0.233333 + value: {x: 0.079289, y: 0.134323, z: -0.058176} + - time: 0.266667 + value: {x: 0.093896, y: 0.140338, z: -0.067616} + - time: 0.300000 + value: {x: 0.112748, y: 0.148501, z: -0.079404} + - time: 0.333333 + value: {x: 0.137155, y: 0.157466, z: -0.094328} + - time: 0.366667 + value: {x: 0.168193, y: 0.167136, z: -0.112875} + - time: 0.400000 + value: {x: 0.205878, y: 0.177366, z: -0.135171} + - time: 0.433333 + value: {x: 0.245428, y: 0.188217, z: -0.158527} + - time: 0.466667 + value: {x: 0.281402, y: 0.199916, z: -0.179747} + - time: 0.500000 + value: {x: 0.311020, y: 0.212629, z: -0.197420} + - time: 0.533333 + value: {x: 0.335864, y: 0.226733, z: -0.212320} + - time: 0.566667 + value: {x: 0.357322, y: 0.242675, z: -0.225231} + - time: 0.600000 + value: {x: 0.375498, y: 0.260323, z: -0.236299} + - time: 0.633333 + value: {x: 0.388965, y: 0.279601, z: -0.244750} + - time: 0.666667 + value: {x: 0.397000, y: 0.300037, z: -0.250041} + - time: 0.700000 + value: {x: 0.399697, y: 0.319424, z: -0.252306} + - time: 0.733333 + value: {x: 0.398258, y: 0.335189, z: -0.252148} + - time: 0.766667 + value: {x: 0.393742, y: 0.344953, z: -0.250358} + - time: 0.800000 + value: {x: 0.388773, y: 0.348837, z: -0.248157} + - time: 0.833333 + value: {x: 0.386103, y: 0.347204, z: -0.247387} + - time: 0.866667 + value: {x: 0.387924, y: 0.340844, z: -0.249010} + - time: 0.900000 + value: {x: 0.394517, y: 0.331891, z: -0.253364} + - time: 0.933333 + value: {x: 0.405422, y: 0.322862, z: -0.260153} + - time: 0.966667 + value: {x: 0.420803, y: 0.315723, z: -0.269497} + - time: 1.000000 + value: {x: 0.443633, y: 0.311220, z: -0.282997} + - time: 1.033333 + value: {x: 0.477989, y: 0.309340, z: -0.303096} + - time: 1.066667 + value: {x: 0.527231, y: 0.310194, z: -0.331520} + - time: 1.100000 + value: {x: 0.590413, y: 0.313411, z: -0.367857} + - time: 1.133333 + value: {x: 0.662141, y: 0.318411, z: -0.408987} + - time: 1.166667 + value: {x: 0.737273, y: 0.324627, z: -0.451987} + - time: 1.200000 + value: {x: 0.811517, y: 0.331561, z: -0.494524} + - time: 1.233333 + value: {x: 0.881817, y: 0.339163, z: -0.534916} + - time: 1.266667 + value: {x: 0.945653, y: 0.347780, z: -0.571493} + - time: 1.300000 + value: {x: 1.001045, y: 0.357372, z: -0.603431} + - time: 1.333333 + value: {x: 1.047421, y: 0.368000, z: -0.630182} + - time: 1.366667 + value: {x: 1.084406, y: 0.379611, z: -0.651594} + - time: 1.400000 + value: {x: 1.114654, y: 0.391730, z: -0.669135} + - time: 1.433333 + value: {x: 1.138546, y: 0.404176, z: -0.683147} + - time: 1.466667 + value: {x: 1.158048, y: 0.416628, z: -0.694667} + - time: 1.500000 + value: {x: 1.173987, y: 0.428877, z: -0.704249} + - time: 1.533333 + value: {x: 1.186915, y: 0.441051, z: -0.711954} + - time: 1.566667 + value: {x: 1.197532, y: 0.452939, z: -0.718531} + - time: 1.600000 + value: {x: 1.206313, y: 0.464727, z: -0.723921} + - time: 1.633333 + value: {x: 1.213614, y: 0.476305, z: -0.728530} + - time: 1.666667 + value: {x: 1.219704, y: 0.487721, z: -0.732434} + - time: 1.700000 + value: {x: 1.224806, y: 0.498981, z: -0.735753} + - time: 1.733333 + value: {x: 1.229006, y: 0.510087, z: -0.738576} + - time: 1.766667 + value: {x: 1.232323, y: 0.521047, z: -0.740881} + - time: 1.800000 + value: {x: 1.234823, y: 0.531837, z: -0.742719} + - time: 1.833333 + value: {x: 1.236556, y: 0.542437, z: -0.744149} + - time: 1.866667 + value: {x: 1.237567, y: 0.552945, z: -0.745017} + - time: 1.900000 + value: {x: 1.237593, y: 0.563177, z: -0.745569} + - time: 1.933333 + value: {x: 1.236843, y: 0.573358, z: -0.745474} + - time: 1.966667 + value: {x: 1.235533, y: 0.583337, z: -0.745094} + - time: 2.000000 + value: {x: 1.233338, y: 0.593137, z: -0.744272} + - time: 2.033333 + value: {x: 1.230432, y: 0.602763, z: -0.743034} + - time: 2.066667 + value: {x: 1.227195, y: 0.612195, z: -0.741599} + - time: 2.100000 + value: {x: 1.223086, y: 0.621264, z: -0.739770} + - time: 2.133333 + value: {x: 1.218816, y: 0.630161, z: -0.737644} + - time: 2.166667 + value: {x: 1.214140, y: 0.638634, z: -0.735373} + - time: 2.200000 + value: {x: 1.209271, y: 0.646618, z: -0.733120} + - time: 2.233333 + value: {x: 1.204228, y: 0.654391, z: -0.730500} + - time: 2.266667 + value: {x: 1.199042, y: 0.661484, z: -0.728050} + - time: 2.300000 + value: {x: 1.193834, y: 0.668303, z: -0.725472} + - time: 2.333333 + value: {x: 1.188538, y: 0.674589, z: -0.722731} + - time: 2.366667 + value: {x: 1.183308, y: 0.680403, z: -0.720228} + - time: 2.400000 + value: {x: 1.178091, y: 0.685764, z: -0.717551} + - time: 2.433333 + value: {x: 1.172954, y: 0.690571, z: -0.715083} + - time: 2.466667 + value: {x: 1.167927, y: 0.695050, z: -0.712619} + - time: 2.533333 + value: {x: 1.158155, y: 0.702725, z: -0.707687} + - time: 2.600000 + value: {x: 1.148883, y: 0.708628, z: -0.703082} + - time: 2.633333 + value: {x: 1.144460, y: 0.711198, z: -0.700920} + - time: 2.700000 + value: {x: 1.136023, y: 0.715505, z: -0.696918} + - time: 2.800000 + value: {x: 1.124418, y: 0.720492, z: -0.691212} + - time: 2.866667 + value: {x: 1.117460, y: 0.722798, z: -0.687914} + - time: 2.900000 + value: {x: 1.114152, y: 0.723889, z: -0.686480} + - time: 3.000000 + value: {x: 1.105164, y: 0.726413, z: -0.682239} + - time: 3.033333 + value: {x: 1.102467, y: 0.727039, z: -0.681106} + - time: 3.100000 + value: {x: 1.097436, y: 0.728277, z: -0.678740} + - time: 3.166667 + value: {x: 1.092887, y: 0.729341, z: -0.676719} + - time: 3.266667 + value: {x: 1.086854, y: 0.730752, z: -0.674184} + - time: 3.333333 + value: {x: 1.083215, y: 0.731419, z: -0.672805} + - time: 3.500000 + value: {x: 1.074848, y: 0.733445, z: -0.669454} + - time: 3.700000 + value: {x: 1.065581, y: 0.736294, z: -0.665645} + - time: 3.733333 + value: {x: 1.064190, y: 0.736758, z: -0.665244} + - time: 3.866667 + value: {x: 1.058208, y: 0.739132, z: -0.662713} + - time: 4.000000 + value: {x: 1.052975, y: 0.741793, z: -0.660854} + - time: 4.033333 + value: {x: 1.051504, y: 0.742630, z: -0.660081} + - time: 4.066667 + value: {x: 1.050150, y: 0.743299, z: -0.659716} + - time: 4.100000 + value: {x: 1.048836, y: 0.744197, z: -0.659035} + - time: 4.133333 + value: {x: 1.047638, y: 0.744926, z: -0.658760} + - time: 4.200000 + value: {x: 1.045413, y: 0.746784, z: -0.657781} + - time: 4.333333 + value: {x: 1.041518, y: 0.750553, z: -0.656639} + - time: 4.400000 + value: {x: 1.039656, y: 0.752752, z: -0.655866} + - time: 4.433333 + value: {x: 1.038888, y: 0.753747, z: -0.655832} + - time: 4.533333 + value: {x: 1.037032, y: 0.757367, z: -0.655204} + - time: 4.566667 + value: {x: 1.036619, y: 0.758494, z: -0.655357} + - time: 4.600000 + value: {x: 1.036254, y: 0.759861, z: -0.655178} + - time: 4.700000 + value: {x: 1.035758, y: 0.763850, z: -0.655505} + - time: 4.766666 + value: {x: 1.035901, y: 0.766570, z: -0.656165} + - time: 4.833333 + value: {x: 1.036371, y: 0.769628, z: -0.656661} + - time: 4.933333 + value: {x: 1.037805, y: 0.774335, z: -0.658058} + - time: 5.333333 + value: {x: 1.046967, y: 0.793850, z: -0.665327} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.491594, y: 0.491594, z: 0.491594} + - time: 0.166667 + value: {x: 0.525667, y: 0.525667, z: 0.525667} + - time: 0.333333 + value: {x: 0.560713, y: 0.560713, z: 0.560713} + - time: 0.500000 + value: {x: 0.596725, y: 0.596725, z: 0.596725} + - time: 0.666667 + value: {x: 0.633693, y: 0.633693, z: 0.633693} + - time: 0.833333 + value: {x: 0.671609, y: 0.671609, z: 0.671609} + - time: 1.000000 + value: {x: 0.710465, y: 0.710465, z: 0.710465} + - time: 1.166667 + value: {x: 0.750254, y: 0.750254, z: 0.750254} + - time: 1.333333 + value: {x: 0.790969, y: 0.790969, z: 0.790969} + - time: 1.500000 + value: {x: 0.832603, y: 0.832603, z: 0.832603} + - time: 1.666667 + value: {x: 0.875148, y: 0.875148, z: 0.875148} + - time: 1.833333 + value: {x: 0.918599, y: 0.918599, z: 0.918599} + - time: 2.000000 + value: {x: 0.962949, y: 0.962949, z: 0.962949} + - time: 2.166667 + value: {x: 1.008192, y: 1.008192, z: 1.008192} + - time: 2.333333 + value: {x: 1.054323, y: 1.054323, z: 1.054323} + - time: 2.500000 + value: {x: 1.101335, y: 1.101335, z: 1.101335} + - time: 2.666667 + value: {x: 1.149223, y: 1.149223, z: 1.149223} + - time: 2.833333 + value: {x: 1.197983, y: 1.197983, z: 1.197983} + - time: 3.000000 + value: {x: 1.247608, y: 1.247608, z: 1.247608} + - time: 3.166667 + value: {x: 1.298094, y: 1.298094, z: 1.298094} + - time: 3.333333 + value: {x: 1.349436, y: 1.349436, z: 1.349436} + - time: 3.500000 + value: {x: 1.401629, y: 1.401629, z: 1.401629} + - time: 3.666667 + value: {x: 1.454668, y: 1.454668, z: 1.454668} + - time: 3.833333 + value: {x: 1.508549, y: 1.508549, z: 1.508549} + - time: 4.000000 + value: {x: 1.563269, y: 1.563269, z: 1.563269} + - time: 4.166667 + value: {x: 1.618821, y: 1.618821, z: 1.618821} + - time: 4.333333 + value: {x: 1.675203, y: 1.675203, z: 1.675203} + - time: 4.500000 + value: {x: 1.732410, y: 1.732410, z: 1.732410} + - time: 4.666667 + value: {x: 1.790439, y: 1.790439, z: 1.790439} + - time: 4.833333 + value: {x: 1.849285, y: 1.849285, z: 1.849285} + - time: 5.000000 + value: {x: 1.908944, y: 1.908944, z: 1.908944} + - time: 5.166667 + value: {x: 1.969414, y: 1.969414, z: 1.969414} + - time: 5.333333 + value: {x: 2.030689, y: 2.030689, z: 2.030689} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_5: + position: + - time: 0.000000 + value: {x: -0.039630, y: 0.457204, z: -0.005600} + - time: 0.033333 + value: {x: -0.039790, y: 0.457202, z: -0.005625} + - time: 0.066667 + value: {x: -0.061731, y: 0.281783, z: -0.009267} + - time: 0.100000 + value: {x: -0.079780, y: 0.160109, z: -0.014312} + - time: 0.133333 + value: {x: -0.095100, y: 0.083964, z: -0.020278} + - time: 0.166667 + value: {x: -0.108340, y: 0.041942, z: -0.026961} + - time: 0.200000 + value: {x: -0.119836, y: 0.020873, z: -0.034356} + - time: 0.233333 + value: {x: -0.129594, y: 0.009908, z: -0.042859} + - time: 0.266667 + value: {x: -0.136816, y: 0.004730, z: -0.054111} + - time: 0.300000 + value: {x: -0.140664, y: 0.002325, z: -0.069703} + - time: 0.333333 + value: {x: -0.140491, y: 0.001311, z: -0.090853} + - time: 0.366667 + value: {x: -0.135718, y: 0.001371, z: -0.118765} + - time: 0.400000 + value: {x: -0.126443, y: 0.002440, z: -0.153299} + - time: 0.433333 + value: {x: -0.115563, y: 0.004543, z: -0.189718} + - time: 0.466667 + value: {x: -0.106314, y: 0.007732, z: -0.222806} + - time: 0.500000 + value: {x: -0.100431, y: 0.012326, z: -0.249618} + - time: 0.533333 + value: {x: -0.096980, y: 0.018529, z: -0.271859} + - time: 0.566667 + value: {x: -0.095171, y: 0.026765, z: -0.290893} + - time: 0.600000 + value: {x: -0.094997, y: 0.036978, z: -0.306709} + - time: 0.633333 + value: {x: -0.097331, y: 0.049109, z: -0.317867} + - time: 0.666667 + value: {x: -0.102589, y: 0.062516, z: -0.323807} + - time: 0.700000 + value: {x: -0.110753, y: 0.075070, z: -0.324529} + - time: 0.733333 + value: {x: -0.121111, y: 0.084098, z: -0.321301} + - time: 0.766667 + value: {x: -0.133101, y: 0.087425, z: -0.314936} + - time: 0.800000 + value: {x: -0.145112, y: 0.084862, z: -0.308337} + - time: 0.833333 + value: {x: -0.155607, y: 0.077087, z: -0.303862} + - time: 0.866667 + value: {x: -0.163222, y: 0.064563, z: -0.304014} + - time: 0.900000 + value: {x: -0.167850, y: 0.049622, z: -0.308844} + - time: 0.933333 + value: {x: -0.169763, y: 0.034732, z: -0.317946} + - time: 0.966667 + value: {x: -0.168879, y: 0.021882, z: -0.331447} + - time: 1.000000 + value: {x: -0.163425, y: 0.011721, z: -0.352370} + - time: 1.033333 + value: {x: -0.151033, y: 0.004386, z: -0.384563} + - time: 1.066667 + value: {x: -0.129671, y: -0.000218, z: -0.431552} + - time: 1.100000 + value: {x: -0.099939, y: -0.002326, z: -0.492254} + - time: 1.133333 + value: {x: -0.065019, y: -0.002598, z: -0.561433} + - time: 1.166667 + value: {x: -0.027949, y: -0.001626, z: -0.634051} + - time: 1.200000 + value: {x: 0.008694, y: 0.000202, z: -0.705755} + - time: 1.233333 + value: {x: 0.043088, y: 0.002884, z: -0.773483} + - time: 1.266667 + value: {x: 0.073804, y: 0.006485, z: -0.835049} + - time: 1.300000 + value: {x: 0.099584, y: 0.011300, z: -0.888140} + - time: 1.333333 + value: {x: 0.120148, y: 0.017132, z: -0.932468} + - time: 1.366667 + value: {x: 0.135256, y: 0.023992, z: -0.967588} + - time: 1.400000 + value: {x: 0.146484, y: 0.031365, z: -0.996159} + - time: 1.433333 + value: {x: 0.154017, y: 0.039212, z: -1.018395} + - time: 1.466667 + value: {x: 0.159041, y: 0.047124, z: -1.036330} + - time: 1.500000 + value: {x: 0.162014, y: 0.054989, z: -1.050666} + - time: 1.533333 + value: {x: 0.163333, y: 0.062644, z: -1.062260} + - time: 1.566667 + value: {x: 0.163310, y: 0.070281, z: -1.071366} + - time: 1.600000 + value: {x: 0.162317, y: 0.077709, z: -1.078852} + - time: 1.633333 + value: {x: 0.160505, y: 0.085049, z: -1.084823} + - time: 1.666667 + value: {x: 0.158052, y: 0.092261, z: -1.089633} + - time: 1.700000 + value: {x: 0.155089, y: 0.099346, z: -1.093505} + - time: 1.733333 + value: {x: 0.151656, y: 0.106344, z: -1.096484} + - time: 1.766667 + value: {x: 0.147769, y: 0.113230, z: -1.098619} + - time: 1.800000 + value: {x: 0.143465, y: 0.119992, z: -1.099964} + - time: 1.833333 + value: {x: 0.138761, y: 0.126641, z: -1.100531} + - time: 1.866667 + value: {x: 0.133732, y: 0.133074, z: -1.100578} + - time: 1.900000 + value: {x: 0.128113, y: 0.139554, z: -1.099369} + - time: 1.933333 + value: {x: 0.122150, y: 0.145791, z: -1.097657} + - time: 1.966667 + value: {x: 0.115902, y: 0.151910, z: -1.095356} + - time: 2.000000 + value: {x: 0.109170, y: 0.157960, z: -1.092122} + - time: 2.033333 + value: {x: 0.102075, y: 0.163866, z: -1.088210} + - time: 2.066667 + value: {x: 0.094839, y: 0.169608, z: -1.083990} + - time: 2.100000 + value: {x: 0.087111, y: 0.175145, z: -1.078793} + - time: 2.133333 + value: {x: 0.079397, y: 0.180314, z: -1.073696} + - time: 2.166667 + value: {x: 0.071468, y: 0.185196, z: -1.068102} + - time: 2.200000 + value: {x: 0.063438, y: 0.189774, z: -1.062168} + - time: 2.233333 + value: {x: 0.055428, y: 0.193874, z: -1.056394} + - time: 2.266667 + value: {x: 0.047311, y: 0.197619, z: -1.050180} + - time: 2.300000 + value: {x: 0.039258, y: 0.200996, z: -1.044088} + - time: 2.366667 + value: {x: 0.023232, y: 0.206291, z: -1.031845} + - time: 2.400000 + value: {x: 0.015337, y: 0.208208, z: -1.025880} + - time: 2.433333 + value: {x: 0.007483, y: 0.209798, z: -1.019790} + - time: 2.466667 + value: {x: -0.000244, y: 0.211024, z: -1.013891} + - time: 2.500000 + value: {x: -0.007877, y: 0.211599, z: -1.008111} + - time: 2.533333 + value: {x: -0.015361, y: 0.212110, z: -1.002582} + - time: 2.600000 + value: {x: -0.030035, y: 0.211607, z: -0.991725} + - time: 2.633333 + value: {x: -0.037192, y: 0.211046, z: -0.986487} + - time: 2.666667 + value: {x: -0.044251, y: 0.210191, z: -0.981268} + - time: 2.700000 + value: {x: -0.051171, y: 0.209287, z: -0.976320} + - time: 2.766667 + value: {x: -0.064619, y: 0.206529, z: -0.966884} + - time: 2.800000 + value: {x: -0.071152, y: 0.205064, z: -0.962499} + - time: 2.833333 + value: {x: -0.077573, y: 0.203310, z: -0.958074} + - time: 2.900000 + value: {x: -0.090074, y: 0.199762, z: -0.949769} + - time: 2.966667 + value: {x: -0.102037, y: 0.195644, z: -0.942158} + - time: 3.033333 + value: {x: -0.113573, y: 0.191484, z: -0.935063} + - time: 3.066667 + value: {x: -0.119141, y: 0.189259, z: -0.931766} + - time: 3.133333 + value: {x: -0.130003, y: 0.184878, z: -0.925599} + - time: 3.233333 + value: {x: -0.145502, y: 0.178162, z: -0.917067} + - time: 3.300000 + value: {x: -0.155445, y: 0.173723, z: -0.911833} + - time: 3.366667 + value: {x: -0.165096, y: 0.169316, z: -0.906914} + - time: 3.500000 + value: {x: -0.183789, y: 0.160774, z: -0.897549} + - time: 3.666667 + value: {x: -0.206159, y: 0.150739, z: -0.886617} + - time: 3.733333 + value: {x: -0.214802, y: 0.147097, z: -0.882338} + - time: 3.766667 + value: {x: -0.219009, y: 0.145229, z: -0.880486} + - time: 3.800000 + value: {x: -0.223370, y: 0.143516, z: -0.878125} + - time: 3.833333 + value: {x: -0.227612, y: 0.141726, z: -0.876096} + - time: 3.933333 + value: {x: -0.240020, y: 0.136901, z: -0.869982} + - time: 3.966667 + value: {x: -0.243984, y: 0.135296, z: -0.868284} + - time: 4.033333 + value: {x: -0.252036, y: 0.132320, z: -0.864391} + - time: 4.066667 + value: {x: -0.256061, y: 0.131003, z: -0.862249} + - time: 4.100000 + value: {x: -0.259942, y: 0.129544, z: -0.860564} + - time: 4.133333 + value: {x: -0.263827, y: 0.128328, z: -0.858577} + - time: 4.166667 + value: {x: -0.267605, y: 0.127069, z: -0.856855} + - time: 4.200000 + value: {x: -0.271271, y: 0.125749, z: -0.855428} + - time: 4.233333 + value: {x: -0.274937, y: 0.124659, z: -0.853722} + - time: 4.300000 + value: {x: -0.282050, y: 0.122401, z: -0.850865} + - time: 4.333333 + value: {x: -0.285687, y: 0.121454, z: -0.849088} + - time: 4.400000 + value: {x: -0.292632, y: 0.119446, z: -0.846327} + - time: 4.433333 + value: {x: -0.296048, y: 0.118663, z: -0.844790} + - time: 4.500000 + value: {x: -0.302559, y: 0.116999, z: -0.842470} + - time: 4.533333 + value: {x: -0.305675, y: 0.116168, z: -0.841590} + - time: 4.566667 + value: {x: -0.308787, y: 0.115574, z: -0.840427} + - time: 4.600000 + value: {x: -0.311747, y: 0.114824, z: -0.839759} + - time: 4.666667 + value: {x: -0.317560, y: 0.113782, z: -0.838086} + - time: 4.700000 + value: {x: -0.320292, y: 0.113171, z: -0.837710} + - time: 4.766666 + value: {x: -0.325653, y: 0.112415, z: -0.836605} + - time: 4.833333 + value: {x: -0.330639, y: 0.111662, z: -0.836261} + - time: 4.900000 + value: {x: -0.335382, y: 0.111269, z: -0.835981} + - time: 5.000000 + value: {x: -0.341850, y: 0.110868, z: -0.836681} + - time: 5.333333 + value: {x: -0.361339, y: 0.110607, z: -0.839778} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.491594, y: 0.491594, z: 0.491594} + - time: 0.166667 + value: {x: 0.525667, y: 0.525667, z: 0.525667} + - time: 0.333333 + value: {x: 0.560713, y: 0.560713, z: 0.560713} + - time: 0.500000 + value: {x: 0.596725, y: 0.596725, z: 0.596725} + - time: 0.666667 + value: {x: 0.633693, y: 0.633693, z: 0.633693} + - time: 0.833333 + value: {x: 0.671609, y: 0.671609, z: 0.671609} + - time: 1.000000 + value: {x: 0.710465, y: 0.710465, z: 0.710465} + - time: 1.166667 + value: {x: 0.750254, y: 0.750254, z: 0.750254} + - time: 1.333333 + value: {x: 0.790969, y: 0.790969, z: 0.790969} + - time: 1.500000 + value: {x: 0.832603, y: 0.832603, z: 0.832603} + - time: 1.666667 + value: {x: 0.875148, y: 0.875148, z: 0.875148} + - time: 1.833333 + value: {x: 0.918599, y: 0.918599, z: 0.918599} + - time: 2.000000 + value: {x: 0.962949, y: 0.962949, z: 0.962949} + - time: 2.166667 + value: {x: 1.008192, y: 1.008192, z: 1.008192} + - time: 2.333333 + value: {x: 1.054323, y: 1.054323, z: 1.054323} + - time: 2.500000 + value: {x: 1.101335, y: 1.101335, z: 1.101335} + - time: 2.666667 + value: {x: 1.149223, y: 1.149223, z: 1.149223} + - time: 2.833333 + value: {x: 1.197983, y: 1.197983, z: 1.197983} + - time: 3.000000 + value: {x: 1.247608, y: 1.247608, z: 1.247608} + - time: 3.166667 + value: {x: 1.298094, y: 1.298094, z: 1.298094} + - time: 3.333333 + value: {x: 1.349436, y: 1.349436, z: 1.349436} + - time: 3.500000 + value: {x: 1.401629, y: 1.401629, z: 1.401629} + - time: 3.666667 + value: {x: 1.454668, y: 1.454668, z: 1.454668} + - time: 3.833333 + value: {x: 1.508549, y: 1.508549, z: 1.508549} + - time: 4.000000 + value: {x: 1.563269, y: 1.563269, z: 1.563269} + - time: 4.166667 + value: {x: 1.618821, y: 1.618821, z: 1.618821} + - time: 4.333333 + value: {x: 1.675203, y: 1.675203, z: 1.675203} + - time: 4.500000 + value: {x: 1.732410, y: 1.732410, z: 1.732410} + - time: 4.666667 + value: {x: 1.790439, y: 1.790439, z: 1.790439} + - time: 4.833333 + value: {x: 1.849285, y: 1.849285, z: 1.849285} + - time: 5.000000 + value: {x: 1.908944, y: 1.908944, z: 1.908944} + - time: 5.166667 + value: {x: 1.969414, y: 1.969414, z: 1.969414} + - time: 5.333333 + value: {x: 2.030689, y: 2.030689, z: 2.030689} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_6: + position: + - time: 0.000000 + value: {x: 0.033163, y: 0.462666, z: 0.021890} + - time: 0.033333 + value: {x: 0.033300, y: 0.462686, z: 0.021977} + - time: 0.066667 + value: {x: 0.052211, y: 0.290333, z: 0.033762} + - time: 0.100000 + value: {x: 0.069856, y: 0.171329, z: 0.042198} + - time: 0.133333 + value: {x: 0.086546, y: 0.097582, z: 0.048321} + - time: 0.166667 + value: {x: 0.102519, y: 0.057755, z: 0.052669} + - time: 0.200000 + value: {x: 0.118010, y: 0.038710, z: 0.055465} + - time: 0.233333 + value: {x: 0.133424, y: 0.029631, z: 0.056469} + - time: 0.266667 + value: {x: 0.149871, y: 0.026238, z: 0.054155} + - time: 0.300000 + value: {x: 0.168398, y: 0.025515, z: 0.047012} + - time: 0.333333 + value: {x: 0.189806, y: 0.026073, z: 0.033884} + - time: 0.366667 + value: {x: 0.214883, y: 0.027674, z: 0.013637} + - time: 0.400000 + value: {x: 0.243586, y: 0.030202, z: -0.013560} + - time: 0.433333 + value: {x: 0.273104, y: 0.033684, z: -0.042938} + - time: 0.466667 + value: {x: 0.300345, y: 0.038241, z: -0.069234} + - time: 0.500000 + value: {x: 0.323554, y: 0.044114, z: -0.089500} + - time: 0.533333 + value: {x: 0.343788, y: 0.051577, z: -0.105403} + - time: 0.566667 + value: {x: 0.361886, y: 0.061057, z: -0.118288} + - time: 0.600000 + value: {x: 0.377854, y: 0.072459, z: -0.128142} + - time: 0.633333 + value: {x: 0.390836, y: 0.085710, z: -0.133511} + - time: 0.666667 + value: {x: 0.400523, y: 0.100241, z: -0.133808} + - time: 0.700000 + value: {x: 0.406917, y: 0.113884, z: -0.129031} + - time: 0.733333 + value: {x: 0.410798, y: 0.124006, z: -0.120430} + - time: 0.766667 + value: {x: 0.412650, y: 0.128340, z: -0.108833} + - time: 0.800000 + value: {x: 0.414244, y: 0.126831, z: -0.097100} + - time: 0.833333 + value: {x: 0.416984, y: 0.120013, z: -0.087622} + - time: 0.866667 + value: {x: 0.422402, y: 0.108495, z: -0.082857} + - time: 0.900000 + value: {x: 0.430520, y: 0.094517, z: -0.082874} + - time: 0.933333 + value: {x: 0.441104, y: 0.080567, z: -0.087258} + - time: 0.966667 + value: {x: 0.454232, y: 0.068622, z: -0.096131} + - time: 1.000000 + value: {x: 0.471732, y: 0.059374, z: -0.112507} + - time: 1.033333 + value: {x: 0.495911, y: 0.052890, z: -0.140244} + - time: 1.066667 + value: {x: 0.528904, y: 0.049167, z: -0.182843} + - time: 1.100000 + value: {x: 0.570054, y: 0.047905, z: -0.239230} + - time: 1.133333 + value: {x: 0.616225, y: 0.048484, z: -0.304163} + - time: 1.166667 + value: {x: 0.664392, y: 0.050318, z: -0.372593} + - time: 1.200000 + value: {x: 0.711937, y: 0.052971, z: -0.440181} + - time: 1.233333 + value: {x: 0.757020, y: 0.056414, z: -0.503867} + - time: 1.266667 + value: {x: 0.798346, y: 0.060843, z: -0.561430} + - time: 1.300000 + value: {x: 0.834508, y: 0.066399, z: -0.610596} + - time: 1.333333 + value: {x: 0.865349, y: 0.073002, z: -0.651042} + - time: 1.366667 + value: {x: 0.890602, y: 0.080633, z: -0.682332} + - time: 1.400000 + value: {x: 0.911868, y: 0.088793, z: -0.707117} + - time: 1.433333 + value: {x: 0.929269, y: 0.097379, z: -0.725627} + - time: 1.466667 + value: {x: 0.944032, y: 0.106020, z: -0.739883} + - time: 1.500000 + value: {x: 0.956578, y: 0.114562, z: -0.750600} + - time: 1.533333 + value: {x: 0.967437, y: 0.122973, z: -0.758595} + - time: 1.566667 + value: {x: 0.976741, y: 0.131260, z: -0.764172} + - time: 1.600000 + value: {x: 0.985037, y: 0.139404, z: -0.768154} + - time: 1.633333 + value: {x: 0.992372, y: 0.147418, z: -0.770669} + - time: 1.666667 + value: {x: 0.998967, y: 0.155306, z: -0.772061} + - time: 1.700000 + value: {x: 1.004958, y: 0.163068, z: -0.772553} + - time: 1.733333 + value: {x: 1.010369, y: 0.170727, z: -0.772192} + - time: 1.766667 + value: {x: 1.015233, y: 0.178272, z: -0.771022} + - time: 1.800000 + value: {x: 1.019584, y: 0.185686, z: -0.769099} + - time: 1.833333 + value: {x: 1.023425, y: 0.192964, z: -0.766436} + - time: 1.866667 + value: {x: 1.026930, y: 0.200098, z: -0.763271} + - time: 1.900000 + value: {x: 1.029623, y: 0.207142, z: -0.758913} + - time: 1.933333 + value: {x: 1.031993, y: 0.214044, z: -0.754059} + - time: 1.966667 + value: {x: 1.033973, y: 0.220802, z: -0.748655} + - time: 2.000000 + value: {x: 1.035353, y: 0.227454, z: -0.742357} + - time: 2.033333 + value: {x: 1.036293, y: 0.233958, z: -0.735409} + - time: 2.066667 + value: {x: 1.037014, y: 0.240296, z: -0.728184} + - time: 2.100000 + value: {x: 1.037109, y: 0.246369, z: -0.720025} + - time: 2.133333 + value: {x: 1.037248, y: 0.252173, z: -0.711970} + - time: 2.166667 + value: {x: 1.037050, y: 0.257640, z: -0.703456} + - time: 2.200000 + value: {x: 1.036608, y: 0.262727, z: -0.694649} + - time: 2.233333 + value: {x: 1.036252, y: 0.267471, z: -0.685994} + - time: 2.266667 + value: {x: 1.035584, y: 0.271719, z: -0.676960} + - time: 2.300000 + value: {x: 1.034968, y: 0.275654, z: -0.668059} + - time: 2.333333 + value: {x: 1.034368, y: 0.279014, z: -0.659231} + - time: 2.366667 + value: {x: 1.033617, y: 0.282057, z: -0.650276} + - time: 2.400000 + value: {x: 1.033000, y: 0.284560, z: -0.641566} + - time: 2.433333 + value: {x: 1.032269, y: 0.286645, z: -0.632782} + - time: 2.466667 + value: {x: 1.031629, y: 0.288388, z: -0.624203} + - time: 2.500000 + value: {x: 1.031039, y: 0.289493, z: -0.615764} + - time: 2.533333 + value: {x: 1.030578, y: 0.290575, z: -0.607588} + - time: 2.600000 + value: {x: 1.029695, y: 0.291126, z: -0.591527} + - time: 2.633333 + value: {x: 1.029328, y: 0.291072, z: -0.583725} + - time: 2.666667 + value: {x: 1.028940, y: 0.290661, z: -0.575979} + - time: 2.700000 + value: {x: 1.028701, y: 0.290261, z: -0.568508} + - time: 2.766667 + value: {x: 1.028425, y: 0.288484, z: -0.554097} + - time: 2.800000 + value: {x: 1.028462, y: 0.287572, z: -0.547239} + - time: 2.833333 + value: {x: 1.028436, y: 0.286247, z: -0.540392} + - time: 2.900000 + value: {x: 1.028658, y: 0.283640, z: -0.527280} + - time: 2.966667 + value: {x: 1.029209, y: 0.280456, z: -0.514942} + - time: 3.033333 + value: {x: 1.029987, y: 0.277218, z: -0.503197} + - time: 3.066667 + value: {x: 1.030495, y: 0.275446, z: -0.497605} + - time: 3.133333 + value: {x: 1.031716, y: 0.272038, z: -0.486884} + - time: 3.233333 + value: {x: 1.033805, y: 0.266589, z: -0.471703} + - time: 3.333333 + value: {x: 1.036216, y: 0.261199, z: -0.457487} + - time: 3.466667 + value: {x: 1.039637, y: 0.254250, z: -0.439559} + - time: 3.633333 + value: {x: 1.043938, y: 0.246125, z: -0.418248} + - time: 3.733333 + value: {x: 1.046513, y: 0.241660, z: -0.406001} + - time: 3.766667 + value: {x: 1.047508, y: 0.240255, z: -0.402195} + - time: 3.800000 + value: {x: 1.048160, y: 0.238855, z: -0.397933} + - time: 3.933333 + value: {x: 1.051421, y: 0.233725, z: -0.382269} + - time: 3.966667 + value: {x: 1.052409, y: 0.232555, z: -0.378709} + - time: 4.066667 + value: {x: 1.054671, y: 0.229274, z: -0.367250} + - time: 4.100000 + value: {x: 1.055607, y: 0.228259, z: -0.363759} + - time: 4.133333 + value: {x: 1.056319, y: 0.227303, z: -0.360023} + - time: 4.233333 + value: {x: 1.059073, y: 0.224692, z: -0.349936} + - time: 4.300000 + value: {x: 1.061068, y: 0.223172, z: -0.343646} + - time: 4.333333 + value: {x: 1.061818, y: 0.222479, z: -0.340201} + - time: 4.433333 + value: {x: 1.064635, y: 0.220657, z: -0.330923} + - time: 4.566667 + value: {x: 1.069022, y: 0.218865, z: -0.320096} + - time: 4.666667 + value: {x: 1.072723, y: 0.218001, z: -0.313041} + - time: 4.766666 + value: {x: 1.076824, y: 0.217551, z: -0.306956} + - time: 4.800000 + value: {x: 1.078290, y: 0.217494, z: -0.305155} + - time: 4.900000 + value: {x: 1.082927, y: 0.217608, z: -0.300357} + - time: 4.966667 + value: {x: 1.086355, y: 0.217920, z: -0.297844} + - time: 5.333333 + value: {x: 1.104741, y: 0.220603, z: -0.286123} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.491594, y: 0.491594, z: 0.491594} + - time: 0.166667 + value: {x: 0.525667, y: 0.525667, z: 0.525667} + - time: 0.333333 + value: {x: 0.560713, y: 0.560713, z: 0.560713} + - time: 0.500000 + value: {x: 0.596725, y: 0.596725, z: 0.596725} + - time: 0.666667 + value: {x: 0.633693, y: 0.633693, z: 0.633693} + - time: 0.833333 + value: {x: 0.671609, y: 0.671609, z: 0.671609} + - time: 1.000000 + value: {x: 0.710465, y: 0.710465, z: 0.710465} + - time: 1.166667 + value: {x: 0.750254, y: 0.750254, z: 0.750254} + - time: 1.333333 + value: {x: 0.790969, y: 0.790969, z: 0.790969} + - time: 1.500000 + value: {x: 0.832603, y: 0.832603, z: 0.832603} + - time: 1.666667 + value: {x: 0.875148, y: 0.875148, z: 0.875148} + - time: 1.833333 + value: {x: 0.918599, y: 0.918599, z: 0.918599} + - time: 2.000000 + value: {x: 0.962949, y: 0.962949, z: 0.962949} + - time: 2.166667 + value: {x: 1.008192, y: 1.008192, z: 1.008192} + - time: 2.333333 + value: {x: 1.054323, y: 1.054323, z: 1.054323} + - time: 2.500000 + value: {x: 1.101335, y: 1.101335, z: 1.101335} + - time: 2.666667 + value: {x: 1.149223, y: 1.149223, z: 1.149223} + - time: 2.833333 + value: {x: 1.197983, y: 1.197983, z: 1.197983} + - time: 3.000000 + value: {x: 1.247608, y: 1.247608, z: 1.247608} + - time: 3.166667 + value: {x: 1.298094, y: 1.298094, z: 1.298094} + - time: 3.333333 + value: {x: 1.349436, y: 1.349436, z: 1.349436} + - time: 3.500000 + value: {x: 1.401629, y: 1.401629, z: 1.401629} + - time: 3.666667 + value: {x: 1.454668, y: 1.454668, z: 1.454668} + - time: 3.833333 + value: {x: 1.508549, y: 1.508549, z: 1.508549} + - time: 4.000000 + value: {x: 1.563269, y: 1.563269, z: 1.563269} + - time: 4.166667 + value: {x: 1.618821, y: 1.618821, z: 1.618821} + - time: 4.333333 + value: {x: 1.675203, y: 1.675203, z: 1.675203} + - time: 4.500000 + value: {x: 1.732410, y: 1.732410, z: 1.732410} + - time: 4.666667 + value: {x: 1.790439, y: 1.790439, z: 1.790439} + - time: 4.833333 + value: {x: 1.849285, y: 1.849285, z: 1.849285} + - time: 5.000000 + value: {x: 1.908944, y: 1.908944, z: 1.908944} + - time: 5.166667 + value: {x: 1.969414, y: 1.969414, z: 1.969414} + - time: 5.333333 + value: {x: 2.030689, y: 2.030689, z: 2.030689} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_7: + position: + - time: 0.000000 + value: {x: 0.015904, y: 0.491772, z: -0.012272} + - time: 0.033333 + value: {x: 0.015970, y: 0.491910, z: -0.012325} + - time: 0.066667 + value: {x: 0.025193, y: 0.335893, z: -0.019705} + - time: 0.100000 + value: {x: 0.034387, y: 0.231155, z: -0.028057} + - time: 0.133333 + value: {x: 0.043493, y: 0.170204, z: -0.036976} + - time: 0.166667 + value: {x: 0.052535, y: 0.142060, z: -0.046321} + - time: 0.200000 + value: {x: 0.061628, y: 0.133806, z: -0.056191} + - time: 0.233333 + value: {x: 0.071078, y: 0.134790, z: -0.067012} + - time: 0.266667 + value: {x: 0.081899, y: 0.140868, z: -0.080392} + - time: 0.300000 + value: {x: 0.095116, y: 0.149094, z: -0.098020} + - time: 0.333333 + value: {x: 0.111521, y: 0.158125, z: -0.121216} + - time: 0.366667 + value: {x: 0.131758, y: 0.167860, z: -0.150907} + - time: 0.400000 + value: {x: 0.155851, y: 0.178158, z: -0.187214} + - time: 0.433333 + value: {x: 0.180981, y: 0.189075, z: -0.225432} + - time: 0.466667 + value: {x: 0.203927, y: 0.200843, z: -0.260083} + - time: 0.500000 + value: {x: 0.223060, y: 0.213625, z: -0.288581} + - time: 0.533333 + value: {x: 0.239315, y: 0.227799, z: -0.312359} + - time: 0.566667 + value: {x: 0.253516, y: 0.243812, z: -0.332781} + - time: 0.600000 + value: {x: 0.265733, y: 0.261532, z: -0.350027} + - time: 0.633333 + value: {x: 0.275128, y: 0.280882, z: -0.362722} + - time: 0.666667 + value: {x: 0.281268, y: 0.301391, z: -0.370021} + - time: 0.700000 + value: {x: 0.284216, y: 0.320851, z: -0.372094} + - time: 0.733333 + value: {x: 0.284680, y: 0.336691, z: -0.370047} + - time: 0.766667 + value: {x: 0.283300, y: 0.346530, z: -0.365104} + - time: 0.800000 + value: {x: 0.281617, y: 0.350490, z: -0.359595} + - time: 0.833333 + value: {x: 0.281274, y: 0.348933, z: -0.356503} + - time: 0.866667 + value: {x: 0.283558, y: 0.342651, z: -0.357716} + - time: 0.900000 + value: {x: 0.288645, y: 0.333775, z: -0.363685} + - time: 0.933333 + value: {x: 0.296261, y: 0.324824, z: -0.373918} + - time: 0.966667 + value: {x: 0.306506, y: 0.317764, z: -0.388603} + - time: 1.000000 + value: {x: 0.321137, y: 0.313341, z: -0.410588} + - time: 1.033333 + value: {x: 0.342573, y: 0.311540, z: -0.444020} + - time: 1.066667 + value: {x: 0.372796, y: 0.312474, z: -0.492037} + - time: 1.100000 + value: {x: 0.411252, y: 0.315771, z: -0.553827} + - time: 1.133333 + value: {x: 0.454746, y: 0.320853, z: -0.624009} + - time: 1.166667 + value: {x: 0.500237, y: 0.327150, z: -0.697507} + - time: 1.200000 + value: {x: 0.545189, y: 0.334166, z: -0.770185} + - time: 1.233333 + value: {x: 0.587797, y: 0.341850, z: -0.839075} + - time: 1.266667 + value: {x: 0.626558, y: 0.350550, z: -0.901464} + - time: 1.300000 + value: {x: 0.660316, y: 0.360224, z: -0.955683} + - time: 1.333333 + value: {x: 0.688722, y: 0.370936, z: -1.000953} + - time: 1.366667 + value: {x: 0.711557, y: 0.382630, z: -1.036963} + - time: 1.400000 + value: {x: 0.730390, y: 0.394834, z: -1.066294} + - time: 1.433333 + value: {x: 0.745453, y: 0.407364, z: -1.089442} + - time: 1.466667 + value: {x: 0.757907, y: 0.419900, z: -1.108271} + - time: 1.500000 + value: {x: 0.768246, y: 0.432233, z: -1.123676} + - time: 1.533333 + value: {x: 0.776784, y: 0.444493, z: -1.135962} + - time: 1.566667 + value: {x: 0.783952, y: 0.456466, z: -1.146154} + - time: 1.600000 + value: {x: 0.790018, y: 0.468340, z: -1.154405} + - time: 1.633333 + value: {x: 0.795200, y: 0.480003, z: -1.161265} + - time: 1.666667 + value: {x: 0.799655, y: 0.491505, z: -1.166921} + - time: 1.700000 + value: {x: 0.803515, y: 0.502852, z: -1.171590} + - time: 1.733333 + value: {x: 0.806834, y: 0.514044, z: -1.175393} + - time: 1.766667 + value: {x: 0.809620, y: 0.525090, z: -1.178318} + - time: 1.800000 + value: {x: 0.811914, y: 0.535967, z: -1.180443} + - time: 1.833333 + value: {x: 0.813746, y: 0.546653, z: -1.181847} + - time: 1.866667 + value: {x: 0.815137, y: 0.557250, z: -1.182400} + - time: 1.900000 + value: {x: 0.815948, y: 0.567568, z: -1.182223} + - time: 1.933333 + value: {x: 0.816281, y: 0.577837, z: -1.181090} + - time: 1.966667 + value: {x: 0.816279, y: 0.587903, z: -1.179444} + - time: 2.000000 + value: {x: 0.815747, y: 0.597790, z: -1.176991} + - time: 2.033333 + value: {x: 0.814787, y: 0.607504, z: -1.173831} + - time: 2.066667 + value: {x: 0.813623, y: 0.617024, z: -1.170345} + - time: 2.100000 + value: {x: 0.811942, y: 0.626180, z: -1.166102} + - time: 2.133333 + value: {x: 0.810147, y: 0.635165, z: -1.161510} + - time: 2.166667 + value: {x: 0.808110, y: 0.643726, z: -1.156605} + - time: 2.200000 + value: {x: 0.805959, y: 0.651797, z: -1.151641} + - time: 2.233333 + value: {x: 0.803685, y: 0.659660, z: -1.146252} + - time: 2.266667 + value: {x: 0.801333, y: 0.666839, z: -1.140973} + - time: 2.300000 + value: {x: 0.798955, y: 0.673747, z: -1.135566} + - time: 2.333333 + value: {x: 0.796514, y: 0.680122, z: -1.129970} + - time: 2.366667 + value: {x: 0.794116, y: 0.686023, z: -1.124638} + - time: 2.400000 + value: {x: 0.791710, y: 0.691473, z: -1.119151} + - time: 2.433333 + value: {x: 0.789354, y: 0.696368, z: -1.113906} + - time: 2.466667 + value: {x: 0.787054, y: 0.700934, z: -1.108720} + - time: 2.533333 + value: {x: 0.782597, y: 0.708786, z: -1.098485} + - time: 2.600000 + value: {x: 0.778416, y: 0.714866, z: -1.088806} + - time: 2.633333 + value: {x: 0.776444, y: 0.717524, z: -1.084203} + - time: 2.700000 + value: {x: 0.772732, y: 0.722006, z: -1.075508} + - time: 2.800000 + value: {x: 0.767731, y: 0.727258, z: -1.063249} + - time: 2.866667 + value: {x: 0.764837, y: 0.729739, z: -1.055932} + - time: 2.900000 + value: {x: 0.763489, y: 0.730916, z: -1.052564} + - time: 3.000000 + value: {x: 0.759949, y: 0.733704, z: -1.042957} + - time: 3.100000 + value: {x: 0.757115, y: 0.735829, z: -1.034661} + - time: 3.166667 + value: {x: 0.755560, y: 0.737067, z: -1.029719} + - time: 3.266667 + value: {x: 0.753662, y: 0.738737, z: -1.023164} + - time: 3.466667 + value: {x: 0.750741, y: 0.741546, z: -1.011831} + - time: 3.566667 + value: {x: 0.749559, y: 0.743103, z: -1.006731} + - time: 3.666667 + value: {x: 0.748253, y: 0.744784, z: -1.001344} + - time: 3.733333 + value: {x: 0.747559, y: 0.745936, z: -0.998266} + - time: 3.866667 + value: {x: 0.745957, y: 0.748646, z: -0.991529} + - time: 3.966667 + value: {x: 0.745038, y: 0.750914, z: -0.987124} + - time: 4.000000 + value: {x: 0.744751, y: 0.751638, z: -0.985827} + - time: 4.033333 + value: {x: 0.744335, y: 0.752559, z: -0.984039} + - time: 4.066667 + value: {x: 0.744000, y: 0.753309, z: -0.982703} + - time: 4.100000 + value: {x: 0.743669, y: 0.754290, z: -0.981080} + - time: 4.133333 + value: {x: 0.743420, y: 0.755100, z: -0.979907} + - time: 4.200000 + value: {x: 0.742988, y: 0.757122, z: -0.977226} + - time: 4.333333 + value: {x: 0.742436, y: 0.761214, z: -0.972937} + - time: 4.400000 + value: {x: 0.742179, y: 0.763575, z: -0.970653} + - time: 4.433333 + value: {x: 0.742154, y: 0.764647, z: -0.969929} + - time: 4.533333 + value: {x: 0.742291, y: 0.768508, z: -0.967459} + - time: 4.566667 + value: {x: 0.742464, y: 0.769711, z: -0.967083} + - time: 4.600000 + value: {x: 0.742645, y: 0.771159, z: -0.966408} + - time: 4.700000 + value: {x: 0.743549, y: 0.775382, z: -0.965503} + - time: 4.733333 + value: {x: 0.743953, y: 0.776847, z: -0.965398} + - time: 4.800000 + value: {x: 0.744929, y: 0.779809, z: -0.965589} + - time: 4.866667 + value: {x: 0.746074, y: 0.783095, z: -0.965808} + - time: 4.900000 + value: {x: 0.746753, y: 0.784656, z: -0.966309} + - time: 4.966667 + value: {x: 0.748218, y: 0.788152, z: -0.967104} + - time: 5.333333 + value: {x: 0.757128, y: 0.806816, z: -0.974140} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.491594, y: 0.491594, z: 0.491594} + - time: 0.166667 + value: {x: 0.525667, y: 0.525667, z: 0.525667} + - time: 0.333333 + value: {x: 0.560713, y: 0.560713, z: 0.560713} + - time: 0.500000 + value: {x: 0.596725, y: 0.596725, z: 0.596725} + - time: 0.666667 + value: {x: 0.633693, y: 0.633693, z: 0.633693} + - time: 0.833333 + value: {x: 0.671609, y: 0.671609, z: 0.671609} + - time: 1.000000 + value: {x: 0.710465, y: 0.710465, z: 0.710465} + - time: 1.166667 + value: {x: 0.750254, y: 0.750254, z: 0.750254} + - time: 1.333333 + value: {x: 0.790969, y: 0.790969, z: 0.790969} + - time: 1.500000 + value: {x: 0.832603, y: 0.832603, z: 0.832603} + - time: 1.666667 + value: {x: 0.875148, y: 0.875148, z: 0.875148} + - time: 1.833333 + value: {x: 0.918599, y: 0.918599, z: 0.918599} + - time: 2.000000 + value: {x: 0.962949, y: 0.962949, z: 0.962949} + - time: 2.166667 + value: {x: 1.008192, y: 1.008192, z: 1.008192} + - time: 2.333333 + value: {x: 1.054323, y: 1.054323, z: 1.054323} + - time: 2.500000 + value: {x: 1.101335, y: 1.101335, z: 1.101335} + - time: 2.666667 + value: {x: 1.149223, y: 1.149223, z: 1.149223} + - time: 2.833333 + value: {x: 1.197983, y: 1.197983, z: 1.197983} + - time: 3.000000 + value: {x: 1.247608, y: 1.247608, z: 1.247608} + - time: 3.166667 + value: {x: 1.298094, y: 1.298094, z: 1.298094} + - time: 3.333333 + value: {x: 1.349436, y: 1.349436, z: 1.349436} + - time: 3.500000 + value: {x: 1.401629, y: 1.401629, z: 1.401629} + - time: 3.666667 + value: {x: 1.454668, y: 1.454668, z: 1.454668} + - time: 3.833333 + value: {x: 1.508549, y: 1.508549, z: 1.508549} + - time: 4.000000 + value: {x: 1.563269, y: 1.563269, z: 1.563269} + - time: 4.166667 + value: {x: 1.618821, y: 1.618821, z: 1.618821} + - time: 4.333333 + value: {x: 1.675203, y: 1.675203, z: 1.675203} + - time: 4.500000 + value: {x: 1.732410, y: 1.732410, z: 1.732410} + - time: 4.666667 + value: {x: 1.790439, y: 1.790439, z: 1.790439} + - time: 4.833333 + value: {x: 1.849285, y: 1.849285, z: 1.849285} + - time: 5.000000 + value: {x: 1.908944, y: 1.908944, z: 1.908944} + - time: 5.166667 + value: {x: 1.969414, y: 1.969414, z: 1.969414} + - time: 5.333333 + value: {x: 2.030689, y: 2.030689, z: 2.030689} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_8: + position: + - time: 0.000000 + value: {x: -0.000382, y: 0.457730, z: 0.000636} + - time: 0.033333 + value: {x: -0.000382, y: 0.457730, z: 0.000636} + - time: 0.066667 + value: {x: -0.000299, y: 0.282607, z: 0.000497} + - time: 0.100000 + value: {x: 0.000905, y: 0.161182, z: -0.001507} + - time: 0.133333 + value: {x: 0.002848, y: 0.085264, z: -0.004740} + - time: 0.166667 + value: {x: 0.005355, y: 0.043457, z: -0.008913} + - time: 0.200000 + value: {x: 0.008410, y: 0.022582, z: -0.013997} + - time: 0.233333 + value: {x: 0.012227, y: 0.011796, z: -0.020348} + - time: 0.266667 + value: {x: 0.017757, y: 0.006799, z: -0.029553} + - time: 0.300000 + value: {x: 0.025970, y: 0.004559, z: -0.043221} + - time: 0.333333 + value: {x: 0.037613, y: 0.003674, z: -0.062599} + - time: 0.366667 + value: {x: 0.053316, y: 0.003901, z: -0.088733} + - time: 0.400000 + value: {x: 0.073063, y: 0.005112, z: -0.121598} + - time: 0.433333 + value: {x: 0.094013, y: 0.007328, z: -0.156464} + - time: 0.466667 + value: {x: 0.112943, y: 0.010668, z: -0.187969} + - time: 0.500000 + value: {x: 0.128190, y: 0.015363, z: -0.213344} + - time: 0.533333 + value: {x: 0.140689, y: 0.021688, z: -0.234147} + - time: 0.566667 + value: {x: 0.151257, y: 0.030067, z: -0.251735} + - time: 0.600000 + value: {x: 0.159943, y: 0.040399, z: -0.266190} + - time: 0.633333 + value: {x: 0.165897, y: 0.052606, z: -0.276099} + - time: 0.666667 + value: {x: 0.168694, y: 0.066125, z: -0.280754} + - time: 0.700000 + value: {x: 0.168383, y: 0.078779, z: -0.280236} + - time: 0.733333 + value: {x: 0.165675, y: 0.087941, z: -0.275729} + - time: 0.766667 + value: {x: 0.161182, y: 0.091330, z: -0.268251} + - time: 0.800000 + value: {x: 0.156471, y: 0.088904, z: -0.260412} + - time: 0.833333 + value: {x: 0.153150, y: 0.081183, z: -0.254884} + - time: 0.866667 + value: {x: 0.152532, y: 0.068786, z: -0.253856} + - time: 0.900000 + value: {x: 0.154770, y: 0.053944, z: -0.257580} + - time: 0.933333 + value: {x: 0.159592, y: 0.039148, z: -0.265605} + - time: 0.966667 + value: {x: 0.167091, y: 0.026371, z: -0.278086} + - time: 1.000000 + value: {x: 0.179031, y: 0.016308, z: -0.297957} + - time: 1.033333 + value: {x: 0.197813, y: 0.009019, z: -0.329216} + - time: 1.066667 + value: {x: 0.225437, y: 0.004508, z: -0.375191} + - time: 1.100000 + value: {x: 0.261335, y: 0.002471, z: -0.434934} + - time: 1.133333 + value: {x: 0.302315, y: 0.002288, z: -0.503136} + - time: 1.166667 + value: {x: 0.345337, y: 0.003374, z: -0.574738} + - time: 1.200000 + value: {x: 0.387853, y: 0.005288, z: -0.645495} + - time: 1.233333 + value: {x: 0.428050, y: 0.008001, z: -0.712395} + - time: 1.266667 + value: {x: 0.464453, y: 0.011716, z: -0.772980} + - time: 1.300000 + value: {x: 0.495870, y: 0.016562, z: -0.825266} + - time: 1.333333 + value: {x: 0.521976, y: 0.022468, z: -0.868714} + - time: 1.366667 + value: {x: 0.542544, y: 0.029412, z: -0.902946} + - time: 1.400000 + value: {x: 0.559149, y: 0.036897, z: -0.930580} + - time: 1.433333 + value: {x: 0.572004, y: 0.044814, z: -0.951975} + - time: 1.466667 + value: {x: 0.582279, y: 0.052795, z: -0.969075} + - time: 1.500000 + value: {x: 0.590456, y: 0.060681, z: -0.982684} + - time: 1.533333 + value: {x: 0.596878, y: 0.068451, z: -0.993373} + - time: 1.566667 + value: {x: 0.601936, y: 0.076098, z: -1.001790} + - time: 1.600000 + value: {x: 0.605932, y: 0.083615, z: -1.008440} + - time: 1.633333 + value: {x: 0.609063, y: 0.091008, z: -1.013651} + - time: 1.666667 + value: {x: 0.611492, y: 0.098281, z: -1.017693} + - time: 1.700000 + value: {x: 0.613351, y: 0.105437, z: -1.020787} + - time: 1.733333 + value: {x: 0.614689, y: 0.112495, z: -1.023015} + - time: 1.766667 + value: {x: 0.615518, y: 0.119447, z: -1.024395} + - time: 1.800000 + value: {x: 0.615877, y: 0.126275, z: -1.024992} + - time: 1.833333 + value: {x: 0.615793, y: 0.132973, z: -1.024851} + - time: 1.866667 + value: {x: 0.615303, y: 0.139537, z: -1.024037} + - time: 1.900000 + value: {x: 0.614226, y: 0.146008, z: -1.022244} + - time: 1.933333 + value: {x: 0.612715, y: 0.152352, z: -1.019730} + - time: 1.966667 + value: {x: 0.610881, y: 0.158555, z: -1.016677} + - time: 2.000000 + value: {x: 0.608531, y: 0.164655, z: -1.012766} + - time: 2.033333 + value: {x: 0.605771, y: 0.170614, z: -1.008173} + - time: 2.066667 + value: {x: 0.602827, y: 0.176413, z: -1.003273} + - time: 2.100000 + value: {x: 0.599370, y: 0.181947, z: -0.997519} + - time: 2.133333 + value: {x: 0.595842, y: 0.187226, z: -0.991647} + - time: 2.166667 + value: {x: 0.592077, y: 0.192169, z: -0.985381} + - time: 2.200000 + value: {x: 0.588199, y: 0.196733, z: -0.978928} + - time: 2.233333 + value: {x: 0.584245, y: 0.200968, z: -0.972348} + - time: 2.266667 + value: {x: 0.580201, y: 0.204703, z: -0.965616} + - time: 2.300000 + value: {x: 0.576158, y: 0.208133, z: -0.958888} + - time: 2.333333 + value: {x: 0.572082, y: 0.210998, z: -0.952104} + - time: 2.366667 + value: {x: 0.568038, y: 0.213542, z: -0.945374} + - time: 2.400000 + value: {x: 0.564025, y: 0.215559, z: -0.938695} + - time: 2.433333 + value: {x: 0.560054, y: 0.217153, z: -0.932087} + - time: 2.466667 + value: {x: 0.556163, y: 0.218414, z: -0.925610} + - time: 2.533333 + value: {x: 0.548582, y: 0.219655, z: -0.912993} + - time: 2.600000 + value: {x: 0.541324, y: 0.219273, z: -0.900914} + - time: 2.633333 + value: {x: 0.537831, y: 0.218758, z: -0.895101} + - time: 2.700000 + value: {x: 0.531106, y: 0.217034, z: -0.883908} + - time: 2.733333 + value: {x: 0.527894, y: 0.215744, z: -0.878563} + - time: 2.800000 + value: {x: 0.521714, y: 0.213014, z: -0.868278} + - time: 2.900000 + value: {x: 0.513165, y: 0.207777, z: -0.854050} + - time: 2.966667 + value: {x: 0.507957, y: 0.203742, z: -0.845382} + - time: 3.033333 + value: {x: 0.503060, y: 0.199670, z: -0.837232} + - time: 3.133333 + value: {x: 0.496355, y: 0.193269, z: -0.826074} + - time: 3.233333 + value: {x: 0.490394, y: 0.186618, z: -0.816153} + - time: 3.333333 + value: {x: 0.484878, y: 0.180061, z: -0.806972} + - time: 3.466667 + value: {x: 0.478021, y: 0.171600, z: -0.795560} + - time: 3.633333 + value: {x: 0.469934, y: 0.161650, z: -0.782102} + - time: 3.800000 + value: {x: 0.462257, y: 0.152631, z: -0.769324} + - time: 3.900000 + value: {x: 0.457759, y: 0.147693, z: -0.761838} + - time: 4.033333 + value: {x: 0.452131, y: 0.141769, z: -0.752473} + - time: 4.133333 + value: {x: 0.448024, y: 0.137780, z: -0.745638} + - time: 4.233333 + value: {x: 0.444370, y: 0.134232, z: -0.739557} + - time: 4.366667 + value: {x: 0.439781, y: 0.130147, z: -0.731919} + - time: 4.466667 + value: {x: 0.436715, y: 0.127574, z: -0.726816} + - time: 4.566667 + value: {x: 0.434163, y: 0.125431, z: -0.722568} + - time: 4.666667 + value: {x: 0.432124, y: 0.123720, z: -0.719175} + - time: 4.766666 + value: {x: 0.430603, y: 0.122444, z: -0.716644} + - time: 4.866667 + value: {x: 0.429607, y: 0.121608, z: -0.714987} + - time: 4.966667 + value: {x: 0.429149, y: 0.121224, z: -0.714224} + - time: 5.333333 + value: {x: 0.429118, y: 0.121198, z: -0.714172} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.493883, y: 0.493883, z: 0.493883} + - time: 0.166667 + value: {x: 0.529612, y: 0.529612, z: 0.529612} + - time: 0.300000 + value: {x: 0.558962, y: 0.558962, z: 0.558962} + - time: 0.433333 + value: {x: 0.588988, y: 0.588988, z: 0.588988} + - time: 0.566667 + value: {x: 0.619684, y: 0.619684, z: 0.619684} + - time: 0.700000 + value: {x: 0.651047, y: 0.651047, z: 0.651047} + - time: 0.833333 + value: {x: 0.683070, y: 0.683070, z: 0.683070} + - time: 0.966667 + value: {x: 0.715751, y: 0.715751, z: 0.715751} + - time: 1.100000 + value: {x: 0.749084, y: 0.749084, z: 0.749084} + - time: 1.233333 + value: {x: 0.783065, y: 0.783065, z: 0.783065} + - time: 1.366667 + value: {x: 0.817690, y: 0.817690, z: 0.817690} + - time: 1.500000 + value: {x: 0.852955, y: 0.852955, z: 0.852955} + - time: 1.666667 + value: {x: 0.897930, y: 0.897930, z: 0.897930} + - time: 1.833333 + value: {x: 0.943893, y: 0.943893, z: 0.943893} + - time: 2.000000 + value: {x: 0.990835, y: 0.990835, z: 0.990835} + - time: 2.166667 + value: {x: 1.038750, y: 1.038750, z: 1.038750} + - time: 2.333333 + value: {x: 1.087632, y: 1.087632, z: 1.087632} + - time: 2.500000 + value: {x: 1.137474, y: 1.137474, z: 1.137474} + - time: 2.666667 + value: {x: 1.188270, y: 1.188270, z: 1.188270} + - time: 2.833333 + value: {x: 1.240014, y: 1.240014, z: 1.240014} + - time: 3.000000 + value: {x: 1.292700, y: 1.292700, z: 1.292700} + - time: 3.166667 + value: {x: 1.346323, y: 1.346323, z: 1.346323} + - time: 3.333333 + value: {x: 1.400878, y: 1.400878, z: 1.400878} + - time: 3.500000 + value: {x: 1.456358, y: 1.456358, z: 1.456358} + - time: 3.666667 + value: {x: 1.512760, y: 1.512760, z: 1.512760} + - time: 3.833333 + value: {x: 1.570077, y: 1.570077, z: 1.570077} + - time: 4.000000 + value: {x: 1.628306, y: 1.628306, z: 1.628306} + - time: 4.166667 + value: {x: 1.687441, y: 1.687441, z: 1.687441} + - time: 4.333333 + value: {x: 1.747478, y: 1.747478, z: 1.747478} + - time: 4.500000 + value: {x: 1.808412, y: 1.808412, z: 1.808412} + - time: 4.666667 + value: {x: 1.870239, y: 1.870239, z: 1.870239} + - time: 4.833333 + value: {x: 1.932955, y: 1.932955, z: 1.932955} + - time: 5.000000 + value: {x: 1.996554, y: 1.996554, z: 1.996554} + - time: 5.166667 + value: {x: 2.061035, y: 2.061035, z: 2.061035} + - time: 5.333333 + value: {x: 2.126391, y: 2.126391, z: 2.126391} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] + point_9: + position: + - time: 0.000000 + value: {x: -0.029529, y: 0.457335, z: -0.003947} + - time: 0.033333 + value: {x: -0.029674, y: 0.457333, z: -0.003970} + - time: 0.066667 + value: {x: -0.046284, y: 0.281986, z: -0.006774} + - time: 0.100000 + value: {x: -0.060774, y: 0.160373, z: -0.011410} + - time: 0.133333 + value: {x: -0.073750, y: 0.084284, z: -0.017250} + - time: 0.166667 + value: {x: -0.085574, y: 0.042313, z: -0.024022} + - time: 0.200000 + value: {x: -0.096485, y: 0.021290, z: -0.031709} + - time: 0.233333 + value: {x: -0.106636, y: 0.010368, z: -0.040756} + - time: 0.266667 + value: {x: -0.116094, y: 0.005233, z: -0.053054} + - time: 0.300000 + value: {x: -0.124907, y: 0.002867, z: -0.070466} + - time: 0.333333 + value: {x: -0.133112, y: 0.001883, z: -0.094425} + - time: 0.366667 + value: {x: -0.140712, y: 0.001982, z: -0.126269} + - time: 0.400000 + value: {x: -0.147773, y: 0.003083, z: -0.165882} + - time: 0.433333 + value: {x: -0.154477, y: 0.005212, z: -0.207743} + - time: 0.466667 + value: {x: -0.160999, y: 0.008435, z: -0.245708} + - time: 0.500000 + value: {x: -0.167477, y: 0.013052, z: -0.276415} + - time: 0.533333 + value: {x: -0.173865, y: 0.019282, z: -0.301793} + - time: 0.566667 + value: {x: -0.180140, y: 0.027550, z: -0.323427} + - time: 0.600000 + value: {x: -0.186329, y: 0.037789, z: -0.341346} + - time: 0.633333 + value: {x: -0.192497, y: 0.049936, z: -0.353878} + - time: 0.666667 + value: {x: -0.198654, y: 0.063368, z: -0.360312} + - time: 0.700000 + value: {x: -0.204823, y: 0.075944, z: -0.360680} + - time: 0.733333 + value: {x: -0.210966, y: 0.085001, z: -0.356426} + - time: 0.766667 + value: {x: -0.217090, y: 0.088341, z: -0.348582} + - time: 0.800000 + value: {x: -0.223081, y: 0.085807, z: -0.340415} + - time: 0.833333 + value: {x: -0.228911, y: 0.078043, z: -0.334801} + - time: 0.866667 + value: {x: -0.234475, y: 0.065547, z: -0.334534} + - time: 0.900000 + value: {x: -0.239799, y: 0.050626, z: -0.339752} + - time: 0.933333 + value: {x: -0.244897, y: 0.035755, z: -0.349966} + - time: 0.966667 + value: {x: -0.249772, y: 0.022920, z: -0.365332} + - time: 1.000000 + value: {x: -0.254328, y: 0.012780, z: -0.389343} + - time: 1.033333 + value: {x: -0.258469, y: 0.005453, z: -0.426546} + - time: 1.066667 + value: {x: -0.262066, y: 0.000868, z: -0.480973} + - time: 1.100000 + value: {x: -0.265174, y: -0.001227, z: -0.551415} + - time: 1.133333 + value: {x: -0.267946, y: -0.001480, z: -0.631737} + - time: 1.166667 + value: {x: -0.270537, y: -0.000485, z: -0.716054} + - time: 1.200000 + value: {x: -0.273096, y: 0.001361, z: -0.799334} + - time: 1.233333 + value: {x: -0.275724, y: 0.004047, z: -0.878025} + - time: 1.266667 + value: {x: -0.278460, y: 0.007671, z: -0.949470} + - time: 1.300000 + value: {x: -0.281414, y: 0.012491, z: -1.011101} + - time: 1.333333 + value: {x: -0.284568, y: 0.018337, z: -1.062482} + - time: 1.366667 + value: {x: -0.287946, y: 0.025213, z: -1.103123} + - time: 1.400000 + value: {x: -0.291463, y: 0.032609, z: -1.136108} + - time: 1.433333 + value: {x: -0.295132, y: 0.040469, z: -1.161743} + - time: 1.466667 + value: {x: -0.298881, y: 0.048394, z: -1.182364} + - time: 1.500000 + value: {x: -0.302704, y: 0.056260, z: -1.198832} + - time: 1.533333 + value: {x: -0.306541, y: 0.063939, z: -1.212032} + - time: 1.566667 + value: {x: -0.310432, y: 0.071576, z: -1.222416} + - time: 1.600000 + value: {x: -0.314310, y: 0.079021, z: -1.230853} + - time: 1.633333 + value: {x: -0.318200, y: 0.086370, z: -1.237554} + - time: 1.666667 + value: {x: -0.322080, y: 0.093593, z: -1.242898} + - time: 1.700000 + value: {x: -0.325946, y: 0.100691, z: -1.247145} + - time: 1.733333 + value: {x: -0.329802, y: 0.107699, z: -1.250361} + - time: 1.766667 + value: {x: -0.333643, y: 0.114596, z: -1.252591} + - time: 1.800000 + value: {x: -0.337470, y: 0.121370, z: -1.253904} + - time: 1.833333 + value: {x: -0.341288, y: 0.128027, z: -1.254325} + - time: 1.866667 + value: {x: -0.345066, y: 0.134486, z: -1.254082} + - time: 1.900000 + value: {x: -0.348879, y: 0.140961, z: -1.252480} + - time: 1.933333 + value: {x: -0.352646, y: 0.147219, z: -1.250209} + - time: 1.966667 + value: {x: -0.356402, y: 0.153353, z: -1.247270} + - time: 2.000000 + value: {x: -0.360161, y: 0.159412, z: -1.243272} + - time: 2.033333 + value: {x: -0.363908, y: 0.165326, z: -1.238482} + - time: 2.066667 + value: {x: -0.367631, y: 0.171078, z: -1.233334} + - time: 2.100000 + value: {x: -0.371366, y: 0.176611, z: -1.227093} + - time: 2.133333 + value: {x: -0.375041, y: 0.181801, z: -1.220887} + - time: 2.166667 + value: {x: -0.378713, y: 0.186694, z: -1.214141} + - time: 2.200000 + value: {x: -0.382382, y: 0.191266, z: -1.207057} + - time: 2.233333 + value: {x: -0.385983, y: 0.195392, z: -1.200049} + - time: 2.266667 + value: {x: -0.389602, y: 0.199132, z: -1.192639} + - time: 2.300000 + value: {x: -0.393175, y: 0.202517, z: -1.185327} + - time: 2.366667 + value: {x: -0.400237, y: 0.207831, z: -1.170634} + - time: 2.400000 + value: {x: -0.403712, y: 0.209766, z: -1.163441} + - time: 2.433333 + value: {x: -0.407187, y: 0.211354, z: -1.156177} + - time: 2.466667 + value: {x: -0.410623, y: 0.212585, z: -1.149113} + - time: 2.500000 + value: {x: -0.414025, y: 0.213168, z: -1.142176} + - time: 2.533333 + value: {x: -0.417383, y: 0.213698, z: -1.135498} + - time: 2.600000 + value: {x: -0.424036, y: 0.213215, z: -1.122445} + - time: 2.633333 + value: {x: -0.427324, y: 0.212660, z: -1.116154} + - time: 2.666667 + value: {x: -0.430602, y: 0.211799, z: -1.109934} + - time: 2.700000 + value: {x: -0.433832, y: 0.210903, z: -1.103980} + - time: 2.766667 + value: {x: -0.440210, y: 0.208157, z: -1.092626} + - time: 2.800000 + value: {x: -0.443337, y: 0.206713, z: -1.087286} + - time: 2.833333 + value: {x: -0.446474, y: 0.204954, z: -1.081996} + - time: 2.900000 + value: {x: -0.452638, y: 0.201416, z: -1.071983} + - time: 2.966667 + value: {x: -0.458693, y: 0.197310, z: -1.062781} + - time: 3.033333 + value: {x: -0.464644, y: 0.193162, z: -1.054182} + - time: 3.066667 + value: {x: -0.467581, y: 0.190942, z: -1.050181} + - time: 3.133333 + value: {x: -0.473360, y: 0.186589, z: -1.042618} + - time: 3.233333 + value: {x: -0.481898, y: 0.179879, z: -1.032256} + - time: 3.333333 + value: {x: -0.490218, y: 0.173218, z: -1.022817} + - time: 3.466667 + value: {x: -0.501017, y: 0.164618, z: -1.011166} + - time: 3.633333 + value: {x: -0.514076, y: 0.154500, z: -0.997478} + - time: 3.733333 + value: {x: -0.521687, y: 0.148887, z: -0.989690} + - time: 3.766667 + value: {x: -0.524159, y: 0.147040, z: -0.987342} + - time: 3.800000 + value: {x: -0.526668, y: 0.145317, z: -0.984516} + - time: 3.900000 + value: {x: -0.534011, y: 0.140282, z: -0.976920} + - time: 3.966667 + value: {x: -0.538792, y: 0.137131, z: -0.972386} + - time: 4.066667 + value: {x: -0.545899, y: 0.132835, z: -0.965052} + - time: 4.133333 + value: {x: -0.550532, y: 0.130168, z: -0.960545} + - time: 4.233333 + value: {x: -0.557337, y: 0.126514, z: -0.954539} + - time: 4.300000 + value: {x: -0.561772, y: 0.124276, z: -0.950946} + - time: 4.333333 + value: {x: -0.564006, y: 0.123315, z: -0.948830} + - time: 4.433333 + value: {x: -0.570525, y: 0.120531, z: -0.943522} + - time: 4.500000 + value: {x: -0.574770, y: 0.118879, z: -0.940595} + - time: 4.566667 + value: {x: -0.578958, y: 0.117457, z: -0.938028} + - time: 4.600000 + value: {x: -0.580992, y: 0.116730, z: -0.937081} + - time: 4.666667 + value: {x: -0.585106, y: 0.115673, z: -0.935016} + - time: 4.700000 + value: {x: -0.587087, y: 0.115085, z: -0.934408} + - time: 4.766666 + value: {x: -0.591098, y: 0.114315, z: -0.933009} + - time: 4.833333 + value: {x: -0.594983, y: 0.113584, z: -0.932365} + - time: 4.900000 + value: {x: -0.598851, y: 0.113184, z: -0.931912} + - time: 4.966667 + value: {x: -0.602606, y: 0.112856, z: -0.932173} + - time: 5.333333 + value: {x: -0.622234, y: 0.112568, z: -0.935232} + rotation: + [] + scale: + - time: 0.000000 + value: {x: 0.493883, y: 0.493883, z: 0.493883} + - time: 0.166667 + value: {x: 0.529612, y: 0.529612, z: 0.529612} + - time: 0.300000 + value: {x: 0.558962, y: 0.558962, z: 0.558962} + - time: 0.433333 + value: {x: 0.588988, y: 0.588988, z: 0.588988} + - time: 0.566667 + value: {x: 0.619684, y: 0.619684, z: 0.619684} + - time: 0.700000 + value: {x: 0.651047, y: 0.651047, z: 0.651047} + - time: 0.833333 + value: {x: 0.683070, y: 0.683070, z: 0.683070} + - time: 0.966667 + value: {x: 0.715751, y: 0.715751, z: 0.715751} + - time: 1.100000 + value: {x: 0.749084, y: 0.749084, z: 0.749084} + - time: 1.233333 + value: {x: 0.783065, y: 0.783065, z: 0.783065} + - time: 1.366667 + value: {x: 0.817690, y: 0.817690, z: 0.817690} + - time: 1.500000 + value: {x: 0.852955, y: 0.852955, z: 0.852955} + - time: 1.666667 + value: {x: 0.897930, y: 0.897930, z: 0.897930} + - time: 1.833333 + value: {x: 0.943893, y: 0.943893, z: 0.943893} + - time: 2.000000 + value: {x: 0.990835, y: 0.990835, z: 0.990835} + - time: 2.166667 + value: {x: 1.038750, y: 1.038750, z: 1.038750} + - time: 2.333333 + value: {x: 1.087632, y: 1.087632, z: 1.087632} + - time: 2.500000 + value: {x: 1.137474, y: 1.137474, z: 1.137474} + - time: 2.666667 + value: {x: 1.188270, y: 1.188270, z: 1.188270} + - time: 2.833333 + value: {x: 1.240014, y: 1.240014, z: 1.240014} + - time: 3.000000 + value: {x: 1.292700, y: 1.292700, z: 1.292700} + - time: 3.166667 + value: {x: 1.346323, y: 1.346323, z: 1.346323} + - time: 3.333333 + value: {x: 1.400878, y: 1.400878, z: 1.400878} + - time: 3.500000 + value: {x: 1.456358, y: 1.456358, z: 1.456358} + - time: 3.666667 + value: {x: 1.512760, y: 1.512760, z: 1.512760} + - time: 3.833333 + value: {x: 1.570077, y: 1.570077, z: 1.570077} + - time: 4.000000 + value: {x: 1.628306, y: 1.628306, z: 1.628306} + - time: 4.166667 + value: {x: 1.687441, y: 1.687441, z: 1.687441} + - time: 4.333333 + value: {x: 1.747478, y: 1.747478, z: 1.747478} + - time: 4.500000 + value: {x: 1.808412, y: 1.808412, z: 1.808412} + - time: 4.666667 + value: {x: 1.870239, y: 1.870239, z: 1.870239} + - time: 4.833333 + value: {x: 1.932955, y: 1.932955, z: 1.932955} + - time: 5.000000 + value: {x: 1.996554, y: 1.996554, z: 1.996554} + - time: 5.166667 + value: {x: 2.061035, y: 2.061035, z: 2.061035} + - time: 5.333333 + value: {x: 2.126391, y: 2.126391, z: 2.126391} + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/CloudsStart.animationAsset.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/CloudsStart.animationAsset.meta new file mode 100644 index 00000000..7fe9d347 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/CloudsStart.animationAsset.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + AnimationAsset: ! cc6b3dd5-1efd-4774-9d22-3a10a77a8e63 + ImporterName: AnimationAssetImporter + PrimaryAsset: ! cc6b3dd5-1efd-4774-9d22-3a10a77a8e63 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/line1.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/line1.mesh new file mode 100644 index 00000000..a26cebaf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/line1.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eba85fc2594e62d5e13df43f10b580eaa6f1ef2931cd11602ddb74bffe9f6bdb +size 420075 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/line1.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/line1.mesh.meta new file mode 100644 index 00000000..98f1c82b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Clouds Start/line1.mesh.meta @@ -0,0 +1,24 @@ +- ! + ImportedAssetIds: + FileMesh: ! 458d9a17-559a-44c4-83cc-2ae3ab2df652 + ImporterName: FileMeshImporter + PrimaryAsset: ! 458d9a17-559a-44c4-83cc-2ae3ab2df652 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + boneData: Float + color: UNorm Byte + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Custom Mesh Emitter.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Custom Mesh Emitter.prefab new file mode 100644 index 00000000..58a80933 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Custom Mesh Emitter.prefab @@ -0,0 +1,34 @@ +- ! + PackagePath: "" + objects: + - ! c9b8fecb-036e-4558-9f6b-cf6c123fc2d6 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -28.166780, z: 0.000092} + rotation: {x: -0.000000, y: -0.000001, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ae63f88f-8ef2-4fa9-b186-e8ea94f583af diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Custom Mesh Emitter.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Custom Mesh Emitter.prefab.meta new file mode 100644 index 00000000..f76f1c81 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Custom Mesh Emitter.prefab.meta @@ -0,0 +1,55 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! c03b943f-3767-48e9-b013-bbe596ca7fef + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! c03b943f-3767-48e9-b013-bbe596ca7fef + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! f9190aff-1aac-4ba1-8e84-b7e67a784665 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: VFX Component + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + VFXAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a +- ! + PackagePath: "" + objects: + - ! ec662a0e-4222-4bac-9241-9431bf0fcd70 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Custom Mesh Emitter + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -28.166780, z: 0.000092} + rotation: {x: -0.000000, y: -0.000001, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b51dc68b-5441-471f-85cb-790c527f2e0c +- ! + SourceRemaps: + - ae63f88f-8ef2-4fa9-b186-e8ea94f583af: b51dc68b-5441-471f-85cb-790c527f2e0c + - c9b8fecb-036e-4558-9f6b-cf6c123fc2d6: ec662a0e-4222-4bac-9241-9431bf0fcd70 + SourceState: ! c7a99275-0dd7-490a-97e5-9bbbb6ece073 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Rocket_clouds_emit.vfxgraph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Rocket_clouds_emit.vfxgraph new file mode 100644 index 00000000..0be1495c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Rocket_clouds_emit.vfxgraph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48bb41d4c4ffcb84216064801b0d8f123e4f79702d5574e065bf20dd32ca5a3b +size 1205163 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Rocket_clouds_emit.vfxgraph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Rocket_clouds_emit.vfxgraph.meta new file mode 100644 index 00000000..0490be4d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/Rocket_clouds_emit.vfxgraph.meta @@ -0,0 +1,43 @@ +- ! + ImportedAssetIds: + VFXGraph: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a + ImporterName: VFXAssetImporter + PrimaryAsset: ! 8ac631a7-b459-40f1-9e83-b9793ed5868a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + VFXGraph: ! ad35f612-c784-4da2-958d-c057b1fbb687 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Mesh: ! 10ef60b3-a4f3-4366-8c39-824420df3171 + SystemPassProperties: + 39: ! + FeedbackProperties: + {} + SimulateProperties: + Tweak_N12: + typeIdx: 1 + value: 57.829998 + particle_scale: + typeIdx: 1 + value: 1.580000 + particles_speed: + typeIdx: 1 + value: 800.000000 + particlesReduce: + typeIdx: 1 + value: 1.100000 + RenderProperties: + {} + FeedbackDefines: + [] + SimulateDefines: + [] + RenderDefines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/cl_goup.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/cl_goup.mesh new file mode 100644 index 00000000..c6cabe07 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/cl_goup.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9113f9c8d33735bbbfbb8265bb34b702220b10e46c33ca1fe544b805b61f6bce +size 19344 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/cl_goup.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/cl_goup.mesh.meta new file mode 100644 index 00000000..cba7c6fd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Custom Mesh Emitter/cl_goup.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 10ef60b3-a4f3-4366-8c39-824420df3171 + ImporterName: FileMeshImporter + PrimaryAsset: ! 10ef60b3-a4f3-4366-8c39-824420df3171 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire.ss_graph new file mode 100644 index 00000000..20d90759 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d997235c55d0c8fbfa4fcd37e5c39b41f55bbd197ded887015cc45467034e59b +size 378474 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire.ss_graph.meta new file mode 100644 index 00000000..f82a4269 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! ca27b336-e558-4c79-9d17-7126f6203909 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! ca27b336-e558-4c79-9d17-7126f6203909 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire_ANIM_mat.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire_ANIM_mat.mat new file mode 100644 index 00000000..3b7d7420 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire_ANIM_mat.mat @@ -0,0 +1,208 @@ +- ! + PackagePath: "" + PassesInfo: + - ! b94e9897-5493-4f73-afe5-096e8599cb3f +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Front + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 2 + Defines: + [] + BlendMode: Disabled + Properties: + Port_Center_N012: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Default_N017: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Default_N042: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + Port_Direction_N013: + typeIdx: 3 + value: {x: 0.000000, y: 2.000000} + Port_Input0_N006: + typeIdx: 1 + value: 0.000000 + Port_Input1_N006: + typeIdx: 1 + value: 0.200000 + Port_Input1_N007: + typeIdx: 1 + value: -1.000000 + Port_Input1_N009: + typeIdx: 1 + value: 2.000000 + Port_Input1_N019: + typeIdx: 1 + value: 2.000000 + Port_Input1_N029: + typeIdx: 1 + value: 0.050000 + Port_Input1_N032: + typeIdx: 1 + value: 1.000000 + Port_Input1_N034: + typeIdx: 1 + value: 1.000000 + Port_Input1_N050: + typeIdx: 1 + value: 0.100000 + Port_Input1_N054: + typeIdx: 1 + value: 0.200000 + Port_Input1_N056: + typeIdx: 1 + value: 0.300000 + Port_Input1_N060: + typeIdx: 1 + value: 30.000000 + Port_Multiplier_N024: + typeIdx: 1 + value: 0.750000 + Port_Position1_N010: + typeIdx: 1 + value: 0.500000 + Port_Position1_N043: + typeIdx: 1 + value: 0.510000 + Port_Position1_N044: + typeIdx: 1 + value: 0.550000 + Port_Position1_N049: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N035: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N038: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N040: + typeIdx: 1 + value: 1.000000 + Port_RangeMinA_N035: + typeIdx: 1 + value: 0.000000 + Port_RangeMinA_N038: + typeIdx: 1 + value: 0.000000 + Port_RangeMinA_N040: + typeIdx: 1 + value: 0.000000 + Port_Rotation_N012: + typeIdx: 1 + value: 90.000000 + Port_Speed_N013: + typeIdx: 1 + value: 1.000000 + Port_Value0_N010: + typeIdx: 5 + value: {x: 1.000000, y: 0.683680, z: 0.145296, w: 1.000000} + Port_Value0_N043: + typeIdx: 5 + value: {x: 1.000000, y: 0.563622, z: 0.165759, w: 1.000000} + Port_Value0_N044: + typeIdx: 5 + value: {x: 1.000000, y: 0.366949, z: 0.116960, w: 1.000000} + Port_Value0_N049: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Value1_N010: + typeIdx: 5 + value: {x: 1.000000, y: 0.995392, z: 0.937377, w: 1.000000} + Port_Value1_N031: + typeIdx: 1 + value: 0.000000 + Port_Value1_N043: + typeIdx: 5 + value: {x: 1.000000, y: 0.662745, z: 0.090196, w: 1.000000} + Port_Value1_N044: + typeIdx: 5 + value: {x: 1.000000, y: 0.563622, z: 0.165759, w: 1.000000} + Port_Value1_N049: + typeIdx: 5 + value: {x: 1.000000, y: 0.003922, z: 0.000000, w: 1.000000} + Port_Value2_N001: + typeIdx: 1 + value: 1.000000 + Port_Value2_N010: + typeIdx: 5 + value: {x: 1.000000, y: 0.682353, z: 0.145098, w: 1.000000} + Port_Value2_N043: + typeIdx: 5 + value: {x: 1.000000, y: 0.560784, z: 0.164706, w: 1.000000} + Port_Value2_N044: + typeIdx: 5 + value: {x: 1.000000, y: 0.364706, z: 0.113725, w: 1.000000} + Port_Value2_N049: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Value2_N059: + typeIdx: 1 + value: 1.000000 + Port_Value3_N059: + typeIdx: 1 + value: 1.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N14: + typeIdx: 9 + value: + id: 5d59c8dd-baf3-4f05-93ac-fbcc2cc40f9d + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + Tweak_N14BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N14Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N14Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N14UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + fire_scale: + typeIdx: 1 + value: 1.000000 + noise_freq: + typeIdx: 1 + value: 27.939999 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + range: + typeIdx: 1 + value: 0.750000 + Pass: ! ca27b336-e558-4c79-9d17-7126f6203909 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire_ANIM_mat.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire_ANIM_mat.mat.meta new file mode 100644 index 00000000..3dcd1e18 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Fire_ANIM_mat.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! e90357de-3c89-449a-b286-ef475ca93a50 + ImporterName: MaterialImporter + PrimaryAsset: ! e90357de-3c89-449a-b286-ef475ca93a50 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_ANIM_mat.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_ANIM_mat.mat new file mode 100644 index 00000000..38c748c7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_ANIM_mat.mat @@ -0,0 +1,127 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 0d4f45f9-be50-480c-a432-e101f054b4dc +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Add + Properties: + Port_Center_N006: + typeIdx: 3 + value: {x: 0.500000, y: 1.000000} + Port_Input0_N003: + typeIdx: 1 + value: 0.000000 + Port_Input0_N009: + typeIdx: 1 + value: 0.000000 + Port_Input0_N016: + typeIdx: 1 + value: 1.000000 + Port_Input0_N022: + typeIdx: 1 + value: 0.000000 + Port_Input1_N000: + typeIdx: 3 + value: {x: 0.500000, y: 0.700000} + Port_Input1_N003: + typeIdx: 1 + value: 0.500000 + Port_Input1_N009: + typeIdx: 1 + value: 1.000000 + Port_Input1_N016: + typeIdx: 1 + value: 0.900000 + Port_Input1_N017: + typeIdx: 1 + value: 1.000000 + Port_Input1_N019: + typeIdx: 1 + value: 6.000000 + Port_Input1_N020: + typeIdx: 1 + value: 0.250000 + Port_Input1_N021: + typeIdx: 1 + value: 20.000000 + Port_Input1_N022: + typeIdx: 1 + value: 0.200000 + Port_Multiplier_N012: + typeIdx: 1 + value: 1.000000 + Port_Position1_N005: + typeIdx: 1 + value: 0.230000 + Port_RangeMaxA_N015: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxA_N035: + typeIdx: 1 + value: 1.000000 + Port_RangeMaxB_N015: + typeIdx: 1 + value: 1.100000 + Port_RangeMinA_N015: + typeIdx: 1 + value: 0.000000 + Port_RangeMinA_N035: + typeIdx: 1 + value: 0.000000 + Port_RangeMinB_N015: + typeIdx: 1 + value: 1.000000 + Port_Scale_N006: + typeIdx: 3 + value: {x: 1.000000, y: 0.900000} + Port_Scale_N013: + typeIdx: 3 + value: {x: 10.000000, y: 10.000000} + Port_Value0_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.323110, z: 0.000000, w: 1.000000} + Port_Value1_N005: + typeIdx: 5 + value: {x: 1.000000, y: 0.615808, z: 0.116228, w: 1.000000} + Port_Value1_N018: + typeIdx: 1 + value: 1.000000 + Port_Value2_N005: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Port_Value3_N018: + typeIdx: 1 + value: 1.000000 + Port_ValueIn_N035: + typeIdx: 5 + value: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: -1 + glow_scale: + typeIdx: 1 + value: 1.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 5044e365-8b27-4d44-81c1-2f0238016319 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_ANIM_mat.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_ANIM_mat.mat.meta new file mode 100644 index 00000000..69d37af6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_ANIM_mat.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 889745a7-9062-432b-b028-bed9c7556fff + ImporterName: MaterialImporter + PrimaryAsset: ! 889745a7-9062-432b-b028-bed9c7556fff + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_MAt.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_MAt.ss_graph new file mode 100644 index 00000000..2009dc38 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_MAt.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97ea069de22a1e6ba57768479e0b070d2994bed121b43ac5717cae87c0fd0b04 +size 148742 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_MAt.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_MAt.ss_graph.meta new file mode 100644 index 00000000..dbed839c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/Glow_MAt.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 5044e365-8b27-4d44-81c1-2f0238016319 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 5044e365-8b27-4d44-81c1-2f0238016319 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/blendshapes1.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/blendshapes1.mesh new file mode 100644 index 00000000..a347fbc6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/blendshapes1.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b206a6d61d9920aa69c9e3562b8499044d13eeb1931f2617b12cdab16a6d11b0 +size 26202 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/blendshapes1.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/blendshapes1.mesh.meta new file mode 100644 index 00000000..96a34551 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/blendshapes1.mesh.meta @@ -0,0 +1,26 @@ +- ! + ImportedAssetIds: + FileMesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + ImporterName: FileMeshImporter + PrimaryAsset: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + color: UNorm Byte + normal: Float + position: Float + tangent: Float + texture0: Float + texture1: Float + texture2: Float + texture3: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/dots.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/dots.png new file mode 100644 index 00000000..bae75ed9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/dots.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:551e1d6b088a879af4385c1db2aeb43ed3616195f2e1b363086f20946a7d708f +size 2142 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/dots.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/dots.png.meta new file mode 100644 index 00000000..a560726b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/dots.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 5d59c8dd-baf3-4f05-93ac-fbcc2cc40f9d + ImporterName: FileTextureImporter + PrimaryAsset: ! 5d59c8dd-baf3-4f05-93ac-fbcc2cc40f9d + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/engine_exhaust.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/engine_exhaust.prefab new file mode 100644 index 00000000..549a5d80 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/engine_exhaust.prefab @@ -0,0 +1,102 @@ +- ! + PackagePath: "" + objects: + - ! 0a1b452c-746c-4273-a47a-4982a219fc84 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: engine_exhaust + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 4.000000, y: 4.000000, z: 4.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6140714c-49da-45d6-a418-ced84a31c733 + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! 69f75d0a-3f47-438f-898d-6b6edf43ac6c + Components: + - ! 506ee674-3f6a-435d-91b6-c4b281463811 + - ! f0d14b2e-2523-486b-b7fe-d53211b82ec2 +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -0.043960, z: -0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2a0b49d4-512e-45d2-b3af-84246595dc04 +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/engine_exhaust.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/engine_exhaust.prefab.meta new file mode 100644 index 00000000..fcd09b6e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/engine_exhaust.prefab.meta @@ -0,0 +1,127 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 4d1b57db-5ca2-4c9f-b1f4-9e2c50c7429c + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 4d1b57db-5ca2-4c9f-b1f4-9e2c50c7429c + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! 2eccdc47-e0aa-4ab9-bcf0-fc20a7e6ff51 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PackagePath: "" + objects: + - ! 3961b906-603d-48b6-a681-f62746feca88 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Look At + Enabled: true + LookAtMode: LookAtPoint + AimVectors: NegativeZAimYUp + WorldUpVector: ObjectY + Target: ! b49fd017-c3f4-45da-b6f3-ea6a4119aa87 + OffsetRotation: {x: 0.000000, y: 0.000000, z: 0.000000} +- ! + SourceRemaps: + - 0a1b452c-746c-4273-a47a-4982a219fc84: 3961b906-603d-48b6-a681-f62746feca88 + - 2a0b49d4-512e-45d2-b3af-84246595dc04: a4ba8aec-737b-4d8d-ba45-9b12e1864eaa + - 506ee674-3f6a-435d-91b6-c4b281463811: 5eadc179-2c94-472a-beea-48bee7250502 + - 6140714c-49da-45d6-a418-ced84a31c733: a38aa9d8-ceb5-43af-966a-80f6b3001217 + - 69f75d0a-3f47-438f-898d-6b6edf43ac6c: de09c852-e96c-4bdb-ab41-a84e7d9b1714 + - f0d14b2e-2523-486b-b7fe-d53211b82ec2: 2c63ceeb-277e-4b29-8832-b90b916a731e + SourceState: ! 093ac6a4-5943-406d-9893-4d538540893d +- ! + PrefabRemaps: + [] + Name: engine_exhaust + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 4.000000, y: 4.000000, z: 4.000000} + hasSegmentScaleCompensation: false + Children: + - ! a38aa9d8-ceb5-43af-966a-80f6b3001217 + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e90357de-3c89-449a-b286-ef475ca93a50 + Mesh: ! fcfdee51-ef2d-45bf-9718-cf9de3ec3e1c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + edit34: 1.000000 +- ! + PrefabRemaps: + [] + Name: blendshapes1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.727880, z: 0.000000} + rotation: {x: -180.000000, y: 0.000000, z: 180.000000} + scale: {x: 0.900000, y: 0.900000, z: 0.900000} + hasSegmentScaleCompensation: false + Children: + - ! de09c852-e96c-4bdb-ab41-a84e7d9b1714 + Components: + - ! 5eadc179-2c94-472a-beea-48bee7250502 + - ! 2c63ceeb-277e-4b29-8832-b90b916a731e +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 100 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 889745a7-9062-432b-b028-bed9c7556fff + Mesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: glow_plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -0.043960, z: -0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 2.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a4ba8aec-737b-4d8d-ba45-9b12e1864eaa diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/glow_plane.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/glow_plane.mesh new file mode 100644 index 00000000..17dcbb40 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/glow_plane.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:545446387b23994b9aa63dd719c006fead49982d778cf0f1b7253f86686edd0e +size 1332 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/glow_plane.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/glow_plane.mesh.meta new file mode 100644 index 00000000..c74de089 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Exhaust/glow_plane.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + ImporterName: FileMeshImporter + PrimaryAsset: ! 78af2a2b-32ce-48b7-ba42-c5bccfeef254 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Noise00.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Noise00.png new file mode 100644 index 00000000..1428c7a5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Noise00.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01218fee9c2e53c46f69895752d55468f26162ece89f24018135037d07e6325c +size 27605 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Noise00.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Noise00.png.meta new file mode 100644 index 00000000..684f3135 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Noise00.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 34ed7a86-f25c-4cf5-a228-3a48f666ac39 + ImporterName: FileTextureImporter + PrimaryAsset: ! 34ed7a86-f25c-4cf5-a228-3a48f666ac39 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Plane.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Plane.mesh new file mode 100644 index 00000000..19129e99 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Plane.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b321d02694706f032870bec8bfc42b552497b543bf875125776b21570046bedf +size 1332 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Plane.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Plane.mesh.meta new file mode 100644 index 00000000..53ec2c36 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Plane.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! fa150aa3-3740-4c32-8a2c-e7f4d9420fbf + ImporterName: FileMeshImporter + PrimaryAsset: ! fa150aa3-3740-4c32-8a2c-e7f4d9420fbf + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/RadialHeat_ANIM_mat.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/RadialHeat_ANIM_mat.mat new file mode 100644 index 00000000..faeba6d5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/RadialHeat_ANIM_mat.mat @@ -0,0 +1,139 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 5a7c87ef-53dd-41ec-896c-30e63cc2f09d +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Add + Properties: + Port_Center_N008: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Center_N014: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Direction_N001: + typeIdx: 3 + value: {x: -1.000000, y: 0.000000} + Port_Import_N023: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Import_N029: + typeIdx: 1 + value: 1.000000 + Port_Import_N030: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Input0_N003: + typeIdx: 1 + value: 0.000000 + Port_Input0_N018: + typeIdx: 1 + value: 0.000000 + Port_Input0_N035: + typeIdx: 1 + value: 1.000000 + Port_Input1_N002: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Input1_N003: + typeIdx: 1 + value: 0.500000 + Port_Input1_N018: + typeIdx: 1 + value: 0.200000 + Port_Input1_N019: + typeIdx: 1 + value: 2.500000 + Port_Input1_N024: + typeIdx: 1 + value: 0.500000 + Port_Input1_N025: + typeIdx: 1 + value: 2.000000 + Port_Input1_N026: + typeIdx: 1 + value: 12.000000 + Port_Input1_N035: + typeIdx: 1 + value: 0.800000 + Port_Input1_N037: + typeIdx: 1 + value: 1.500000 + Port_Multiplier_N007: + typeIdx: 1 + value: 1.000000 + Port_Position1_N009: + typeIdx: 1 + value: 0.300000 + Port_Scale_N008: + typeIdx: 3 + value: {x: 1.000000, y: 4.000000} + Port_Speed_N001: + typeIdx: 1 + value: 2.000000 + Port_Value0_N009: + typeIdx: 5 + value: {x: 1.000000, y: 0.789944, z: 0.000870, w: 1.000000} + Port_Value1_N009: + typeIdx: 5 + value: {x: 1.000000, y: 0.318013, z: 0.094392, w: 1.000000} + Port_Value2_N009: + typeIdx: 5 + value: {x: 1.000000, y: 0.149126, z: 0.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N16: + typeIdx: 9 + value: + id: 34ed7a86-f25c-4cf5-a228-3a48f666ac39 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + Tweak_N16BorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N16Dims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Tweak_N16Transform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + Tweak_N16UvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + heating: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! ef057d69-4db4-4d8e-8ab1-f44f0e7ca9c8 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/RadialHeat_ANIM_mat.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/RadialHeat_ANIM_mat.mat.meta new file mode 100644 index 00000000..9b0aaffc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/RadialHeat_ANIM_mat.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 48bfedff-f6a2-4631-8866-a2d38f0d84bf + ImporterName: MaterialImporter + PrimaryAsset: ! 48bfedff-f6a2-4631-8866-a2d38f0d84bf + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Radial_heat.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Radial_heat.ss_graph new file mode 100644 index 00000000..e3a12298 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Radial_heat.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e729a35d45fc39334c5a32f9c96d645ad2baae68175e215913490e196b31ee3f +size 221070 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Radial_heat.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Radial_heat.ss_graph.meta new file mode 100644 index 00000000..f5981936 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Radial Heat/Radial_heat.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! ef057d69-4db4-4d8e-8ab1-f44f0e7ca9c8 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! ef057d69-4db4-4d8e-8ab1-f44f0e7ca9c8 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 1.animationAsset b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 1.animationAsset new file mode 100644 index 00000000..4514d7d1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 1.animationAsset @@ -0,0 +1,1218 @@ +- ! + PackagePath: "" + AnimationPropertiesLayers: + piece_0: + position: + - time: 0.000000 + value: {x: -0.000004, y: 4.089297, z: -0.064310} + - time: 0.033333 + value: {x: -0.000004, y: 4.089297, z: -0.064310} + - time: 0.066667 + value: {x: -0.000004, y: 4.102908, z: -0.064310} + - time: 0.100000 + value: {x: -0.000004, y: 4.120387, z: -0.064310} + - time: 0.133333 + value: {x: -0.000004, y: 4.141476, z: -0.064310} + - time: 0.166667 + value: {x: -0.000004, y: 4.165964, z: -0.064310} + - time: 0.200000 + value: {x: -0.000004, y: 4.193673, z: -0.064310} + - time: 0.233333 + value: {x: -0.000004, y: 4.224459, z: -0.064310} + - time: 0.266667 + value: {x: -0.000004, y: 4.258199, z: -0.064310} + - time: 0.300000 + value: {x: -0.000004, y: 4.294793, z: -0.064310} + - time: 0.333333 + value: {x: -0.000004, y: 4.334155, z: -0.064310} + - time: 0.366667 + value: {x: -0.000004, y: 4.376215, z: -0.064310} + - time: 0.400000 + value: {x: -0.000004, y: 4.420917, z: -0.064309} + - time: 0.433333 + value: {x: -0.000004, y: 4.468215, z: -0.064308} + - time: 0.466667 + value: {x: -0.000004, y: 4.518072, z: -0.064307} + - time: 0.500000 + value: {x: -0.000004, y: 4.570462, z: -0.064306} + - time: 0.533333 + value: {x: -0.000004, y: 4.625366, z: -0.064305} + - time: 0.566667 + value: {x: -0.000004, y: 4.682772, z: -0.064304} + - time: 0.600000 + value: {x: -0.000004, y: 4.742678, z: -0.064303} + - time: 0.633333 + value: {x: -0.000004, y: 4.805084, z: -0.064302} + - time: 0.666667 + value: {x: -0.000005, y: 4.870000, z: -0.064301} + - time: 0.700000 + value: {x: -0.000005, y: 4.937441, z: -0.064300} + - time: 0.733333 + value: {x: -0.000006, y: 5.007429, z: -0.064299} + - time: 0.766667 + value: {x: -0.000006, y: 5.079991, z: -0.064297} + - time: 0.800000 + value: {x: -0.000007, y: 5.155160, z: -0.064296} + - time: 0.833333 + value: {x: -0.000007, y: 5.232977, z: -0.064294} + - time: 0.866667 + value: {x: -0.000007, y: 5.313488, z: -0.064293} + - time: 0.900000 + value: {x: -0.000008, y: 5.396746, z: -0.064291} + - time: 0.933333 + value: {x: -0.000008, y: 5.482810, z: -0.064290} + - time: 0.966667 + value: {x: -0.000009, y: 5.571749, z: -0.064288} + - time: 1.000000 + value: {x: -0.000009, y: 5.663638, z: -0.064287} + - time: 1.033333 + value: {x: -0.000010, y: 5.758560, z: -0.064285} + - time: 1.066667 + value: {x: -0.000010, y: 5.856609, z: -0.064283} + - time: 1.100000 + value: {x: -0.000011, y: 5.957887, z: -0.064281} + - time: 1.133333 + value: {x: -0.000011, y: 6.062510, z: -0.064280} + - time: 1.166667 + value: {x: -0.000012, y: 6.170600, z: -0.064278} + - time: 1.200000 + value: {x: -0.000012, y: 6.282300, z: -0.064276} + - time: 1.233333 + value: {x: -0.000013, y: 6.397762, z: -0.064274} + - time: 1.266667 + value: {x: -0.000013, y: 6.517158, z: -0.064272} + - time: 1.300000 + value: {x: -0.000014, y: 6.640677, z: -0.064269} + - time: 1.333333 + value: {x: -0.000014, y: 6.768531, z: -0.064267} + - time: 1.366667 + value: {x: -0.000015, y: 6.900957, z: -0.064265} + - time: 1.400000 + value: {x: -0.000016, y: 7.038216, z: -0.064262} + - time: 1.433333 + value: {x: -0.000017, y: 7.180608, z: -0.064260} + - time: 1.466667 + value: {x: -0.000018, y: 7.328469, z: -0.064257} + - time: 1.500000 + value: {x: -0.000019, y: 7.482180, z: -0.064254} + - time: 1.533333 + value: {x: -0.000019, y: 7.642175, z: -0.064252} + - time: 1.566666 + value: {x: -0.000020, y: 7.808955, z: -0.064249} + - time: 1.600000 + value: {x: -0.000021, y: 7.983100, z: -0.064245} + - time: 1.633333 + value: {x: -0.000022, y: 8.165287, z: -0.064242} + - time: 1.666666 + value: {x: -0.000023, y: 8.356312, z: -0.064239} + - time: 1.700000 + value: {x: -0.000024, y: 8.557125, z: -0.064235} + - time: 1.733333 + value: {x: -0.000025, y: 8.768875, z: -0.064232} + - time: 1.766667 + value: {x: -0.000026, y: 8.992970, z: -0.064228} + - time: 1.800000 + value: {x: -0.000557, y: 9.231056, z: -0.063851} + - time: 1.833333 + value: {x: -0.001417, y: 9.485410, z: -0.063241} + - time: 1.866667 + value: {x: -0.002342, y: 9.759007, z: -0.062586} + - time: 1.900000 + value: {x: -0.003346, y: 10.055794, z: -0.061875} + - time: 1.933333 + value: {x: -0.004447, y: 10.381334, z: -0.061095} + - time: 1.966667 + value: {x: -0.005674, y: 10.743914, z: -0.060226} + - time: 2.000000 + value: {x: -0.007071, y: 11.156875, z: -0.059236} + - time: 2.033333 + value: {x: -0.009666, y: 11.923565, z: -0.057397} + - time: 2.066667 + value: {x: -0.013355, y: 13.013418, z: -0.054783} + - time: 2.100000 + value: {x: -0.023874, y: 14.278951, z: -0.047572} + - time: 2.133333 + value: {x: -0.069368, y: 15.675714, z: -0.016919} + - time: 2.166667 + value: {x: -0.118456, y: 17.182674, z: 0.016158} + - time: 2.200000 + value: {x: -0.170791, y: 18.789141, z: 0.051424} + - time: 2.233333 + value: {x: -0.256957, y: 20.482166, z: 0.109165} + - time: 2.266667 + value: {x: -0.353859, y: 22.264296, z: 0.174059} + - time: 2.300000 + value: {x: -0.456889, y: 24.136118, z: 0.243047} + - time: 2.333333 + value: {x: -0.586369, y: 26.100090, z: 0.329569} + - time: 2.366667 + value: {x: -0.721912, y: 28.155985, z: 0.420141} + - time: 2.400000 + value: {x: -0.873324, y: 30.310684, z: 0.521235} + - time: 2.433333 + value: {x: -1.038204, y: 32.566822, z: 0.631267} + - time: 2.466667 + value: {x: -1.217428, y: 34.922333, z: 0.747418} + - time: 2.500000 + value: {x: -1.415793, y: 37.380444, z: 0.870662} + - time: 2.533333 + value: {x: -1.637812, y: 39.958607, z: 0.995479} + - time: 2.566667 + value: {x: -1.894366, y: 42.668201, z: 1.119266} + - time: 2.600000 + value: {x: -2.193212, y: 45.510330, z: 1.235912} + - time: 2.633333 + value: {x: -2.532915, y: 48.497734, z: 1.347174} + - time: 2.666667 + value: {x: -2.952249, y: 51.632053, z: 1.432838} + - time: 2.700000 + value: {x: -3.434719, y: 54.940224, z: 1.502796} + - time: 2.733333 + value: {x: -4.010881, y: 58.442554, z: 1.542869} + - time: 2.766667 + value: {x: -4.731380, y: 62.158634, z: 1.526878} + - time: 2.800000 + value: {x: -5.605080, y: 66.119972, z: 1.452263} + - time: 2.833333 + value: {x: -6.687144, y: 70.360085, z: 1.291595} + - time: 2.866667 + value: {x: -8.059566, y: 74.917747, z: 1.002677} + - time: 2.900000 + value: {x: -9.847469, y: 79.835617, z: 0.519168} + - time: 2.933333 + value: {x: -12.247578, y: 85.155693, z: -0.266013} + - time: 2.966667 + value: {x: -15.578043, y: 90.912659, z: -1.530037} + - time: 3.000000 + value: {x: -20.505070, y: 97.006691, z: -3.688360} + - time: 3.033333 + value: {x: -26.864887, y: 102.698303, z: -6.809002} + - time: 3.066667 + value: {x: -33.839401, y: 107.103539, z: -10.613621} + - time: 3.100000 + value: {x: -41.139446, y: 110.232208, z: -15.020901} + - time: 3.133333 + value: {x: -48.509026, y: 112.063164, z: -19.991671} + - time: 3.166667 + value: {x: -55.717026, y: 112.708260, z: -25.445448} + - time: 3.200000 + value: {x: -62.572670, y: 112.224091, z: -31.332388} + - time: 3.233333 + value: {x: -68.949150, y: 110.754951, z: -37.573845} + - time: 3.266667 + value: {x: -74.775307, y: 108.481148, z: -44.097717} + - time: 3.300000 + value: {x: -79.980652, y: 105.547684, z: -50.867096} + - time: 3.333333 + value: {x: -84.536934, y: 102.120476, z: -57.852974} + - time: 3.366667 + value: {x: -88.412231, y: 98.331779, z: -65.048370} + - time: 3.400000 + value: {x: -91.543152, y: 94.293655, z: -72.456154} + - time: 3.433333 + value: {x: -93.858139, y: 90.097733, z: -80.060326} + - time: 3.466667 + value: {x: -95.260963, y: 85.800095, z: -87.813217} + - time: 3.500000 + value: {x: -95.699509, y: 81.465988, z: -95.647781} + - time: 3.533333 + value: {x: -95.124588, y: 77.170944, z: -103.479996} + - time: 3.566667 + value: {x: -93.466431, y: 73.000809, z: -111.202148} + - time: 3.600000 + value: {x: -90.653343, y: 69.044441, z: -118.693436} + - time: 3.633333 + value: {x: -86.589287, y: 65.419518, z: -125.748329} + - time: 3.666667 + value: {x: -81.391609, y: 62.166882, z: -132.200943} + - time: 3.700000 + value: {x: -75.190376, y: 59.319710, z: -137.903656} + - time: 3.733333 + value: {x: -68.137398, y: 56.899891, z: -142.736069} + - time: 3.766667 + value: {x: -60.384525, y: 54.915150, z: -146.609482} + - time: 3.800000 + value: {x: -52.117233, y: 53.373886, z: -149.438980} + - time: 3.833333 + value: {x: -43.530956, y: 52.211372, z: -151.353409} + - time: 3.866667 + value: {x: -34.767689, y: 51.384125, z: -152.463333} + - time: 3.900000 + value: {x: -25.929031, y: 50.856190, z: -152.859467} + - time: 3.933333 + value: {x: -17.079523, y: 50.613655, z: -152.576920} + - time: 3.966667 + value: {x: -8.274588, y: 50.630157, z: -151.679306} + - time: 4.000000 + value: {x: 0.437538, y: 50.893677, z: -150.195633} + - time: 4.033333 + value: {x: 9.006100, y: 51.402779, z: -148.121765} + - time: 4.066667 + value: {x: 17.376198, y: 52.158112, z: -145.422989} + - time: 4.100000 + value: {x: 25.476122, y: 53.148735, z: -142.080750} + - time: 4.133333 + value: {x: 33.260719, y: 54.343422, z: -138.132980} + - time: 4.166667 + value: {x: 40.683128, y: 55.718273, z: -133.601013} + - time: 4.200000 + value: {x: 47.695503, y: 57.246742, z: -128.515198} + - time: 4.233333 + value: {x: 54.246479, y: 58.909924, z: -122.891785} + - time: 4.266666 + value: {x: 60.330917, y: 60.720764, z: -116.817696} + - time: 4.300000 + value: {x: 65.898926, y: 62.731182, z: -110.336594} + - time: 4.333333 + value: {x: 70.883759, y: 64.996506, z: -103.485382} + - time: 4.366667 + value: {x: 75.134583, y: 67.606667, z: -96.279167} + - time: 4.400000 + value: {x: 78.576157, y: 70.598663, z: -88.809753} + - time: 4.433333 + value: {x: 81.072166, y: 74.021835, z: -81.164848} + - time: 4.466667 + value: {x: 82.506569, y: 77.872086, z: -73.452477} + - time: 4.500000 + value: {x: 82.780067, y: 81.994385, z: -65.755447} + - time: 4.533333 + value: {x: 82.010040, y: 86.149666, z: -58.118450} + - time: 4.566667 + value: {x: 80.230049, y: 90.146736, z: -50.571522} + - time: 4.600000 + value: {x: 77.468719, y: 93.795677, z: -43.146328} + - time: 4.633333 + value: {x: 73.686928, y: 96.836121, z: -35.907314} + - time: 4.666667 + value: {x: 69.030800, y: 99.115952, z: -28.915354} + - time: 4.700000 + value: {x: 63.601334, y: 100.592705, z: -22.276880} + - time: 4.733333 + value: {x: 57.503780, y: 101.343979, z: -16.114141} + - time: 4.766666 + value: {x: 50.802013, y: 101.430038, z: -10.573420} + - time: 4.800000 + value: {x: 43.620468, y: 100.985466, z: -5.707824} + - time: 4.833333 + value: {x: 36.023651, y: 100.080879, z: -1.607154} + - time: 4.866667 + value: {x: 28.070683, y: 98.772995, z: 1.606055} + - time: 4.900000 + value: {x: 19.844713, y: 97.121559, z: 3.788879} + - time: 4.933333 + value: {x: 11.484190, y: 95.195892, z: 4.994367} + - time: 4.966667 + value: {x: 3.103925, y: 93.024254, z: 5.278117} + - time: 5.000000 + value: {x: -5.190222, y: 90.617889, z: 4.651420} + - time: 5.033333 + value: {x: -13.298819, y: 87.994301, z: 3.160961} + - time: 5.066667 + value: {x: -21.139174, y: 85.170815, z: 0.861565} + - time: 5.100000 + value: {x: -28.618738, y: 82.149849, z: -2.246276} + - time: 5.133333 + value: {x: -35.569679, y: 78.921387, z: -6.237651} + - time: 5.166667 + value: {x: -41.879982, y: 75.529579, z: -11.049838} + - time: 5.200000 + value: {x: -47.450233, y: 72.028557, z: -16.623596} + - time: 5.233333 + value: {x: -52.161415, y: 68.473427, z: -22.911877} + - time: 5.266666 + value: {x: -55.828434, y: 64.938492, z: -29.866028} + - time: 5.300000 + value: {x: -58.411755, y: 61.501610, z: -37.324184} + - time: 5.333333 + value: {x: -59.813797, y: 58.243126, z: -45.164001} + - time: 5.366667 + value: {x: -59.882248, y: 55.257572, z: -53.227375} + - time: 5.400000 + value: {x: -58.574093, y: 52.556564, z: -61.265244} + - time: 5.433333 + value: {x: -55.905479, y: 50.078747, z: -69.014786} + - time: 5.466667 + value: {x: -51.841785, y: 47.807884, z: -76.204155} + - time: 5.500000 + value: {x: -46.348156, y: 45.779747, z: -82.464745} + - time: 5.533333 + value: {x: -39.790470, y: 43.985088, z: -87.654289} + - time: 5.566667 + value: {x: -32.438499, y: 42.412365, z: -91.753204} + - time: 5.600000 + value: {x: -24.580011, y: 41.061729, z: -94.918701} + - time: 5.633333 + value: {x: -16.474554, y: 39.927452, z: -97.411263} + - time: 5.666667 + value: {x: -8.214243, y: 38.981392, z: -99.461319} + - time: 5.700000 + value: {x: 0.147692, y: 38.217049, z: -101.194710} + - time: 5.733333 + value: {x: 8.560836, y: 37.651577, z: -102.694237} + - time: 5.766666 + value: {x: 17.000713, y: 37.274403, z: -104.065178} + - time: 5.800000 + value: {x: 25.455011, y: 37.094303, z: -105.375893} + - time: 5.833333 + value: {x: 33.907803, y: 37.138859, z: -106.692627} + - time: 5.866667 + value: {x: 42.338078, y: 37.443058, z: -108.092659} + - time: 5.900000 + value: {x: 50.709705, y: 38.044186, z: -109.642265} + - time: 5.933333 + value: {x: 59.009167, y: 39.012310, z: -111.423012} + - time: 5.966667 + value: {x: 67.138847, y: 40.493267, z: -113.573074} + - time: 6.000000 + value: {x: 74.982376, y: 42.560879, z: -116.184067} + - time: 6.033333 + value: {x: 82.362915, y: 45.335060, z: -119.380844} + - time: 6.066667 + value: {x: 88.955612, y: 48.971947, z: -123.319756} + - time: 6.100000 + value: {x: 94.392349, y: 53.474445, z: -128.019379} + - time: 6.133333 + value: {x: 98.470543, y: 58.678684, z: -133.339600} + - time: 6.166667 + value: {x: 101.132164, y: 64.360153, z: -139.100281} + - time: 6.200000 + value: {x: 102.412140, y: 70.234215, z: -145.112289} + - time: 6.233333 + value: {x: 102.508797, y: 76.110817, z: -151.256668} + - time: 6.266666 + value: {x: 101.446533, y: 81.851074, z: -157.455139} + - time: 6.300000 + value: {x: 99.127586, y: 87.264816, z: -163.601715} + - time: 6.333333 + value: {x: 95.622597, y: 92.187958, z: -169.575745} + - time: 6.366667 + value: {x: 90.977150, y: 96.474403, z: -175.268509} + - time: 6.400000 + value: {x: 85.246964, y: 99.921036, z: -180.508682} + - time: 6.433333 + value: {x: 78.583084, y: 102.407089, z: -185.168594} + - time: 6.466667 + value: {x: 71.278748, y: 103.978905, z: -189.206360} + - time: 6.500000 + value: {x: 63.510605, y: 104.761116, z: -192.650070} + - time: 6.533333 + value: {x: 55.497551, y: 104.842079, z: -195.456909} + - time: 6.566667 + value: {x: 47.306454, y: 104.379623, z: -197.720764} + - time: 6.600000 + value: {x: 39.027752, y: 103.421753, z: -199.423264} + - time: 6.633333 + value: {x: 30.714428, y: 101.957611, z: -200.483337} + - time: 6.666667 + value: {x: 22.449656, y: 100.017563, z: -200.859100} + - time: 6.700000 + value: {x: 14.320254, y: 97.603516, z: -200.472443} + - time: 6.733333 + value: {x: 6.450816, y: 94.663406, z: -199.141266} + - time: 6.766666 + value: {x: -0.857435, y: 91.186859, z: -196.656219} + - time: 6.800000 + value: {x: -7.325934, y: 87.220795, z: -192.909149} + - time: 6.833333 + value: {x: -12.520099, y: 82.881317, z: -187.835541} + - time: 6.866667 + value: {x: -15.968111, y: 78.398682, z: -181.549454} + - time: 6.900000 + value: {x: -18.008509, y: 73.998093, z: -174.622391} + - time: 6.933333 + value: {x: -18.977390, y: 69.726921, z: -167.315659} + - time: 6.966667 + value: {x: -19.098570, y: 65.648315, z: -159.858536} + - time: 7.000000 + value: {x: -18.645685, y: 61.737885, z: -152.354233} + - time: 7.033333 + value: {x: -17.764713, y: 57.955948, z: -144.806946} + - time: 7.066667 + value: {x: -16.536247, y: 54.289795, z: -137.230515} + - time: 7.100000 + value: {x: -15.039962, y: 50.730507, z: -129.645645} + - time: 7.133333 + value: {x: -13.350032, y: 47.265537, z: -122.066780} + - time: 7.166667 + value: {x: -11.507426, y: 43.883301, z: -114.485886} + - time: 7.200000 + value: {x: -9.543935, y: 40.577358, z: -106.888550} + - time: 7.233333 + value: {x: -7.511844, y: 37.338104, z: -99.276711} + - time: 7.266666 + value: {x: -5.449040, y: 34.161190, z: -91.641243} + - time: 7.300000 + value: {x: -3.409057, y: 31.051048, z: -83.971535} + - time: 7.333333 + value: {x: -1.474224, y: 28.017086, z: -76.280899} + - time: 7.366667 + value: {x: 0.216537, y: 25.192698, z: -68.894424} + - time: 7.400000 + value: {x: 1.565559, y: 22.710739, z: -62.118214} + - time: 7.433333 + value: {x: 2.632941, y: 20.527853, z: -55.883614} + - time: 7.466667 + value: {x: 3.415172, y: 18.645124, z: -50.149807} + - time: 7.500000 + value: {x: 3.941897, y: 17.033176, z: -44.822060} + - time: 7.533333 + value: {x: 4.236704, y: 15.682274, z: -39.863781} + - time: 7.566667 + value: {x: 4.314149, y: 14.598645, z: -35.265175} + - time: 7.600000 + value: {x: 4.199131, y: 13.782976, z: -31.011017} + - time: 7.633333 + value: {x: 3.896740, y: 13.252628, z: -27.004314} + - time: 7.666667 + value: {x: 3.464718, y: 13.066098, z: -23.316769} + - time: 7.700000 + value: {x: 3.019122, y: 13.143795, z: -19.915819} + - time: 7.733333 + value: {x: 2.583213, y: 13.413641, z: -16.777792} + - time: 7.766666 + value: {x: 2.182013, y: 14.119775, z: -13.960745} + - time: 7.800000 + value: {x: 1.814722, y: 14.897038, z: -11.404104} + - time: 7.833333 + value: {x: 1.486765, y: 16.006832, z: -9.193007} + - time: 7.866667 + value: {x: 1.188230, y: 17.094669, z: -7.197637} + - time: 7.900000 + value: {x: 0.930438, y: 18.405428, z: -5.557415} + - time: 7.933333 + value: {x: 0.693756, y: 19.607983, z: -4.051500} + - time: 7.966667 + value: {x: 0.512229, y: 20.954777, z: -2.956514} + - time: 8.000000 + value: {x: 0.360276, y: 22.280651, z: -2.068465} + - time: 8.033334 + value: {x: 0.221798, y: 23.486923, z: -1.259341} + - time: 8.066667 + value: {x: 0.144699, y: 24.708923, z: -0.820177} + - time: 8.100000 + value: {x: 0.112671, y: 25.911728, z: -0.652152} + - time: 8.133333 + value: {x: 0.083842, y: 26.992041, z: -0.501039} + - time: 8.166667 + value: {x: 0.058045, y: 27.956532, z: -0.365911} + - time: 8.200000 + value: {x: 0.035140, y: 28.810978, z: -0.246000} + - time: 8.233334 + value: {x: 0.028321, y: 29.571487, z: -0.210462} + - time: 8.266666 + value: {x: 0.024280, y: 30.233553, z: -0.189476} + - time: 8.300000 + value: {x: 0.020817, y: 30.800766, z: -0.171492} + - time: 8.333333 + value: {x: 0.017899, y: 31.278435, z: -0.156344} + - time: 8.366667 + value: {x: 0.015499, y: 31.671162, z: -0.143888} + - time: 8.400000 + value: {x: 0.013406, y: 32.013699, z: -0.133022} + - time: 8.433333 + value: {x: 0.011431, y: 32.336723, z: -0.122773} + - time: 8.466666 + value: {x: 0.009578, y: 32.639759, z: -0.113157} + - time: 8.500000 + value: {x: 0.007847, y: 32.922821, z: -0.104174} + - time: 8.533334 + value: {x: 0.006239, y: 33.185596, z: -0.095834} + - time: 8.566667 + value: {x: 0.004753, y: 33.428539, z: -0.088122} + - time: 8.600000 + value: {x: 0.003386, y: 33.651814, z: -0.081034} + - time: 8.633333 + value: {x: 0.002134, y: 33.856476, z: -0.074536} + - time: 8.666667 + value: {x: 0.001737, y: 34.043583, z: -0.072497} + - time: 8.700000 + value: {x: 0.001676, y: 34.214783, z: -0.072204} + - time: 8.733334 + value: {x: 0.001619, y: 34.372269, z: -0.071934} + - time: 8.766666 + value: {x: 0.001567, y: 34.518635, z: -0.071683} + - time: 8.800000 + value: {x: 0.001518, y: 34.656475, z: -0.071447} + - time: 8.833333 + value: {x: 0.001470, y: 34.789288, z: -0.071219} + - time: 8.866667 + value: {x: 0.001423, y: 34.920277, z: -0.070994} + - time: 8.900000 + value: {x: 0.001376, y: 35.052937, z: -0.070767} + - time: 8.933333 + value: {x: 0.001326, y: 35.190773, z: -0.070531} + - time: 8.966666 + value: {x: 0.001274, y: 35.336987, z: -0.070280} + - time: 9.000000 + value: {x: 0.001217, y: 35.494629, z: -0.070009} + - time: 9.033334 + value: {x: 0.001156, y: 35.666130, z: -0.069715} + - time: 9.066667 + value: {x: 0.001088, y: 35.853924, z: -0.069393} + - time: 9.100000 + value: {x: 0.001015, y: 36.059544, z: -0.069041} + - time: 9.133333 + value: {x: 0.000942, y: 36.261349, z: -0.068694} + - time: 9.166667 + value: {x: 0.000878, y: 36.440006, z: -0.068388} + - time: 9.200000 + value: {x: 0.000821, y: 36.599167, z: -0.068115} + - time: 9.233334 + value: {x: 0.000770, y: 36.741730, z: -0.067870} + - time: 9.266666 + value: {x: 0.000724, y: 36.869820, z: -0.067650} + - time: 9.300000 + value: {x: 0.000683, y: 36.985268, z: -0.067452} + - time: 9.333333 + value: {x: 0.000645, y: 37.089298, z: -0.067274} + - time: 9.366667 + value: {x: 0.000612, y: 37.183422, z: -0.067112} + - time: 9.400000 + value: {x: 0.000581, y: 37.268414, z: -0.066966} + - time: 9.433333 + value: {x: 0.000554, y: 37.345024, z: -0.066835} + - time: 9.466666 + value: {x: 0.000529, y: 37.414169, z: -0.066716} + - time: 9.500000 + value: {x: 0.000507, y: 37.476463, z: -0.066609} + - time: 9.533334 + value: {x: 0.000487, y: 37.532360, z: -0.066514} + - time: 9.566667 + value: {x: 0.000469, y: 37.582317, z: -0.066428} + - time: 9.600000 + value: {x: 0.000453, y: 37.626945, z: -0.066351} + - time: 9.633333 + value: {x: 0.000438, y: 37.666393, z: -0.066283} + - time: 9.666667 + value: {x: 0.000426, y: 37.701271, z: -0.066224} + - time: 9.700000 + value: {x: 0.000415, y: 37.706757, z: -0.066172} + - time: 9.733334 + value: {x: 0.000406, y: 37.685753, z: -0.066127} + - time: 9.766666 + value: {x: 0.000398, y: 37.637760, z: -0.066088} + - time: 9.800000 + value: {x: 0.000391, y: 37.562599, z: -0.066056} + - time: 9.833333 + value: {x: 0.000385, y: 37.459789, z: -0.066030} + - time: 9.866667 + value: {x: 0.000382, y: 37.328758, z: -0.066009} + - time: 9.900000 + value: {x: 0.000378, y: 37.169395, z: -0.065994} + - time: 9.933333 + value: {x: 0.000378, y: 36.981216, z: -0.065983} + - time: 9.966666 + value: {x: 0.000378, y: 36.764080, z: -0.065977} + - time: 10.000000 + value: {x: 0.000378, y: 36.517776, z: -0.065977} + - time: 10.033334 + value: {x: 0.000378, y: 36.243248, z: -0.065977} + - time: 10.066667 + value: {x: 0.000378, y: 35.941559, z: -0.065977} + - time: 10.100000 + value: {x: 0.000378, y: 35.612640, z: -0.065977} + - time: 10.133333 + value: {x: 0.000378, y: 35.256596, z: -0.065977} + - time: 10.166667 + value: {x: 0.000378, y: 34.873634, z: -0.065977} + - time: 10.200000 + value: {x: 0.000378, y: 34.464169, z: -0.065977} + - time: 10.233334 + value: {x: 0.000378, y: 34.028728, z: -0.065977} + - time: 10.266666 + value: {x: 0.000378, y: 33.568077, z: -0.065977} + - time: 10.300000 + value: {x: 0.000378, y: 33.083107, z: -0.065977} + - time: 10.333333 + value: {x: 0.000378, y: 32.574947, z: -0.065977} + - time: 10.366667 + value: {x: 0.000378, y: 32.044846, z: -0.065977} + - time: 10.400000 + value: {x: 0.000378, y: 31.494286, z: -0.065977} + - time: 10.433333 + value: {x: 0.000378, y: 30.924841, z: -0.065977} + - time: 10.466666 + value: {x: 0.000378, y: 30.338285, z: -0.065977} + - time: 10.500000 + value: {x: 0.000378, y: 29.736450, z: -0.065977} + - time: 10.533334 + value: {x: 0.000378, y: 29.121302, z: -0.065977} + - time: 10.566667 + value: {x: 0.000378, y: 28.494873, z: -0.065977} + - time: 10.600000 + value: {x: 0.000378, y: 27.859179, z: -0.065977} + - time: 10.633333 + value: {x: 0.000378, y: 27.216314, z: -0.065977} + - time: 10.666667 + value: {x: 0.000378, y: 26.568272, z: -0.065977} + - time: 10.700000 + value: {x: 0.000378, y: 25.917074, z: -0.065977} + - time: 10.733334 + value: {x: 0.000378, y: 25.264595, z: -0.065977} + - time: 10.766666 + value: {x: 0.000378, y: 24.612696, z: -0.065977} + - time: 10.800000 + value: {x: 0.000378, y: 23.963043, z: -0.065977} + - time: 10.833333 + value: {x: 0.000378, y: 23.317272, z: -0.065977} + - time: 10.866667 + value: {x: 0.000378, y: 22.676805, z: -0.065977} + - time: 10.900000 + value: {x: 0.000378, y: 22.043009, z: -0.065977} + - time: 10.933333 + value: {x: 0.000378, y: 21.417044, z: -0.065977} + - time: 10.966666 + value: {x: 0.000378, y: 20.800005, z: -0.065977} + - time: 11.000000 + value: {x: 0.000378, y: 20.192791, z: -0.065977} + - time: 11.033334 + value: {x: 0.000378, y: 19.596224, z: -0.065977} + - time: 11.066667 + value: {x: 0.000378, y: 19.011011, z: -0.065977} + - time: 11.100000 + value: {x: 0.000378, y: 18.437696, z: -0.065977} + - time: 11.133333 + value: {x: 0.000378, y: 17.876793, z: -0.065977} + - time: 11.166667 + value: {x: 0.000378, y: 17.328653, z: -0.065977} + - time: 11.200000 + value: {x: 0.000378, y: 16.793613, z: -0.065977} + - time: 11.233334 + value: {x: 0.000378, y: 16.271862, z: -0.065977} + - time: 11.266666 + value: {x: 0.000378, y: 15.763591, z: -0.065977} + - time: 11.300000 + value: {x: 0.000378, y: 15.268867, z: -0.065977} + - time: 11.333333 + value: {x: 0.000378, y: 14.787767, z: -0.065977} + - time: 11.366667 + value: {x: 0.000378, y: 14.320260, z: -0.065977} + - time: 11.400000 + value: {x: 0.000378, y: 13.866333, z: -0.065977} + - time: 11.433333 + value: {x: 0.000378, y: 13.425884, z: -0.065977} + - time: 11.466666 + value: {x: 0.000378, y: 12.998837, z: -0.065977} + - time: 11.500000 + value: {x: 0.000378, y: 12.585034, z: -0.065977} + - time: 11.533334 + value: {x: 0.000378, y: 12.184340, z: -0.065977} + - time: 11.566667 + value: {x: 0.000378, y: 11.796595, z: -0.065977} + - time: 11.600000 + value: {x: 0.000378, y: 11.421597, z: -0.065977} + - time: 11.633333 + value: {x: 0.000378, y: 11.059174, z: -0.065977} + - time: 11.666667 + value: {x: 0.000378, y: 10.709103, z: -0.065977} + - time: 11.700000 + value: {x: 0.000378, y: 10.371194, z: -0.065977} + - time: 11.733334 + value: {x: 0.000378, y: 10.045211, z: -0.065977} + - time: 11.766666 + value: {x: 0.000378, y: 9.730957, z: -0.065977} + - time: 11.800000 + value: {x: 0.000378, y: 9.428191, z: -0.065977} + - time: 11.833333 + value: {x: 0.000378, y: 9.136711, z: -0.065977} + - time: 11.866667 + value: {x: 0.000378, y: 8.856277, z: -0.065977} + - time: 11.900000 + value: {x: 0.000378, y: 8.586685, z: -0.065977} + - time: 11.933333 + value: {x: 0.000378, y: 8.327703, z: -0.065977} + - time: 11.966666 + value: {x: 0.000378, y: 8.079121, z: -0.065977} + - time: 12.000000 + value: {x: 0.000378, y: 7.839787, z: -0.065977} + - time: 12.033334 + value: {x: 0.000378, y: 7.608715, z: -0.065977} + - time: 12.066667 + value: {x: 0.000378, y: 7.385919, z: -0.065977} + - time: 12.100000 + value: {x: 0.000378, y: 7.171389, z: -0.065977} + - time: 12.133333 + value: {x: 0.000378, y: 6.965126, z: -0.065977} + - time: 12.166667 + value: {x: 0.000378, y: 6.767098, z: -0.065977} + - time: 12.200000 + value: {x: 0.000378, y: 6.577289, z: -0.065977} + - time: 12.233334 + value: {x: 0.000378, y: 6.395646, z: -0.065977} + - time: 12.266666 + value: {x: 0.000378, y: 6.222128, z: -0.065977} + - time: 12.300000 + value: {x: 0.000378, y: 6.056663, z: -0.065977} + - time: 12.333333 + value: {x: 0.000378, y: 5.899185, z: -0.065977} + - time: 12.366667 + value: {x: 0.000378, y: 5.749605, z: -0.065977} + - time: 12.400000 + value: {x: 0.000378, y: 5.607826, z: -0.065977} + - time: 12.433333 + value: {x: 0.000378, y: 5.473734, z: -0.065977} + - time: 12.466666 + value: {x: 0.000378, y: 5.347222, z: -0.065977} + - time: 12.500000 + value: {x: 0.000378, y: 5.228140, z: -0.065977} + - time: 12.533334 + value: {x: 0.000378, y: 5.116357, z: -0.065977} + - time: 12.566667 + value: {x: 0.000378, y: 5.011717, z: -0.065977} + - time: 12.600000 + value: {x: 0.000378, y: 4.914045, z: -0.065977} + - time: 12.633333 + value: {x: 0.000378, y: 4.823176, z: -0.065977} + - time: 12.666667 + value: {x: 0.000378, y: 4.738912, z: -0.065977} + - time: 12.700000 + value: {x: 0.000378, y: 4.661059, z: -0.065977} + - time: 12.733334 + value: {x: 0.000378, y: 4.589415, z: -0.065977} + - time: 12.766666 + value: {x: 0.000378, y: 4.523761, z: -0.065977} + - time: 12.800000 + value: {x: 0.000378, y: 4.463873, z: -0.065977} + - time: 12.833333 + value: {x: 0.000378, y: 4.409526, z: -0.065977} + - time: 12.866667 + value: {x: 0.000378, y: 4.360476, z: -0.065977} + - time: 12.900000 + value: {x: 0.000378, y: 4.316482, z: -0.065977} + - time: 12.933333 + value: {x: 0.000378, y: 4.277297, z: -0.065977} + - time: 12.966666 + value: {x: 0.000378, y: 4.242671, z: -0.065977} + - time: 13.000000 + value: {x: 0.000378, y: 4.212340, z: -0.065977} + - time: 13.033334 + value: {x: 0.000378, y: 4.186052, z: -0.065977} + - time: 13.066667 + value: {x: 0.000378, y: 4.163550, z: -0.065977} + - time: 13.100000 + value: {x: 0.000378, y: 4.144564, z: -0.065977} + - time: 13.133333 + value: {x: 0.000378, y: 4.128836, z: -0.065977} + - time: 13.166667 + value: {x: 0.000378, y: 4.116107, z: -0.065977} + - time: 13.200000 + value: {x: 0.000378, y: 4.106112, z: -0.065977} + - time: 13.233334 + value: {x: 0.000378, y: 4.098601, z: -0.065977} + - time: 13.266666 + value: {x: 0.000378, y: 4.093318, z: -0.065977} + - time: 13.300000 + value: {x: 0.000378, y: 4.090006, z: -0.065977} + - time: 13.333333 + value: {x: 0.000378, y: 4.088423, z: -0.065977} + rotation: + - time: 0.000000 + value: {0: -0.707106, 1: -0.000002, 2: 0.000000, 3: 0.707108} + - time: 1.133333 + value: {0: -0.706951, 1: -0.000467, 2: -0.000000, 3: 0.707263} + - time: 1.766667 + value: {0: -0.706719, 1: -0.001158, 2: 0.000000, 3: 0.707493} + - time: 1.800000 + value: {0: -0.706592, 1: -0.001537, 2: 0.000000, 3: 0.707620} + - time: 1.900000 + value: {0: -0.705952, 1: -0.003430, 2: 0.000000, 3: 0.708251} + - time: 2.000000 + value: {0: -0.705089, 1: -0.005951, 2: -0.000000, 3: 0.709094} + - time: 2.033333 + value: {0: -0.704482, 1: -0.007704, 2: 0.000000, 3: 0.709680} + - time: 2.066667 + value: {0: -0.703610, 1: -0.010189, 2: 0.000000, 3: 0.710513} + - time: 2.100000 + value: {0: -0.702488, 1: -0.013343, 2: -0.000000, 3: 0.711570} + - time: 2.133333 + value: {0: -0.700685, 1: -0.018300, 2: 0.000000, 3: 0.713236} + - time: 2.166667 + value: {0: -0.698697, 1: -0.023622, 2: 0.000000, 3: 0.715028} + - time: 2.200000 + value: {0: -0.696528, 1: -0.029264, 2: -0.000000, 3: 0.716933} + - time: 2.300000 + value: {0: -0.691523, 1: -0.041702, 2: -0.000000, 3: 0.721150} + - time: 2.366667 + value: {0: -0.689385, 1: -0.046793, 2: 0.000000, 3: 0.722882} + - time: 2.433333 + value: {0: -0.687880, 1: -0.051415, 2: -0.000000, 3: 0.724001} + - time: 2.466667 + value: {0: -0.687450, 1: -0.054220, 2: 0.000000, 3: 0.724205} + - time: 2.500000 + value: {0: -0.687421, 1: -0.057885, 2: 0.000000, 3: 0.723948} + - time: 2.533333 + value: {0: -0.687655, 1: -0.062531, 2: -0.000000, 3: 0.723340} + - time: 2.566667 + value: {0: -0.688326, 1: -0.068756, 2: 0.000000, 3: 0.722136} + - time: 2.600000 + value: {0: -0.689255, 1: -0.076330, 2: -0.000000, 3: 0.720487} + - time: 2.633333 + value: {0: -0.690373, 1: -0.085206, 2: -0.000000, 3: 0.718418} + - time: 2.666667 + value: {0: -0.691770, 1: -0.096224, 2: 0.000000, 3: 0.715678} + - time: 2.700000 + value: {0: -0.693215, 1: -0.108891, 2: -0.000000, 3: 0.712458} + - time: 2.733333 + value: {0: -0.694702, 1: -0.123946, 2: -0.000000, 3: 0.708539} + - time: 2.766667 + value: {0: -0.696159, 1: -0.142623, 2: -0.000000, 3: 0.703578} + - time: 2.800000 + value: {0: -0.697265, 1: -0.165297, 2: 0.000000, 3: 0.697494} + - time: 2.833333 + value: {0: -0.697594, 1: -0.193562, 2: 0.000000, 3: 0.689853} + - time: 2.866667 + value: {0: -0.696255, 1: -0.229941, 2: 0.000000, 3: 0.679968} + - time: 2.900000 + value: {0: -0.691283, 1: -0.278540, 2: -0.000000, 3: 0.666741} + - time: 2.933333 + value: {0: -0.678146, 1: -0.345890, 2: 0.000000, 3: 0.648443} + - time: 2.966667 + value: {0: -0.647708, 1: -0.438188, 2: -0.000000, 3: 0.623270} + - time: 3.000000 + value: {0: -0.588500, 1: -0.552116, 2: -0.000000, 3: 0.590623} + - time: 3.033333 + value: {0: -0.499958, 1: -0.664643, 2: 0.000000, 3: 0.555241} + - time: 3.066667 + value: {0: -0.394790, 1: -0.756053, 2: 0.000000, 3: 0.522039} + - time: 3.100000 + value: {0: 0.277859, 1: 0.825747, 2: 0.000000, 3: -0.490852} + - time: 3.133333 + value: {0: 0.150877, 1: 0.874600, 2: -0.000000, 3: -0.460772} + - time: 3.166667 + value: {0: 0.011229, 1: 0.902097, 2: 0.000000, 3: -0.431388} + - time: 3.200000 + value: {0: -0.135041, 1: 0.904501, 2: 0.000000, 3: -0.404526} + - time: 3.233333 + value: {0: -0.273490, 1: 0.882795, 2: -0.000000, 3: -0.381938} + - time: 3.266667 + value: {0: -0.398813, 1: 0.842358, 2: 0.000000, 3: -0.362466} + - time: 3.300000 + value: {0: -0.510717, 1: 0.787765, 2: -0.000000, 3: -0.344376} + - time: 3.333333 + value: {0: -0.612378, 1: 0.720106, 2: 0.000000, 3: -0.326252} + - time: 3.366667 + value: {0: 0.707283, 1: -0.636795, 2: 0.000000, 3: 0.306990} + - time: 3.400000 + value: {0: 0.797733, 1: -0.530616, 2: -0.000000, 3: 0.286476} + - time: 3.433333 + value: {0: 0.880405, 1: -0.391193, 2: -0.000000, 3: 0.268058} + - time: 3.466667 + value: {0: 0.943324, 1: -0.212523, 2: 0.000000, 3: 0.254900} + - time: 3.500000 + value: {0: 0.968430, 1: 0.002768, 2: -0.000000, 3: 0.249270} + - time: 3.533333 + value: {0: 0.937748, 1: 0.237019, 2: -0.000000, 3: 0.253870} + - time: 3.566667 + value: {0: 0.846168, 1: 0.458812, 2: 0.000000, 3: 0.271092} + - time: 3.600000 + value: {0: 0.709751, 1: 0.636375, 2: -0.000000, 3: 0.302126} + - time: 3.633333 + value: {0: 0.563867, 1: 0.750106, 2: -0.000000, 3: 0.345537} + - time: 3.666667 + value: {0: 0.435160, 1: 0.808296, 2: 0.000000, 3: 0.396602} + - time: 3.700000 + value: {0: 0.329559, 1: 0.829483, 2: -0.000000, 3: 0.450942} + - time: 3.733333 + value: {0: 0.245215, 1: 0.827342, 2: -0.000000, 3: 0.505346} + - time: 3.766667 + value: {0: 0.178395, 1: 0.810708, 2: 0.000000, 3: 0.557609} + - time: 3.800000 + value: {0: 0.126486, 1: 0.786186, 2: -0.000000, 3: 0.604908} + - time: 3.833333 + value: {0: 0.086942, 1: 0.759790, 2: -0.000000, 3: 0.644330} + - time: 3.866667 + value: {0: 0.055992, 1: 0.733779, 2: 0.000000, 3: 0.677077} + - time: 3.900000 + value: {0: 0.030685, 1: 0.708436, 2: 0.000000, 3: 0.705108} + - time: 3.933333 + value: {0: 0.009110, 1: 0.683462, 2: -0.000000, 3: 0.729930} + - time: 3.966667 + value: {0: -0.010218, 1: 0.658054, 2: 0.000000, 3: 0.752901} + - time: 4.000000 + value: {0: -0.028233, 1: 0.631296, 2: 0.000000, 3: 0.775028} + - time: 4.033333 + value: {0: -0.045080, 1: 0.602257, 2: 0.000000, 3: 0.797028} + - time: 4.066667 + value: {0: -0.060314, 1: 0.570684, 2: -0.000000, 3: 0.818952} + - time: 4.100000 + value: {0: -0.073627, 1: 0.537037, 2: 0.000000, 3: 0.840339} + - time: 4.133333 + value: {0: -0.084895, 1: 0.501983, 2: 0.000000, 3: 0.860701} + - time: 4.166667 + value: {0: -0.094068, 1: 0.466201, 2: -0.000000, 3: 0.879664} + - time: 4.200000 + value: {0: -0.101176, 1: 0.430405, 2: -0.000000, 3: 0.896948} + - time: 4.233333 + value: {0: -0.107732, 1: 0.394987, 2: 0.000000, 3: 0.912348} + - time: 4.266666 + value: {0: -0.117013, 1: 0.358833, 2: 0.000000, 3: 0.926038} + - time: 4.300000 + value: {0: -0.129663, 1: 0.320538, 2: 0.000000, 3: 0.938319} + - time: 4.333333 + value: {0: -0.145752, 1: 0.278669, 2: -0.000000, 3: 0.949263} + - time: 4.366667 + value: {0: -0.165811, 1: 0.231262, 2: -0.000000, 3: 0.958658} + - time: 4.400000 + value: {0: -0.189413, 1: 0.177131, 2: 0.000000, 3: 0.965788} + - time: 4.433333 + value: {0: -0.215398, 1: 0.115690, 2: -0.000000, 3: 0.969649} + - time: 4.466667 + value: {0: -0.236784, 1: 0.050563, 2: -0.000000, 3: 0.970246} + - time: 4.500000 + value: {0: -0.245756, 1: -0.013178, 2: 0.000000, 3: 0.969242} + - time: 4.533333 + value: {0: -0.242898, 1: -0.075294, 2: 0.000000, 3: 0.967125} + - time: 4.566667 + value: {0: -0.228371, 1: -0.136036, 2: 0.000000, 3: 0.964023} + - time: 4.600000 + value: {0: -0.201927, 1: -0.195493, 2: -0.000000, 3: 0.959692} + - time: 4.633333 + value: {0: -0.162439, 1: -0.253150, 2: 0.000000, 3: 0.953692} + - time: 4.666667 + value: {0: -0.114295, 1: -0.307287, 2: -0.000000, 3: 0.944728} + - time: 4.700000 + value: {0: -0.067631, 1: -0.356692, 2: -0.000000, 3: 0.931771} + - time: 4.733333 + value: {0: -0.025977, 1: -0.402383, 2: -0.000000, 3: 0.915103} + - time: 4.766666 + value: {0: 0.011098, 1: -0.446025, 2: 0.000000, 3: 0.894951} + - time: 4.800000 + value: {0: 0.044949, 1: -0.488936, 2: 0.000000, 3: 0.871161} + - time: 4.833333 + value: {0: 0.076262, 1: -0.532080, 2: -0.000000, 3: 0.843253} + - time: 4.866667 + value: {0: 0.105461, 1: -0.576166, 2: -0.000000, 3: 0.810500} + - time: 4.900000 + value: {0: 0.133162, 1: -0.619330, 2: -0.000000, 3: 0.773756} + - time: 4.933333 + value: {0: 0.160768, 1: -0.656995, 2: 0.000000, 3: 0.736554} + - time: 4.966667 + value: {0: 0.189040, 1: -0.688933, 2: 0.000000, 3: 0.699739} + - time: 5.000000 + value: {0: 0.218847, 1: -0.715951, 2: -0.000000, 3: 0.662963} + - time: 5.033333 + value: {0: 0.251488, 1: -0.738722, 2: -0.000000, 3: 0.625334} + - time: 5.066667 + value: {0: 0.288638, 1: -0.757347, 2: -0.000000, 3: 0.585759} + - time: 5.100000 + value: {0: 0.332731, 1: -0.771032, 2: -0.000000, 3: 0.542954} + - time: 5.133333 + value: {0: -0.386345, 1: 0.777749, 2: 0.000000, 3: -0.495827} + - time: 5.166667 + value: {0: -0.448208, 1: 0.774840, 2: -0.000000, 3: -0.445794} + - time: 5.200000 + value: {0: -0.519904, 1: 0.758158, 2: 0.000000, 3: -0.393568} + - time: 5.233333 + value: {0: -0.605139, 1: 0.720034, 2: -0.000000, 3: -0.339644} + - time: 5.266666 + value: {0: 0.708743, 1: -0.645308, 2: 0.000000, 3: 0.285063} + - time: 5.300000 + value: {0: 0.831886, 1: -0.503720, 2: 0.000000, 3: 0.232880} + - time: 5.333333 + value: {0: 0.952034, 1: -0.239894, 2: 0.000000, 3: 0.189954} + - time: 5.366667 + value: {0: 0.968168, 1: 0.181590, 2: 0.000000, 3: 0.172265} + - time: 5.400000 + value: {0: 0.789079, 1: 0.582663, 2: -0.000000, 3: 0.194572} + - time: 5.433333 + value: {0: 0.559525, 1: 0.790013, 2: -0.000000, 3: 0.250619} + - time: 5.466667 + value: {0: 0.389032, 1: 0.862060, 2: -0.000000, 3: 0.324819} + - time: 5.500000 + value: {0: 0.278061, 1: 0.871416, 2: 0.000000, 3: 0.404124} + - time: 5.533333 + value: {0: 0.205962, 1: 0.853615, 2: 0.000000, 3: 0.478456} + - time: 5.566667 + value: {0: 0.158193, 1: 0.827404, 2: -0.000000, 3: 0.538867} + - time: 5.600000 + value: {0: 0.125356, 1: 0.805201, 2: 0.000000, 3: 0.579601} + - time: 5.633333 + value: {0: 0.100484, 1: 0.788712, 2: 0.000000, 3: 0.606496} + - time: 5.666667 + value: {0: 0.079678, 1: 0.776584, 2: 0.000000, 3: 0.624955} + - time: 5.700000 + value: {0: 0.061014, 1: 0.768014, 2: 0.000000, 3: 0.637520} + - time: 5.733333 + value: {0: 0.043231, 1: 0.762647, 2: -0.000000, 3: 0.645369} + - time: 5.766666 + value: {0: 0.025272, 1: 0.759742, 2: 0.000000, 3: 0.649733} + - time: 5.800000 + value: {0: 0.006274, 1: 0.759048, 2: 0.000000, 3: 0.651004} + - time: 5.833333 + value: {0: -0.014846, 1: 0.760564, 2: -0.000000, 3: 0.649094} + - time: 5.866667 + value: {0: -0.040103, 1: 0.764162, 2: 0.000000, 3: 0.643777} + - time: 5.900000 + value: {0: -0.072052, 1: 0.769255, 2: -0.000000, 3: 0.634867} + - time: 5.933333 + value: {0: -0.113525, 1: 0.775086, 2: -0.000000, 3: 0.621574} + - time: 5.966667 + value: {0: -0.169986, 1: 0.780202, 2: 0.000000, 3: 0.601988} + - time: 6.000000 + value: {0: -0.246272, 1: 0.780150, 2: 0.000000, 3: 0.575079} + - time: 6.033333 + value: {0: -0.348933, 1: 0.766045, 2: -0.000000, 3: 0.539833} + - time: 6.066667 + value: {0: -0.483004, 1: 0.721045, 2: 0.000000, 3: 0.496791} + - time: 6.100000 + value: {0: 0.636749, 1: -0.624450, 2: -0.000000, 3: -0.452341} + - time: 6.133333 + value: {0: 0.777231, 1: -0.472106, 2: 0.000000, 3: -0.415967} + - time: 6.166667 + value: {0: 0.872199, 1: -0.292769, 2: 0.000000, 3: -0.391861} + - time: 6.200000 + value: {0: 0.919857, 1: -0.108065, 2: 0.000000, 3: -0.377073} + - time: 6.233333 + value: {0: 0.925624, 1: 0.081416, 2: -0.000000, 3: -0.369582} + - time: 6.266666 + value: {0: 0.888946, 1: 0.270935, 2: 0.000000, 3: -0.369282} + - time: 6.300000 + value: {0: 0.808517, 1: 0.451886, 2: 0.000000, 3: -0.376961} + - time: 6.333333 + value: {0: 0.688179, 1: 0.609282, 2: 0.000000, 3: -0.393935} + - time: 6.366667 + value: {0: 0.540843, 1: 0.728539, 2: 0.000000, 3: -0.420381} + - time: 6.400000 + value: {0: 0.385969, 1: 0.802797, 2: -0.000000, 3: -0.454472} + - time: 6.433333 + value: {0: 0.242755, 1: 0.835783, 2: 0.000000, 3: -0.492480} + - time: 6.466667 + value: {0: -0.127664, 1: -0.838725, 2: -0.000000, 3: 0.529379} + - time: 6.500000 + value: {0: -0.044073, 1: -0.825943, 2: -0.000000, 3: 0.562028} + - time: 6.533333 + value: {0: 0.017988, 1: -0.806300, 2: 0.000000, 3: 0.591233} + - time: 6.566667 + value: {0: 0.067935, 1: -0.782442, 2: -0.000000, 3: 0.619007} + - time: 6.600000 + value: {0: 0.110026, 1: -0.754896, 2: 0.000000, 3: 0.646550} + - time: 6.633333 + value: {0: 0.147073, 1: -0.722755, 2: -0.000000, 3: 0.675274} + - time: 6.666667 + value: {0: 0.180947, 1: -0.684238, 2: 0.000000, 3: 0.706453} + - time: 6.700000 + value: {0: 0.212379, 1: -0.636821, 2: 0.000000, 3: 0.741184} + - time: 6.733333 + value: {0: 0.241346, 1: -0.576257, 2: -0.000000, 3: 0.780820} + - time: 6.766666 + value: {0: 0.266184, 1: -0.497278, 2: -0.000000, 3: 0.825748} + - time: 6.800000 + value: {0: 0.282931, 1: -0.397773, 2: 0.000000, 3: 0.872770} + - time: 6.833333 + value: {0: 0.287209, 1: -0.281562, 2: 0.000000, 3: 0.915551} + - time: 6.866667 + value: {0: 0.279213, 1: -0.172468, 2: -0.000000, 3: 0.944613} + - time: 6.900000 + value: {0: 0.266453, 1: -0.090287, 2: 0.000000, 3: 0.959610} + - time: 6.933333 + value: {0: 0.253741, 1: -0.031457, 2: 0.000000, 3: 0.966760} + - time: 6.966667 + value: {0: 0.242756, 1: 0.010124, 2: 0.000000, 3: 0.970035} + - time: 7.000000 + value: {0: 0.233355, 1: 0.040975, 2: 0.000000, 3: 0.971528} + - time: 7.033333 + value: {0: 0.225283, 1: 0.064500, 2: 0.000000, 3: 0.972156} + - time: 7.066667 + value: {0: 0.218351, 1: 0.082503, 2: 0.000000, 3: 0.972376} + - time: 7.100000 + value: {0: 0.212309, 1: 0.096373, 2: -0.000000, 3: 0.972439} + - time: 7.133333 + value: {0: 0.206915, 1: 0.107135, 2: -0.000000, 3: 0.972475} + - time: 7.166667 + value: {0: 0.202040, 1: 0.115219, 2: 0.000000, 3: 0.972576} + - time: 7.200000 + value: {0: 0.197581, 1: 0.120673, 2: 0.000000, 3: 0.972831} + - time: 7.233333 + value: {0: 0.193380, 1: 0.123700, 2: 0.000000, 3: 0.973295} + - time: 7.266666 + value: {0: 0.189325, 1: 0.124007, 2: 0.000000, 3: 0.974053} + - time: 7.300000 + value: {0: 0.185255, 1: 0.120482, 2: 0.000000, 3: 0.975277} + - time: 7.333333 + value: {0: 0.180817, 1: 0.112008, 2: -0.000000, 3: 0.977118} + - time: 7.366667 + value: {0: 0.175601, 1: 0.100449, 2: 0.000000, 3: 0.979323} + - time: 7.400000 + value: {0: 0.169171, 1: 0.087369, 2: 0.000000, 3: 0.981707} + - time: 7.433333 + value: {0: 0.161457, 1: 0.073020, 2: 0.000001, 3: 0.984175} + - time: 7.466667 + value: {0: 0.151762, 1: 0.056851, 2: -0.000000, 3: 0.986781} + - time: 7.500000 + value: {0: 0.139415, 1: 0.038603, 2: -0.000000, 3: 0.989481} + - time: 7.533333 + value: {0: 0.123734, 1: 0.018362, 2: -0.000000, 3: 0.992145} + - time: 7.566667 + value: {0: 0.103771, 1: -0.003501, 2: 0.000000, 3: 0.994595} + - time: 7.600000 + value: {0: 0.078710, 1: -0.025903, 2: -0.000001, 3: 0.996561} + - time: 7.633333 + value: {0: 0.046930, 1: -0.046583, 2: 0.000000, 3: 0.997811} + - time: 7.666667 + value: {0: 0.008110, 1: -0.059423, 2: -0.000000, 3: 0.998200} + - time: 7.700000 + value: {0: -0.035115, 1: -0.066417, 2: 0.000000, 3: 0.997174} + - time: 7.733333 + value: {0: -0.080799, 1: -0.068921, 2: -0.000000, 3: 0.994345} + - time: 7.766666 + value: {0: -0.135331, 1: -0.068998, 2: 0.000000, 3: 0.988395} + - time: 7.800000 + value: {0: -0.186872, 1: -0.068472, 2: 0.000001, 3: 0.979995} + - time: 7.833333 + value: {0: -0.238339, 1: -0.067533, 2: -0.000000, 3: 0.968831} + - time: 7.866667 + value: {0: -0.286663, 1: -0.066051, 2: -0.000000, 3: 0.955752} + - time: 7.900000 + value: {0: -0.338470, 1: -0.063625, 2: 0.000000, 3: 0.938824} + - time: 7.933333 + value: {0: -0.385183, 1: -0.060802, 2: -0.000000, 3: 0.920835} + - time: 7.966667 + value: {0: -0.440650, 1: -0.055392, 2: 0.000000, 3: 0.895968} + - time: 8.000000 + value: {0: -0.496192, 1: -0.048420, 2: -0.000000, 3: 0.866862} + - time: 8.033334 + value: {0: -0.544742, 1: -0.041153, 2: 0.000000, 3: 0.837594} + - time: 8.066667 + value: {0: -0.580980, 1: -0.034486, 2: -0.000000, 3: 0.813187} + - time: 8.100000 + value: {0: -0.608889, 1: -0.028381, 2: 0.000000, 3: 0.792748} + - time: 8.133333 + value: {0: -0.633412, 1: -0.022495, 2: 0.000000, 3: 0.773488} + - time: 8.166667 + value: {0: -0.654680, 1: -0.016941, 2: -0.000000, 3: 0.755716} + - time: 8.200000 + value: {0: -0.672909, 1: -0.011807, 2: 0.000000, 3: 0.739631} + - time: 8.233334 + value: {0: -0.678546, 1: -0.010034, 2: -0.000000, 3: 0.734489} + - time: 8.266666 + value: {0: -0.682005, 1: -0.008884, 2: -0.000000, 3: 0.731294} + - time: 8.300000 + value: {0: -0.684955, 1: -0.007889, 2: -0.000000, 3: 0.728543} + - time: 8.333333 + value: {0: -0.687430, 1: -0.007046, 2: 0.000000, 3: 0.726216} + - time: 8.366667 + value: {0: -0.689459, 1: -0.006347, 2: -0.000000, 3: 0.724297} + - time: 8.433333 + value: {0: -0.692883, 1: -0.005155, 2: -0.000000, 3: 0.721032} + - time: 8.533334 + value: {0: -0.697223, 1: -0.003620, 2: -0.000000, 3: 0.716845} + - time: 8.633333 + value: {0: -0.700631, 1: -0.002393, 2: -0.000000, 3: 0.713520} + - time: 8.666667 + value: {0: -0.701064, 1: -0.002236, 2: 0.000000, 3: 0.713095} + - time: 9.266666 + value: {0: -0.704179, 1: -0.001091, 2: -0.000000, 3: 0.710022} + - time: 9.600000 + value: {0: -0.705011, 1: -0.000783, 2: 0.000000, 3: 0.709196} + - time: 10.233334 + value: {0: -0.705252, 1: -0.000693, 2: 0.000000, 3: 0.708957} + - time: 13.333333 + value: {0: -0.705252, 1: -0.000693, 2: 0.000000, 3: 0.708957} + scale: + [] + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 1.animationAsset.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 1.animationAsset.meta new file mode 100644 index 00000000..d0b339dc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 1.animationAsset.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + AnimationAsset: ! 8811a6ee-076e-4144-a4e2-0cdc9e2fe3c2 + ImporterName: AnimationAssetImporter + PrimaryAsset: ! 8811a6ee-076e-4144-a4e2-0cdc9e2fe3c2 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 2.animationAsset b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 2.animationAsset new file mode 100644 index 00000000..8dfd7f43 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 2.animationAsset @@ -0,0 +1,1394 @@ +- ! + PackagePath: "" + AnimationPropertiesLayers: + piece_0: + position: + - time: 0.000000 + value: {x: -0.000002, y: 4.100674, z: -0.064313} + - time: 0.033333 + value: {x: -0.000002, y: 4.100674, z: -0.064313} + - time: 0.066667 + value: {x: -0.000002, y: 4.129870, z: -0.064313} + - time: 0.100000 + value: {x: -0.000002, y: 4.166759, z: -0.064313} + - time: 0.133333 + value: {x: -0.000002, y: 4.210787, z: -0.064313} + - time: 0.166667 + value: {x: -0.000002, y: 4.261509, z: -0.064313} + - time: 0.200000 + value: {x: -0.000002, y: 4.318566, z: -0.064313} + - time: 0.233333 + value: {x: -0.000002, y: 4.381668, z: -0.064312} + - time: 0.266667 + value: {x: -0.000002, y: 4.450577, z: -0.064311} + - time: 0.300000 + value: {x: -0.000003, y: 4.525103, z: -0.064310} + - time: 0.333333 + value: {x: -0.000003, y: 4.605088, z: -0.064309} + - time: 0.366667 + value: {x: -0.000004, y: 4.690409, z: -0.064308} + - time: 0.400000 + value: {x: -0.000004, y: 4.780968, z: -0.064307} + - time: 0.433333 + value: {x: -0.000005, y: 4.876691, z: -0.064307} + - time: 0.466667 + value: {x: -0.000006, y: 4.977525, z: -0.064306} + - time: 0.500000 + value: {x: -0.000006, y: 5.083436, z: -0.064305} + - time: 0.533333 + value: {x: -0.000007, y: 5.194406, z: -0.064304} + - time: 0.566667 + value: {x: -0.000007, y: 5.310433, z: -0.064303} + - time: 0.600000 + value: {x: -0.000008, y: 5.431531, z: -0.064302} + - time: 0.633333 + value: {x: -0.000008, y: 5.557727, z: -0.064301} + - time: 0.666667 + value: {x: -0.000009, y: 5.689063, z: -0.064300} + - time: 0.700000 + value: {x: -0.000009, y: 5.825592, z: -0.064298} + - time: 0.733333 + value: {x: -0.000010, y: 5.967384, z: -0.064297} + - time: 0.766667 + value: {x: -0.000011, y: 6.114520, z: -0.064295} + - time: 0.800000 + value: {x: -0.000011, y: 6.267096, z: -0.064294} + - time: 0.833333 + value: {x: -0.000012, y: 6.425221, z: -0.064293} + - time: 0.866667 + value: {x: -0.000012, y: 6.589019, z: -0.064291} + - time: 0.900000 + value: {x: -0.000013, y: 6.758633, z: -0.064290} + - time: 0.933333 + value: {x: -0.000014, y: 6.934217, z: -0.064288} + - time: 0.966667 + value: {x: -0.000015, y: 7.115947, z: -0.064286} + - time: 1.000000 + value: {x: -0.000016, y: 7.304016, z: -0.064284} + - time: 1.033333 + value: {x: -0.000017, y: 7.498638, z: -0.064282} + - time: 1.066667 + value: {x: -0.000018, y: 7.700050, z: -0.064281} + - time: 1.100000 + value: {x: -0.000019, y: 7.908516, z: -0.064279} + - time: 1.133333 + value: {x: -0.000020, y: 8.124324, z: -0.064276} + - time: 1.166667 + value: {x: -0.000021, y: 8.347796, z: -0.064274} + - time: 1.200000 + value: {x: -0.000022, y: 8.579288, z: -0.064272} + - time: 1.233333 + value: {x: -0.000023, y: 8.819194, z: -0.064270} + - time: 1.266667 + value: {x: -0.000025, y: 9.067956, z: -0.064267} + - time: 1.300000 + value: {x: -0.000832, y: 9.326078, z: -0.063930} + - time: 1.333333 + value: {x: -0.001670, y: 9.594097, z: -0.063579} + - time: 1.366667 + value: {x: -0.002541, y: 9.872632, z: -0.063215} + - time: 1.400000 + value: {x: -0.003447, y: 10.162380, z: -0.062836} + - time: 1.433333 + value: {x: -0.004391, y: 10.464137, z: -0.062441} + - time: 1.466667 + value: {x: -0.005375, y: 10.778811, z: -0.062029} + - time: 1.500000 + value: {x: -0.006403, y: 11.107444, z: -0.061599} + - time: 1.533333 + value: {x: -0.007478, y: 11.451240, z: -0.061149} + - time: 1.566667 + value: {x: -0.008606, y: 11.811612, z: -0.060677} + - time: 1.600000 + value: {x: -0.009790, y: 12.190226, z: -0.060181} + - time: 1.633333 + value: {x: -0.011038, y: 12.589063, z: -0.059658} + - time: 1.666667 + value: {x: -0.012357, y: 13.010522, z: -0.059105} + - time: 1.700000 + value: {x: -0.013756, y: 13.457548, z: -0.058519} + - time: 1.733333 + value: {x: -0.015247, y: 13.933816, z: -0.057894} + - time: 1.766667 + value: {x: -0.030565, y: 14.442986, z: -0.051881} + - time: 1.800000 + value: {x: -0.051750, y: 14.991804, z: -0.043580} + - time: 1.833333 + value: {x: -0.074800, y: 15.588904, z: -0.034548} + - time: 1.866667 + value: {x: -0.100167, y: 16.246031, z: -0.024606} + - time: 1.900000 + value: {x: -0.128531, y: 16.980749, z: -0.013489} + - time: 1.933333 + value: {x: -0.160993, y: 17.821550, z: -0.000764} + - time: 1.966667 + value: {x: -0.199569, y: 18.820677, z: 0.014360} + - time: 2.000000 + value: {x: -0.282414, y: 20.096479, z: 0.046629} + - time: 2.033333 + value: {x: -0.393695, y: 21.683130, z: 0.089947} + - time: 2.066667 + value: {x: -0.517810, y: 23.452711, z: 0.138263} + - time: 2.100000 + value: {x: -0.680404, y: 25.410875, z: 0.201429} + - time: 2.133333 + value: {x: -0.870199, y: 27.565598, z: 0.275116} + - time: 2.166667 + value: {x: -1.089136, y: 29.927343, z: 0.360069} + - time: 2.200000 + value: {x: -1.345562, y: 32.505077, z: 0.459495} + - time: 2.233333 + value: {x: -1.633050, y: 35.292290, z: 0.569251} + - time: 2.266667 + value: {x: -1.954544, y: 38.294159, z: 0.690071} + - time: 2.300000 + value: {x: -2.313212, y: 41.535824, z: 0.806929} + - time: 2.333333 + value: {x: -2.704681, y: 45.023113, z: 0.917197} + - time: 2.366667 + value: {x: -3.130800, y: 48.765873, z: 1.009830} + - time: 2.400000 + value: {x: -3.591383, y: 52.767967, z: 1.053854} + - time: 2.433333 + value: {x: -4.084279, y: 57.037174, z: 1.044911} + - time: 2.466667 + value: {x: -4.609148, y: 61.582451, z: 0.960748} + - time: 2.500000 + value: {x: -5.164922, y: 66.413033, z: 0.773114} + - time: 2.533333 + value: {x: -5.749734, y: 71.537376, z: 0.446382} + - time: 2.566667 + value: {x: -6.360626, y: 76.961914, z: -0.064668} + - time: 2.600000 + value: {x: -6.993049, y: 82.688896, z: -0.817961} + - time: 2.633333 + value: {x: -7.638432, y: 88.709778, z: -1.906313} + - time: 2.666667 + value: {x: -8.279595, y: 94.991997, z: -3.476897} + - time: 2.700000 + value: {x: -8.885023, y: 101.495659, z: -5.636854} + - time: 2.733333 + value: {x: -9.361837, y: 108.107666, z: -8.611780} + - time: 2.766667 + value: {x: -9.599564, y: 114.681519, z: -12.562867} + - time: 2.800000 + value: {x: -9.482107, y: 121.041809, z: -17.584784} + - time: 2.833333 + value: {x: -8.947419, y: 127.087463, z: -23.646006} + - time: 2.866667 + value: {x: -7.936666, y: 132.697784, z: -30.690199} + - time: 2.900000 + value: {x: -6.456824, y: 137.865829, z: -38.577190} + - time: 2.933333 + value: {x: -4.517138, y: 142.696167, z: -47.283192} + - time: 2.966667 + value: {x: -2.123589, y: 147.217758, z: -56.730179} + - time: 3.000000 + value: {x: 0.794039, y: 151.412445, z: -66.823586} + - time: 3.033333 + value: {x: 4.284599, y: 155.217651, z: -77.359093} + - time: 3.066667 + value: {x: 8.351398, y: 158.502701, z: -88.014534} + - time: 3.100000 + value: {x: 13.108130, y: 161.171356, z: -98.686157} + - time: 3.133333 + value: {x: 18.606747, y: 163.186111, z: -109.287506} + - time: 3.166667 + value: {x: 24.973124, y: 164.405930, z: -119.668724} + - time: 3.200000 + value: {x: 32.264008, y: 164.725922, z: -129.645798} + - time: 3.233333 + value: {x: 40.528812, y: 164.008423, z: -138.962845} + - time: 3.266667 + value: {x: 49.725777, y: 162.170654, z: -147.347488} + - time: 3.300000 + value: {x: 59.769165, y: 159.168137, z: -154.547379} + - time: 3.333333 + value: {x: 70.420135, y: 155.147827, z: -160.510468} + - time: 3.366667 + value: {x: 81.458923, y: 150.257431, z: -165.227737} + - time: 3.400000 + value: {x: 92.732231, y: 144.649414, z: -168.790894} + - time: 3.433333 + value: {x: 104.107292, y: 138.383560, z: -171.131042} + - time: 3.466667 + value: {x: 115.459122, y: 131.518936, z: -172.187424} + - time: 3.500000 + value: {x: 126.636292, y: 124.103180, z: -171.839020} + - time: 3.533333 + value: {x: 137.384796, y: 116.187630, z: -169.829315} + - time: 3.566667 + value: {x: 147.389526, y: 107.836296, z: -165.840195} + - time: 3.600000 + value: {x: 156.079575, y: 99.291618, z: -159.576370} + - time: 3.633333 + value: {x: 162.730957, y: 90.943497, z: -150.843262} + - time: 3.666667 + value: {x: 166.698044, y: 83.334923, z: -139.923065} + - time: 3.700000 + value: {x: 168.151505, y: 76.669807, z: -127.657990} + - time: 3.733333 + value: {x: 167.505630, y: 70.924477, z: -114.739197} + - time: 3.766667 + value: {x: 165.067871, y: 66.028625, z: -101.578896} + - time: 3.800000 + value: {x: 161.027008, y: 61.920090, z: -88.438370} + - time: 3.833333 + value: {x: 155.469315, y: 58.571312, z: -75.527931} + - time: 3.866667 + value: {x: 148.401520, y: 56.000046, z: -63.078789} + - time: 3.900000 + value: {x: 139.779785, y: 54.271889, z: -51.399475} + - time: 3.933333 + value: {x: 129.490112, y: 53.503689, z: -40.892982} + - time: 3.966667 + value: {x: 117.529190, y: 53.851944, z: -32.192425} + - time: 4.000000 + value: {x: 104.090240, y: 55.456039, z: -26.051422} + - time: 4.033333 + value: {x: 89.778122, y: 58.258148, z: -22.741053} + - time: 4.066667 + value: {x: 75.236786, y: 62.053444, z: -21.969246} + - time: 4.100000 + value: {x: 60.858681, y: 66.660873, z: -23.339960} + - time: 4.133333 + value: {x: 46.898861, y: 71.946716, z: -26.510962} + - time: 4.166667 + value: {x: 33.543213, y: 77.816002, z: -31.210819} + - time: 4.200000 + value: {x: 20.905979, y: 84.223076, z: -37.249584} + - time: 4.233333 + value: {x: 9.110548, y: 91.152901, z: -44.509060} + - time: 4.266666 + value: {x: -1.668491, y: 98.598679, z: -52.905872} + - time: 4.300000 + value: {x: -11.205782, y: 106.565163, z: -62.384895} + - time: 4.333333 + value: {x: -19.197975, y: 115.057655, z: -72.899307} + - time: 4.366667 + value: {x: -25.391294, y: 124.005325, z: -84.311127} + - time: 4.400000 + value: {x: -29.991135, y: 133.220673, z: -96.357346} + - time: 4.433333 + value: {x: -33.398941, y: 142.537918, z: -108.811447} + - time: 4.466667 + value: {x: -36.124916, y: 151.863846, z: -121.539146} + - time: 4.500000 + value: {x: -38.711720, y: 161.106033, z: -134.419785} + - time: 4.533333 + value: {x: -41.852428, y: 170.203949, z: -147.389297} + - time: 4.566667 + value: {x: -46.530369, y: 178.939621, z: -160.182465} + - time: 4.600000 + value: {x: -54.148159, y: 186.794296, z: -172.129105} + - time: 4.633333 + value: {x: -65.716980, y: 192.739426, z: -181.783401} + - time: 4.666667 + value: {x: -80.401810, y: 196.192688, z: -188.144943} + - time: 4.700000 + value: {x: -96.351166, y: 197.614563, z: -191.640594} + - time: 4.733333 + value: {x: -112.808464, y: 197.552551, z: -192.958115} + - time: 4.766666 + value: {x: -129.309875, y: 196.292969, z: -192.446259} + - time: 4.800000 + value: {x: -145.600128, y: 193.958771, z: -190.233521} + - time: 4.833333 + value: {x: -161.438965, y: 190.590881, z: -186.325790} + - time: 4.866667 + value: {x: -176.511017, y: 186.190186, z: -180.659760} + - time: 4.900000 + value: {x: -190.362885, y: 180.673798, z: -173.019623} + - time: 4.933333 + value: {x: -202.243820, y: 174.012985, z: -163.242233} + - time: 4.966667 + value: {x: -211.325089, y: 166.310135, z: -151.389755} + - time: 5.000000 + value: {x: -217.224854, y: 157.866791, z: -138.040802} + - time: 5.033333 + value: {x: -220.194702, y: 149.004288, z: -123.930687} + - time: 5.066667 + value: {x: -220.471802, y: 139.929092, z: -109.596268} + - time: 5.100000 + value: {x: -218.171494, y: 130.764145, z: -95.451157} + - time: 5.133333 + value: {x: -213.386810, y: 121.617287, z: -81.895439} + - time: 5.166667 + value: {x: -205.898087, y: 112.604729, z: -69.451424} + - time: 5.200000 + value: {x: -195.537811, y: 103.996651, z: -58.948444} + - time: 5.233333 + value: {x: -182.131729, y: 96.286568, z: -51.694839} + - time: 5.266666 + value: {x: -166.370255, y: 90.262154, z: -49.114609} + - time: 5.300000 + value: {x: -149.766708, y: 86.141815, z: -50.777218} + - time: 5.333333 + value: {x: -133.378876, y: 83.610634, z: -55.374424} + - time: 5.366667 + value: {x: -117.438736, y: 82.196251, z: -61.806927} + - time: 5.400000 + value: {x: -101.918785, y: 81.628929, z: -69.534325} + - time: 5.433333 + value: {x: -86.825462, y: 81.686310, z: -78.105751} + - time: 5.466667 + value: {x: -72.134613, y: 82.254730, z: -87.293724} + - time: 5.500000 + value: {x: -57.720196, y: 83.232315, z: -96.959229} + - time: 5.533333 + value: {x: -43.562679, y: 84.568535, z: -106.991592} + - time: 5.566667 + value: {x: -29.618462, y: 86.212753, z: -117.299171} + - time: 5.600000 + value: {x: -15.850748, y: 88.144043, z: -127.828362} + - time: 5.633333 + value: {x: -2.239188, y: 90.349197, z: -138.532974} + - time: 5.666667 + value: {x: 11.200747, y: 92.858971, z: -149.408539} + - time: 5.700000 + value: {x: 24.456499, y: 95.706253, z: -160.456070} + - time: 5.733333 + value: {x: 37.485996, y: 98.947083, z: -171.675140} + - time: 5.766666 + value: {x: 50.253719, y: 102.642342, z: -183.070572} + - time: 5.800000 + value: {x: 62.667622, y: 106.889565, z: -194.633408} + - time: 5.833333 + value: {x: 74.646873, y: 111.812729, z: -206.376633} + - time: 5.866667 + value: {x: 86.072792, y: 117.664253, z: -218.369751} + - time: 5.900000 + value: {x: 96.561661, y: 124.683006, z: -230.476639} + - time: 5.933333 + value: {x: 105.562988, y: 133.483566, z: -242.671127} + - time: 5.966667 + value: {x: 111.849060, y: 144.735077, z: -254.462219} + - time: 6.000000 + value: {x: 113.495689, y: 158.602692, z: -264.831451} + - time: 6.033333 + value: {x: 109.378738, y: 173.631683, z: -272.632843} + - time: 6.066667 + value: {x: 99.980530, y: 187.570267, z: -277.285400} + - time: 6.100000 + value: {x: 87.163910, y: 199.270096, z: -279.448212} + - time: 6.133333 + value: {x: 72.254524, y: 208.413239, z: -279.814972} + - time: 6.166667 + value: {x: 56.168270, y: 215.249161, z: -279.024780} + - time: 6.200000 + value: {x: 39.387646, y: 220.045822, z: -277.397339} + - time: 6.233333 + value: {x: 22.338797, y: 223.209320, z: -275.154053} + - time: 6.266666 + value: {x: 5.147619, y: 224.880447, z: -272.360229} + - time: 6.300000 + value: {x: -12.012612, y: 225.182388, z: -269.086029} + - time: 6.333333 + value: {x: -29.019341, y: 224.037949, z: -265.321228} + - time: 6.366667 + value: {x: -45.734261, y: 221.393112, z: -261.066864} + - time: 6.400000 + value: {x: -61.876160, y: 216.985168, z: -256.275513} + - time: 6.433333 + value: {x: -77.131096, y: 210.553848, z: -250.905823} + - time: 6.466667 + value: {x: -90.762833, y: 201.669083, z: -244.916656} + - time: 6.500000 + value: {x: -102.097061, y: 190.416275, z: -238.219788} + - time: 6.533333 + value: {x: -110.441528, y: 177.299759, z: -230.662537} + - time: 6.566667 + value: {x: -115.524788, y: 163.140915, z: -222.193481} + - time: 6.600000 + value: {x: -117.277908, y: 148.782623, z: -212.827377} + - time: 6.633333 + value: {x: -116.027084, y: 134.945099, z: -202.682419} + - time: 6.666667 + value: {x: -112.210579, y: 122.119621, z: -191.901108} + - time: 6.700000 + value: {x: -106.319717, y: 110.575363, z: -180.636719} + - time: 6.733333 + value: {x: -98.850700, y: 100.410789, z: -169.059448} + - time: 6.766666 + value: {x: -90.136581, y: 91.517830, z: -157.307358} + - time: 6.800000 + value: {x: -80.472542, y: 83.615555, z: -145.625854} + - time: 6.833333 + value: {x: -69.948944, y: 76.553452, z: -134.188950} + - time: 6.866667 + value: {x: -58.635025, y: 70.216995, z: -123.153366} + - time: 6.900000 + value: {x: -46.510021, y: 64.565369, z: -112.692688} + - time: 6.933333 + value: {x: -33.515175, y: 59.612274, z: -103.051682} + - time: 6.966667 + value: {x: -19.578926, y: 55.406521, z: -94.553665} + - time: 7.000000 + value: {x: -4.525906, y: 52.111794, z: -87.777718} + - time: 7.033333 + value: {x: 11.610830, y: 50.004044, z: -83.642029} + - time: 7.066667 + value: {x: 28.245358, y: 49.494770, z: -83.468460} + - time: 7.100000 + value: {x: 43.997562, y: 50.907787, z: -88.424957} + - time: 7.133333 + value: {x: 57.428776, y: 53.854942, z: -97.589302} + - time: 7.166667 + value: {x: 68.556244, y: 57.756760, z: -109.213394} + - time: 7.200000 + value: {x: 77.708954, y: 62.275940, z: -122.251938} + - time: 7.233333 + value: {x: 85.232445, y: 67.206955, z: -136.084854} + - time: 7.266666 + value: {x: 91.324722, y: 72.465279, z: -150.429306} + - time: 7.300000 + value: {x: 96.063736, y: 78.012581, z: -165.112778} + - time: 7.333333 + value: {x: 99.483025, y: 83.820839, z: -179.985199} + - time: 7.366667 + value: {x: 101.549812, y: 89.882286, z: -194.925781} + - time: 7.400000 + value: {x: 102.151093, y: 96.199173, z: -209.804184} + - time: 7.433333 + value: {x: 101.055939, y: 102.793381, z: -224.485855} + - time: 7.466667 + value: {x: 97.990784, y: 109.634445, z: -238.704849} + - time: 7.500000 + value: {x: 92.623993, y: 116.632141, z: -252.026199} + - time: 7.533333 + value: {x: 84.631866, y: 123.635422, z: -263.855530} + - time: 7.566667 + value: {x: 74.009224, y: 130.363022, z: -273.490112} + - time: 7.600000 + value: {x: 61.418068, y: 136.509506, z: -280.704803} + - time: 7.633333 + value: {x: 47.602654, y: 141.951279, z: -285.772064} + - time: 7.666667 + value: {x: 33.062740, y: 146.672134, z: -289.042175} + - time: 7.700000 + value: {x: 18.146059, y: 150.682327, z: -290.817108} + - time: 7.733333 + value: {x: 3.026368, y: 154.013000, z: -291.341583} + - time: 7.766666 + value: {x: -12.159245, y: 156.675552, z: -290.792389} + - time: 7.800000 + value: {x: -27.298445, y: 158.665222, z: -289.299042} + - time: 7.833333 + value: {x: -42.301018, y: 159.961990, z: -286.954407} + - time: 7.866667 + value: {x: -57.136913, y: 160.527084, z: -283.808289} + - time: 7.900000 + value: {x: -71.725044, y: 160.288010, z: -279.886963} + - time: 7.933333 + value: {x: -85.940643, y: 159.139618, z: -275.200226} + - time: 7.966667 + value: {x: -99.628899, y: 156.934662, z: -269.736694} + - time: 8.000000 + value: {x: -112.571640, y: 153.467407, z: -263.466003} + - time: 8.033334 + value: {x: -124.420433, y: 148.466843, z: -256.360077} + - time: 8.066667 + value: {x: -134.706161, y: 141.770294, z: -248.474472} + - time: 8.100000 + value: {x: -143.123795, y: 133.570007, z: -239.978836} + - time: 8.133333 + value: {x: -149.566299, y: 124.226196, z: -231.089584} + - time: 8.166667 + value: {x: -154.110031, y: 114.128159, z: -221.998718} + - time: 8.200000 + value: {x: -156.942307, y: 103.608414, z: -212.835999} + - time: 8.233334 + value: {x: -158.280838, y: 92.920784, z: -203.674072} + - time: 8.266666 + value: {x: -158.307785, y: 82.253647, z: -194.544708} + - time: 8.300000 + value: {x: -157.208069, y: 71.748344, z: -185.451614} + - time: 8.333333 + value: {x: -155.120468, y: 61.513344, z: -176.381882} + - time: 8.366667 + value: {x: -152.142426, y: 51.644951, z: -167.312378} + - time: 8.400000 + value: {x: -148.331039, y: 42.248829, z: -158.212280} + - time: 8.433333 + value: {x: -143.796783, y: 33.583611, z: -149.185333} + - time: 8.466666 + value: {x: -138.705185, y: 25.859798, z: -140.342911} + - time: 8.500000 + value: {x: -133.110062, y: 19.228519, z: -131.682022} + - time: 8.533334 + value: {x: -127.123558, y: 13.662033, z: -123.227013} + - time: 8.566667 + value: {x: -120.831726, y: 9.149284, z: -115.047874} + - time: 8.600000 + value: {x: -114.355980, y: 5.575725, z: -107.194344} + - time: 8.633333 + value: {x: -107.793465, y: 2.833862, z: -99.697670} + - time: 8.666667 + value: {x: -101.228691, y: 0.819944, z: -92.579704} + - time: 8.700000 + value: {x: -94.740845, y: -0.571098, z: -85.856834} + - time: 8.733334 + value: {x: -88.381889, y: -1.444835, z: -79.520348} + - time: 8.766666 + value: {x: -82.194870, y: -1.877333, z: -73.568703} + - time: 8.800000 + value: {x: -76.223373, y: -1.958555, z: -67.993851} + - time: 8.833333 + value: {x: -70.488861, y: -1.782280, z: -62.766258} + - time: 8.866667 + value: {x: -64.947296, y: -1.367540, z: -57.832405} + - time: 8.900000 + value: {x: -59.661037, y: -0.808640, z: -53.201485} + - time: 8.933333 + value: {x: -54.658726, y: -0.129591, z: -48.884315} + - time: 8.966666 + value: {x: -49.880581, y: 0.621589, z: -44.799267} + - time: 9.000000 + value: {x: -45.408646, y: 1.391544, z: -40.993641} + - time: 9.033334 + value: {x: -41.142582, y: 2.166831, z: -37.362663} + - time: 9.066667 + value: {x: -37.123344, y: 2.929995, z: -33.933319} + - time: 9.100000 + value: {x: -33.370529, y: 3.679278, z: -30.721092} + - time: 9.133333 + value: {x: -29.854275, y: 4.424206, z: -27.699574} + - time: 9.166667 + value: {x: -26.561594, y: 5.172714, z: -24.856340} + - time: 9.200000 + value: {x: -23.500114, y: 5.929038, z: -22.196560} + - time: 9.233334 + value: {x: -20.650196, y: 6.704056, z: -19.701817} + - time: 9.266666 + value: {x: -17.998663, y: 7.498439, z: -17.361546} + - time: 9.300000 + value: {x: -15.574231, y: 8.368666, z: -15.184690} + - time: 9.333333 + value: {x: -13.367225, y: 9.307393, z: -13.166396} + - time: 9.366667 + value: {x: -11.346405, y: 10.260587, z: -11.294932} + - time: 9.400000 + value: {x: -9.544242, y: 11.353498, z: -9.572159} + - time: 9.433333 + value: {x: -7.881788, y: 12.390055, z: -7.977996} + - time: 9.466666 + value: {x: -6.457127, y: 13.594611, z: -6.574945} + - time: 9.500000 + value: {x: -5.179698, y: 14.674122, z: -5.316952} + - time: 9.533334 + value: {x: -4.227682, y: 15.854352, z: -4.362171} + - time: 9.566667 + value: {x: -3.456197, y: 16.934521, z: -3.582824} + - time: 9.600000 + value: {x: -2.801113, y: 17.850965, z: -2.921111} + - time: 9.633333 + value: {x: -2.314677, y: 18.692480, z: -2.428258} + - time: 9.666667 + value: {x: -2.029158, y: 19.527142, z: -2.135840} + - time: 9.700000 + value: {x: -1.787793, y: 20.232328, z: -1.888679} + - time: 9.733334 + value: {x: -1.581012, y: 20.836136, z: -1.676954} + - time: 9.766666 + value: {x: -1.399274, y: 21.366550, z: -1.490880} + - time: 9.800000 + value: {x: -1.232816, y: 21.852129, z: -1.320458} + - time: 9.833333 + value: {x: -1.071613, y: 22.322168, z: -1.155416} + - time: 9.866667 + value: {x: -0.905791, y: 22.805445, z: -0.985645} + - time: 9.900000 + value: {x: -0.820788, y: 23.380272, z: -0.898846} + - time: 9.933333 + value: {x: -0.729361, y: 24.035795, z: -0.805523} + - time: 9.966666 + value: {x: -0.622639, y: 24.800596, z: -0.696599} + - time: 10.000000 + value: {x: -0.496223, y: 25.705973, z: -0.567587} + - time: 10.033334 + value: {x: -0.345827, y: 26.782270, z: -0.414109} + - time: 10.066667 + value: {x: -0.209867, y: 27.857615, z: -0.275417} + - time: 10.100000 + value: {x: -0.171047, y: 28.784868, z: -0.236126} + - time: 10.133333 + value: {x: -0.137585, y: 29.583752, z: -0.202259} + - time: 10.166667 + value: {x: -0.108414, y: 30.279860, z: -0.172738} + - time: 10.200000 + value: {x: -0.082752, y: 30.892012, z: -0.146767} + - time: 10.233334 + value: {x: -0.060052, y: 31.433319, z: -0.123795} + - time: 10.266666 + value: {x: -0.039885, y: 31.914095, z: -0.103385} + - time: 10.300000 + value: {x: -0.021918, y: 32.342274, z: -0.085202} + - time: 10.333333 + value: {x: -0.007157, y: 32.724525, z: -0.070271} + - time: 10.366667 + value: {x: -0.006663, y: 33.066139, z: -0.069853} + - time: 10.400000 + value: {x: -0.006222, y: 33.371239, z: -0.069480} + - time: 10.433333 + value: {x: -0.005828, y: 33.643799, z: -0.069146} + - time: 10.466666 + value: {x: -0.005477, y: 33.886238, z: -0.068849} + - time: 10.500000 + value: {x: -0.005165, y: 34.102219, z: -0.068585} + - time: 10.533334 + value: {x: -0.004888, y: 34.293556, z: -0.068350} + - time: 10.566667 + value: {x: -0.004643, y: 34.462379, z: -0.068143} + - time: 10.600000 + value: {x: -0.004428, y: 34.610825, z: -0.067961} + - time: 10.633333 + value: {x: -0.004241, y: 34.740105, z: -0.067802} + - time: 10.666667 + value: {x: -0.004079, y: 34.852047, z: -0.067665} + - time: 10.700000 + value: {x: -0.003939, y: 34.929836, z: -0.067547} + - time: 10.733334 + value: {x: -0.003822, y: 34.982590, z: -0.067448} + - time: 10.766666 + value: {x: -0.003724, y: 35.011948, z: -0.067364} + - time: 10.800000 + value: {x: -0.003644, y: 35.017365, z: -0.067297} + - time: 10.833333 + value: {x: -0.003581, y: 35.000401, z: -0.067243} + - time: 10.866667 + value: {x: -0.003532, y: 34.961040, z: -0.067202} + - time: 10.900000 + value: {x: -0.003497, y: 34.899837, z: -0.067172} + - time: 10.933333 + value: {x: -0.003474, y: 34.816669, z: -0.067153} + - time: 10.966666 + value: {x: -0.003461, y: 34.712288, z: -0.067142} + - time: 11.000000 + value: {x: -0.003458, y: 34.586456, z: -0.067139} + - time: 11.033334 + value: {x: -0.003458, y: 34.442211, z: -0.067139} + - time: 11.066667 + value: {x: -0.003458, y: 34.281021, z: -0.067139} + - time: 11.100000 + value: {x: -0.003458, y: 34.101807, z: -0.067139} + - time: 11.133333 + value: {x: -0.003458, y: 33.903423, z: -0.067139} + - time: 11.166667 + value: {x: -0.003458, y: 33.684620, z: -0.067139} + - time: 11.200000 + value: {x: -0.003458, y: 33.444065, z: -0.067139} + - time: 11.233334 + value: {x: -0.003458, y: 33.180294, z: -0.067139} + - time: 11.266666 + value: {x: -0.003458, y: 32.891781, z: -0.067139} + - time: 11.300000 + value: {x: -0.003458, y: 32.576836, z: -0.067139} + - time: 11.333333 + value: {x: -0.003458, y: 32.233715, z: -0.067139} + - time: 11.366667 + value: {x: -0.003458, y: 31.860548, z: -0.067139} + - time: 11.400000 + value: {x: -0.003458, y: 31.455429, z: -0.067139} + - time: 11.433333 + value: {x: -0.003458, y: 31.016369, z: -0.067139} + - time: 11.466666 + value: {x: -0.003458, y: 30.541430, z: -0.067139} + - time: 11.500000 + value: {x: -0.003458, y: 30.028717, z: -0.067139} + - time: 11.533334 + value: {x: -0.003458, y: 29.476551, z: -0.067139} + - time: 11.566667 + value: {x: -0.003458, y: 28.883587, z: -0.067139} + - time: 11.600000 + value: {x: -0.003458, y: 28.248917, z: -0.067139} + - time: 11.633333 + value: {x: -0.003458, y: 27.572418, z: -0.067139} + - time: 11.666667 + value: {x: -0.003458, y: 26.854830, z: -0.067139} + - time: 11.700000 + value: {x: -0.003458, y: 26.098135, z: -0.067139} + - time: 11.733334 + value: {x: -0.003458, y: 25.305611, z: -0.067139} + - time: 11.766666 + value: {x: -0.003458, y: 24.482075, z: -0.067139} + - time: 11.800000 + value: {x: -0.003458, y: 23.633686, z: -0.067139} + - time: 11.833333 + value: {x: -0.003458, y: 22.767889, z: -0.067139} + - time: 11.866667 + value: {x: -0.003458, y: 21.892832, z: -0.067139} + - time: 11.900000 + value: {x: -0.003458, y: 21.017044, z: -0.067139} + - time: 11.933333 + value: {x: -0.003458, y: 20.148670, z: -0.067139} + - time: 11.966666 + value: {x: -0.003458, y: 19.295183, z: -0.067139} + - time: 12.000000 + value: {x: -0.003458, y: 18.462835, z: -0.067139} + - time: 12.033334 + value: {x: -0.003458, y: 17.656637, z: -0.067139} + - time: 12.066667 + value: {x: -0.003458, y: 16.880259, z: -0.067139} + - time: 12.100000 + value: {x: -0.003458, y: 16.136082, z: -0.067139} + - time: 12.133333 + value: {x: -0.003458, y: 15.425499, z: -0.067139} + - time: 12.166667 + value: {x: -0.003458, y: 14.748963, z: -0.067139} + - time: 12.200000 + value: {x: -0.003458, y: 14.106343, z: -0.067139} + - time: 12.233334 + value: {x: -0.003458, y: 13.496944, z: -0.067139} + - time: 12.266666 + value: {x: -0.003458, y: 12.919804, z: -0.067139} + - time: 12.300000 + value: {x: -0.003458, y: 12.373671, z: -0.067139} + - time: 12.333333 + value: {x: -0.003458, y: 11.857235, z: -0.067139} + - time: 12.366667 + value: {x: -0.003458, y: 11.369054, z: -0.067139} + - time: 12.400000 + value: {x: -0.003458, y: 10.907737, z: -0.067139} + - time: 12.433333 + value: {x: -0.003458, y: 10.471851, z: -0.067139} + - time: 12.466666 + value: {x: -0.003458, y: 10.060065, z: -0.067139} + - time: 12.500000 + value: {x: -0.003458, y: 9.671048, z: -0.067139} + - time: 12.533334 + value: {x: -0.003458, y: 9.303572, z: -0.067139} + - time: 12.566667 + value: {x: -0.003458, y: 8.956474, z: -0.067139} + - time: 12.600000 + value: {x: -0.003458, y: 8.628633, z: -0.067139} + - time: 12.633333 + value: {x: -0.003458, y: 8.319033, z: -0.067139} + - time: 12.666667 + value: {x: -0.003458, y: 8.026688, z: -0.067139} + - time: 12.700000 + value: {x: -0.003458, y: 7.750711, z: -0.067139} + - time: 12.733334 + value: {x: -0.003458, y: 7.490244, z: -0.067139} + - time: 12.766666 + value: {x: -0.003458, y: 7.244511, z: -0.067139} + - time: 12.800000 + value: {x: -0.003458, y: 7.009225, z: -0.067139} + - time: 12.833333 + value: {x: -0.003458, y: 6.781062, z: -0.067139} + - time: 12.866667 + value: {x: -0.003458, y: 6.560688, z: -0.067139} + - time: 12.900000 + value: {x: -0.003458, y: 6.348794, z: -0.067139} + - time: 12.933333 + value: {x: -0.003458, y: 6.146025, z: -0.067139} + - time: 12.966666 + value: {x: -0.003458, y: 5.953012, z: -0.067139} + - time: 13.000000 + value: {x: -0.003458, y: 5.770293, z: -0.067139} + - time: 13.033334 + value: {x: -0.003458, y: 5.598341, z: -0.067139} + - time: 13.066667 + value: {x: -0.003458, y: 5.437514, z: -0.067139} + - time: 13.100000 + value: {x: -0.003458, y: 5.288033, z: -0.067139} + - time: 13.133333 + value: {x: -0.003458, y: 5.149993, z: -0.067139} + - time: 13.166667 + value: {x: -0.003458, y: 5.023330, z: -0.067139} + - time: 13.200000 + value: {x: -0.003458, y: 4.907851, z: -0.067139} + - time: 13.233334 + value: {x: -0.003458, y: 4.803223, z: -0.067139} + - time: 13.266666 + value: {x: -0.003458, y: 4.709005, z: -0.067139} + - time: 13.300000 + value: {x: -0.003458, y: 4.624659, z: -0.067139} + - time: 13.333333 + value: {x: -0.003458, y: 4.549581, z: -0.067139} + - time: 13.366667 + value: {x: -0.003458, y: 4.483117, z: -0.067139} + - time: 13.400000 + value: {x: -0.003458, y: 4.424594, z: -0.067139} + - time: 13.433333 + value: {x: -0.003458, y: 4.373330, z: -0.067139} + - time: 13.466666 + value: {x: -0.003458, y: 4.328658, z: -0.067139} + - time: 13.500000 + value: {x: -0.003458, y: 4.289935, z: -0.067139} + - time: 13.533334 + value: {x: -0.003458, y: 4.256544, z: -0.067139} + - time: 13.566667 + value: {x: -0.003458, y: 4.227917, z: -0.067139} + - time: 13.600000 + value: {x: -0.003458, y: 4.203518, z: -0.067139} + - time: 13.633333 + value: {x: -0.003458, y: 4.182860, z: -0.067139} + - time: 13.666667 + value: {x: -0.003458, y: 4.165497, z: -0.067139} + - time: 13.700000 + value: {x: -0.003458, y: 4.151024, z: -0.067139} + - time: 13.733334 + value: {x: -0.003458, y: 4.139075, z: -0.067139} + - time: 13.766666 + value: {x: -0.003458, y: 4.129323, z: -0.067139} + - time: 13.800000 + value: {x: -0.003458, y: 4.121470, z: -0.067139} + - time: 13.833333 + value: {x: -0.003458, y: 4.115256, z: -0.067139} + - time: 13.866667 + value: {x: -0.003458, y: 4.110444, z: -0.067139} + - time: 13.900000 + value: {x: -0.003458, y: 4.106823, z: -0.067139} + - time: 13.933333 + value: {x: -0.003458, y: 4.104210, z: -0.067139} + - time: 13.966666 + value: {x: -0.003458, y: 4.102433, z: -0.067139} + - time: 14.000000 + value: {x: -0.003458, y: 4.101347, z: -0.067139} + rotation: + - time: 0.000000 + value: {0: -0.707106, 1: -0.000005, 2: 0.000000, 3: 0.707108} + - time: 0.633333 + value: {0: -0.707045, 1: -0.000321, 2: -0.000000, 3: 0.707169} + - time: 1.266667 + value: {0: -0.706896, 1: -0.001084, 2: -0.000000, 3: 0.707317} + - time: 1.333333 + value: {0: -0.706614, 1: -0.002517, 2: -0.000000, 3: 0.707594} + - time: 1.500000 + value: {0: -0.705788, 1: -0.006634, 2: -0.000000, 3: 0.708392} + - time: 1.633333 + value: {0: -0.704954, 1: -0.010655, 2: -0.000000, 3: 0.709173} + - time: 1.733333 + value: {0: -0.704177, 1: -0.014296, 2: -0.000000, 3: 0.709880} + - time: 1.766667 + value: {0: -0.703708, 1: -0.016448, 2: 0.000000, 3: 0.710299} + - time: 1.833333 + value: {0: -0.702502, 1: -0.021833, 2: 0.000000, 3: 0.711347} + - time: 1.866667 + value: {0: -0.701791, 1: -0.024914, 2: 0.000000, 3: 0.711947} + - time: 1.900000 + value: {0: -0.700979, 1: -0.028352, 2: 0.000000, 3: 0.712618} + - time: 1.933333 + value: {0: -0.700029, 1: -0.032277, 2: 0.000000, 3: 0.713384} + - time: 2.000000 + value: {0: -0.697685, 1: -0.041553, 2: 0.000000, 3: 0.715199} + - time: 2.033333 + value: {0: -0.696251, 1: -0.046969, 2: 0.000000, 3: 0.716260} + - time: 2.066667 + value: {0: -0.694601, 1: -0.052987, 2: -0.000000, 3: 0.717441} + - time: 2.100000 + value: {0: -0.693273, 1: -0.057676, 2: 0.000000, 3: 0.718363} + - time: 2.133333 + value: {0: -0.692021, 1: -0.061985, 2: -0.000000, 3: 0.719211} + - time: 2.166667 + value: {0: -0.690862, 1: -0.066020, 2: 0.000000, 3: 0.719966} + - time: 2.200000 + value: {0: -0.689969, 1: -0.069336, 2: 0.000000, 3: 0.720510} + - time: 2.233333 + value: {0: -0.689507, 1: -0.072319, 2: -0.000000, 3: 0.720659} + - time: 2.266667 + value: {0: -0.689603, 1: -0.074841, 2: -0.000000, 3: 0.720310} + - time: 2.300000 + value: {0: -0.690938, 1: -0.076735, 2: -0.000000, 3: 0.718830} + - time: 2.333333 + value: {0: -0.693063, 1: -0.078367, 2: -0.000000, 3: 0.716605} + - time: 2.366667 + value: {0: -0.696166, 1: -0.079678, 2: -0.000000, 3: 0.713445} + - time: 2.400000 + value: {0: -0.700451, 1: -0.080661, 2: -0.000000, 3: 0.709128} + - time: 2.433333 + value: {0: -0.705719, 1: -0.081466, 2: 0.000000, 3: 0.703792} + - time: 2.466667 + value: {0: -0.712135, 1: -0.082085, 2: -0.000000, 3: 0.697228} + - time: 2.500000 + value: {0: -0.719904, 1: -0.082504, 2: 0.000000, 3: 0.689153} + - time: 2.533333 + value: {0: -0.729310, 1: -0.082699, 2: 0.000000, 3: 0.679167} + - time: 2.566667 + value: {0: -0.740740, 1: -0.082612, 2: -0.000000, 3: 0.666693} + - time: 2.600000 + value: {0: -0.754711, 1: -0.082141, 2: 0.000000, 3: 0.650895} + - time: 2.633333 + value: {0: -0.772100, 1: -0.081051, 2: -0.000000, 3: 0.630312} + - time: 2.666667 + value: {0: -0.794306, 1: -0.078001, 2: -0.000000, 3: 0.602490} + - time: 2.700000 + value: {0: -0.821541, 1: -0.068893, 2: -0.000000, 3: 0.565972} + - time: 2.733333 + value: {0: -0.852983, 1: -0.047827, 2: 0.000000, 3: 0.519742} + - time: 2.766667 + value: {0: 0.884790, 1: 0.010108, 2: 0.000000, 3: -0.465881} + - time: 2.800000 + value: {0: 0.910955, 1: -0.047102, 2: 0.000000, 3: -0.409807} + - time: 2.833333 + value: {0: 0.925769, 1: -0.123711, 2: 0.000000, 3: -0.357277} + - time: 2.866667 + value: {0: 0.925063, 1: -0.214510, 2: 0.000000, 3: -0.313440} + - time: 2.900000 + value: {0: 0.908173, 1: -0.311425, 2: 0.000000, 3: -0.279708} + - time: 2.933333 + value: {0: 0.876826, 1: -0.407698, 2: 0.000000, 3: -0.254869} + - time: 2.966667 + value: {0: 0.830681, 1: -0.503383, 2: -0.000000, 3: -0.237853} + - time: 3.000000 + value: {0: 0.761789, 1: -0.606404, 2: -0.000000, 3: -0.227928} + - time: 3.033333 + value: {0: -0.666461, 1: 0.710911, 2: 0.000000, 3: 0.224576} + - time: 3.066667 + value: {0: -0.546473, 1: 0.805780, 2: 0.000000, 3: 0.228223} + - time: 3.100000 + value: {0: -0.406317, 1: 0.881687, 2: -0.000000, 3: 0.239862} + - time: 3.133333 + value: {0: -0.257098, 1: 0.930655, 2: 0.000000, 3: 0.260349} + - time: 3.166667 + value: {0: -0.110750, 1: 0.950379, 2: 0.000000, 3: 0.290712} + - time: 3.200000 + value: {0: 0.021256, 1: 0.943377, 2: 0.000000, 3: 0.331040} + - time: 3.233333 + value: {0: 0.131961, 1: 0.915362, 2: -0.000000, 3: 0.380392} + - time: 3.266667 + value: {0: 0.218560, 1: 0.872946, 2: 0.000000, 3: 0.436116} + - time: 3.300000 + value: {0: 0.280375, 1: 0.823965, 2: 0.000000, 3: 0.492414} + - time: 3.333333 + value: {0: 0.319795, 1: 0.777670, 2: 0.000000, 3: 0.541258} + - time: 3.366667 + value: {0: 0.345577, 1: 0.734859, 2: -0.000000, 3: 0.583573} + - time: 3.400000 + value: {0: 0.363302, 1: 0.693425, 2: 0.000000, 3: 0.622233} + - time: 3.433333 + value: {0: 0.375539, 1: 0.651366, 2: -0.000000, 3: 0.659312} + - time: 3.466667 + value: {0: 0.383433, 1: 0.606210, 2: -0.000000, 3: 0.696770} + - time: 3.500000 + value: {0: 0.386985, 1: 0.555101, 2: -0.000000, 3: 0.736278} + - time: 3.533333 + value: {0: 0.385053, 1: 0.493953, 2: 0.000000, 3: 0.779580} + - time: 3.566667 + value: {0: 0.374913, 1: 0.417673, 2: 0.000000, 3: 0.827641} + - time: 3.600000 + value: {0: 0.352282, 1: 0.322108, 2: 0.000000, 3: 0.878717} + - time: 3.633333 + value: {0: 0.313491, 1: 0.208708, 2: 0.000000, 3: 0.926372} + - time: 3.666667 + value: {0: 0.267001, 1: 0.100018, 2: 0.000000, 3: 0.958492} + - time: 3.700000 + value: {0: 0.225866, 1: 0.013681, 2: -0.000000, 3: 0.974062} + - time: 3.733333 + value: {0: 0.190865, 1: -0.056159, 2: -0.000000, 3: 0.980009} + - time: 3.766667 + value: {0: 0.160431, 1: -0.115906, 2: -0.000000, 3: 0.980218} + - time: 3.800000 + value: {0: 0.132627, 1: -0.170649, 2: -0.000000, 3: 0.976365} + - time: 3.833333 + value: {0: 0.105614, 1: -0.224362, 2: -0.000000, 3: 0.968766} + - time: 3.866667 + value: {0: 0.077533, 1: -0.280494, 2: 0.000000, 3: 0.956719} + - time: 3.900000 + value: {0: 0.046242, 1: -0.342387, 2: 0.000000, 3: 0.938421} + - time: 3.933333 + value: {0: 0.009038, 1: -0.413241, 2: 0.000000, 3: 0.910577} + - time: 3.966667 + value: {0: -0.037025, 1: -0.494341, 2: -0.000000, 3: 0.868479} + - time: 4.000000 + value: {0: -0.091808, 1: -0.577301, 2: -0.000000, 3: 0.811354} + - time: 4.033333 + value: {0: -0.147133, 1: -0.641685, 2: -0.000000, 3: 0.752723} + - time: 4.066667 + value: {0: -0.199903, 1: -0.686636, 2: -0.000000, 3: 0.698978} + - time: 4.100000 + value: {0: -0.250272, 1: -0.716319, 2: -0.000000, 3: 0.651346} + - time: 4.133333 + value: {0: -0.299773, 1: -0.734422, 2: -0.000000, 3: 0.608901} + - time: 4.166667 + value: {0: -0.350386, 1: -0.743052, 2: -0.000000, 3: 0.570178} + - time: 4.200000 + value: {0: -0.404449, 1: -0.742705, 2: -0.000000, 3: 0.533676} + - time: 4.233333 + value: {0: 0.464706, 1: 0.732099, 2: -0.000000, 3: -0.498076} + - time: 4.266666 + value: {0: 0.534467, 1: 0.707553, 2: 0.000000, 3: -0.462293} + - time: 4.300000 + value: {0: 0.617548, 1: 0.661425, 2: -0.000000, 3: -0.425619} + - time: 4.333333 + value: {0: 0.715882, 1: 0.580140, 2: 0.000000, 3: -0.388523} + - time: 4.366667 + value: {0: 0.806093, 1: 0.471339, 2: 0.000000, 3: -0.357845} + - time: 4.400000 + value: {0: 0.867056, 1: 0.366647, 2: 0.000000, 3: -0.337318} + - time: 4.433333 + value: {0: 0.900751, 1: 0.288581, 2: -0.000000, 3: -0.324605} + - time: 4.466667 + value: {0: 0.914218, 1: 0.252445, 2: -0.000000, 3: -0.316982} + - time: 4.500000 + value: {0: 0.909737, 1: 0.272386, 2: -0.000000, 3: -0.313343} + - time: 4.533333 + value: {0: 0.875436, 1: 0.365654, 2: -0.000000, 3: -0.316083} + - time: 4.566667 + value: {0: 0.770451, 1: 0.541685, 2: -0.000000, 3: -0.336130} + - time: 4.600000 + value: {0: 0.547192, 1: 0.736548, 2: 0.000000, 3: -0.397590} + - time: 4.633333 + value: {0: -0.283892, 1: -0.815888, 2: -0.000000, 3: 0.503719} + - time: 4.666667 + value: {0: -0.120077, 1: -0.795425, 2: -0.000000, 3: 0.594037} + - time: 4.700000 + value: {0: -0.029604, 1: -0.755607, 2: -0.000000, 3: 0.654356} + - time: 4.733333 + value: {0: 0.029599, 1: -0.714592, 2: -0.000001, 3: 0.698915} + - time: 4.766666 + value: {0: 0.074042, 1: -0.673308, 2: -0.000000, 3: 0.735645} + - time: 4.800000 + value: {0: 0.111154, 1: -0.629585, 2: 0.000000, 3: 0.768939} + - time: 4.833333 + value: {0: 0.144783, 1: -0.580132, 2: -0.000000, 3: 0.801551} + - time: 4.866667 + value: {0: 0.176885, 1: -0.520690, 2: 0.000000, 3: 0.835221} + - time: 4.900000 + value: {0: 0.208033, 1: -0.445378, 2: -0.000000, 3: 0.870839} + - time: 4.933333 + value: {0: 0.236534, 1: -0.348090, 2: -0.000000, 3: 0.907130} + - time: 4.966667 + value: {0: 0.257451, 1: -0.237341, 2: 0.000000, 3: 0.936690} + - time: 5.000000 + value: {0: 0.269512, 1: -0.137232, 2: -0.000000, 3: 0.953169} + - time: 5.033333 + value: {0: 0.276192, 1: -0.049120, 2: -0.000000, 3: 0.959846} + - time: 5.066667 + value: {0: 0.280035, 1: 0.030952, 2: 0.000000, 3: 0.959491} + - time: 5.100000 + value: {0: 0.282430, 1: 0.108422, 2: 0.000000, 3: 0.953141} + - time: 5.133333 + value: {0: 0.283589, 1: 0.189603, 2: 0.000000, 3: 0.940015} + - time: 5.166667 + value: {0: 0.282644, 1: 0.282560, 2: 0.000000, 3: 0.916664} + - time: 5.200000 + value: {0: 0.275800, 1: 0.396331, 2: 0.000000, 3: 0.875703} + - time: 5.233333 + value: {0: 0.253617, 1: 0.535892, 2: 0.000000, 3: 0.805294} + - time: 5.266666 + value: {0: 0.206479, 1: 0.670167, 2: 0.000000, 3: 0.712911} + - time: 5.300000 + value: {0: 0.148975, 1: 0.757621, 2: 0.000000, 3: 0.635466} + - time: 5.333333 + value: {0: 0.096152, 1: 0.808563, 2: 0.000000, 3: 0.580500} + - time: 5.366667 + value: {0: 0.051004, 1: 0.838992, 2: -0.000000, 3: 0.541748} + - time: 5.400000 + value: {0: 0.013197, 1: 0.857672, 2: 0.000000, 3: 0.514028} + - time: 5.433333 + value: {0: -0.019156, 1: 0.869634, 2: 0.000000, 3: 0.493326} + - time: 5.466667 + value: {0: -0.047097, 1: 0.877303, 2: -0.000000, 3: 0.477620} + - time: 5.500000 + value: {0: -0.071870, 1: 0.882195, 2: 0.000000, 3: 0.465367} + - time: 5.533333 + value: {0: -0.094136, 1: 0.885097, 2: 0.000000, 3: 0.455787} + - time: 5.566667 + value: {0: -0.114577, 1: 0.886524, 2: -0.000000, 3: 0.448271} + - time: 5.600000 + value: {0: -0.133771, 1: 0.886760, 2: 0.000000, 3: 0.442450} + - time: 5.633333 + value: {0: -0.153996, 1: 0.886083, 2: 0.000000, 3: 0.437198} + - time: 5.666667 + value: {0: -0.176912, 1: 0.884395, 2: -0.000000, 3: 0.431912} + - time: 5.700000 + value: {0: -0.203338, 1: 0.881336, 2: -0.000000, 3: 0.426499} + - time: 5.733333 + value: {0: -0.234551, 1: 0.876275, 2: 0.000000, 3: 0.420865} + - time: 5.766666 + value: {0: -0.272242, 1: 0.868167, 2: -0.000000, 3: 0.414934} + - time: 5.800000 + value: {0: -0.319229, 1: 0.855051, 2: 0.000000, 3: 0.408633} + - time: 5.833333 + value: {0: -0.379506, 1: 0.833278, 2: 0.000000, 3: 0.402024} + - time: 5.866667 + value: {0: -0.460289, 1: 0.794823, 2: -0.000000, 3: 0.395462} + - time: 5.900000 + value: {0: -0.570719, 1: 0.722283, 2: -0.000000, 3: 0.390622} + - time: 5.933333 + value: {0: 0.719695, 1: -0.571819, 2: -0.000000, 3: -0.393780} + - time: 5.966667 + value: {0: 0.859716, 1: -0.288677, 2: 0.000000, 3: -0.421371} + - time: 6.000000 + value: {0: 0.871934, 1: 0.069525, 2: 0.000000, 3: -0.484662} + - time: 6.033333 + value: {0: -0.743842, 1: -0.352753, 2: -0.000000, 3: 0.567683} + - time: 6.066667 + value: {0: -0.579041, 1: -0.509304, 2: -0.000000, 3: 0.636648} + - time: 6.100000 + value: {0: -0.435267, 1: -0.586464, 2: -0.000000, 3: 0.683083} + - time: 6.133333 + value: {0: -0.319202, 1: -0.624905, 2: -0.000000, 3: 0.712463} + - time: 6.166667 + value: {0: -0.224360, 1: -0.643663, 2: -0.000000, 3: 0.731683} + - time: 6.200000 + value: {0: -0.151199, 1: -0.649280, 2: -0.000000, 3: 0.745369} + - time: 6.233333 + value: {0: -0.090843, 1: -0.647823, 2: 0.000000, 3: 0.756355} + - time: 6.266666 + value: {0: -0.036930, 1: -0.641847, 2: 0.000000, 3: 0.765943} + - time: 6.300000 + value: {0: 0.014920, 1: -0.631854, 2: -0.000000, 3: 0.774943} + - time: 6.333333 + value: {0: 0.068116, 1: -0.617108, 2: 0.000000, 3: 0.783925} + - time: 6.366667 + value: {0: 0.125661, 1: -0.595748, 2: 0.000000, 3: 0.793280} + - time: 6.400000 + value: {0: 0.191329, 1: -0.563883, 2: 0.000000, 3: 0.803386} + - time: 6.433333 + value: {0: 0.268105, 1: -0.514995, 2: -0.000000, 3: 0.814187} + - time: 6.466667 + value: {0: 0.352878, 1: -0.439966, 2: 0.000000, 3: 0.825777} + - time: 6.500000 + value: {0: 0.422329, 1: -0.341622, 2: 0.000000, 3: 0.839603} + - time: 6.533333 + value: {0: 0.465107, 1: -0.228752, 2: 0.000000, 3: 0.855189} + - time: 6.566667 + value: {0: 0.478259, 1: -0.113508, 2: 0.000000, 3: 0.870853} + - time: 6.600000 + value: {0: 0.465222, 1: -0.006981, 2: -0.000000, 3: 0.885166} + - time: 6.633333 + value: {0: 0.433825, 1: 0.084108, 2: -0.000000, 3: 0.897063} + - time: 6.666667 + value: {0: 0.392189, 1: 0.157761, 2: -0.000000, 3: 0.906256} + - time: 6.700000 + value: {0: 0.346793, 1: 0.215067, 2: 0.000000, 3: 0.912952} + - time: 6.733333 + value: {0: 0.302118, 1: 0.258905, 2: 0.000000, 3: 0.917438} + - time: 6.766666 + value: {0: 0.266303, 1: 0.293016, 2: 0.000000, 3: 0.918273} + - time: 6.800000 + value: {0: 0.238451, 1: 0.322676, 2: -0.000000, 3: 0.915981} + - time: 6.833333 + value: {0: 0.215413, 1: 0.351193, 2: -0.000000, 3: 0.911187} + - time: 6.866667 + value: {0: 0.194925, 1: 0.380899, 2: -0.000000, 3: 0.903837} + - time: 6.900000 + value: {0: 0.175355, 1: 0.414034, 2: -0.000000, 3: 0.893211} + - time: 6.933333 + value: {0: 0.154988, 1: 0.453399, 2: -0.000000, 3: 0.877729} + - time: 6.966667 + value: {0: 0.131465, 1: 0.502558, 2: -0.000000, 3: 0.854490} + - time: 7.000000 + value: {0: 0.100531, 1: 0.567349, 2: 0.000000, 3: 0.817318} + - time: 7.033333 + value: {0: 0.054244, 1: 0.652890, 2: -0.000000, 3: 0.755508} + - time: 7.066667 + value: {0: -0.019921, 1: 0.753891, 2: 0.000000, 3: 0.656697} + - time: 7.100000 + value: {0: -0.129027, 1: 0.838554, 2: 0.000000, 3: 0.529319} + - time: 7.133333 + value: {0: -0.249318, 1: 0.870637, 2: -0.000000, 3: 0.424067} + - time: 7.166667 + value: {0: -0.363481, 1: 0.862039, 2: -0.000000, 3: 0.353228} + - time: 7.200000 + value: {0: -0.472369, 1: 0.827286, 2: -0.000000, 3: 0.304082} + - time: 7.233333 + value: {0: -0.579917, 1: 0.769408, 2: 0.000000, 3: 0.267783} + - time: 7.266666 + value: {0: 0.687394, 1: -0.685418, 2: -0.000000, 3: -0.240191} + - time: 7.300000 + value: {0: 0.792899, 1: -0.568449, 2: 0.000000, 3: -0.219492} + - time: 7.333333 + value: {0: 0.888638, 1: -0.409992, 2: 0.000000, 3: -0.205495} + - time: 7.366667 + value: {0: 0.958117, 1: -0.205468, 2: -0.000000, 3: -0.199485} + - time: 7.400000 + value: {0: 0.978300, 1: 0.035581, 2: -0.000000, 3: -0.204117} + - time: 7.433333 + value: {0: 0.932586, 1: 0.283700, 2: -0.000000, 3: -0.223153} + - time: 7.466667 + value: {0: 0.827013, 1: 0.498136, 2: 0.000000, 3: -0.260597} + - time: 7.500000 + value: {0: 0.688183, 1: 0.651448, 2: 0.000000, 3: -0.319405} + - time: 7.533333 + value: {0: 0.544199, 1: 0.737921, 2: -0.000000, 3: -0.399149} + - time: 7.566667 + value: {0: 0.422688, 1: 0.766536, 2: -0.000000, 3: -0.483485} + - time: 7.600000 + value: {0: -0.333765, 1: -0.763548, 2: -0.000000, 3: 0.552807} + - time: 7.633333 + value: {0: -0.267528, 1: -0.748689, 2: 0.000000, 3: 0.606543} + - time: 7.666667 + value: {0: -0.215914, 1: -0.730299, 2: -0.000000, 3: 0.648109} + - time: 7.700000 + value: {0: -0.173588, 1: -0.711467, 2: 0.000000, 3: 0.680942} + - time: 7.733333 + value: {0: -0.136951, 1: -0.693055, 2: 0.000000, 3: 0.707757} + - time: 7.766666 + value: {0: -0.103623, 1: -0.675080, 2: 0.000000, 3: 0.730431} + - time: 7.800000 + value: {0: -0.071870, 1: -0.657194, 2: -0.000000, 3: 0.750287} + - time: 7.833333 + value: {0: -0.040286, 1: -0.638833, 2: -0.000000, 3: 0.768290} + - time: 7.866667 + value: {0: -0.007532, 1: -0.619189, 2: -0.000000, 3: 0.785206} + - time: 7.900000 + value: {0: 0.027756, 1: -0.597180, 2: 0.000000, 3: 0.801627} + - time: 7.933333 + value: {0: 0.067163, 1: -0.571197, 2: 0.000000, 3: 0.818061} + - time: 7.966667 + value: {0: 0.112557, 1: -0.538798, 2: 0.000000, 3: 0.834882} + - time: 8.000000 + value: {0: 0.166188, 1: -0.496049, 2: -0.000000, 3: 0.852242} + - time: 8.033334 + value: {0: 0.229275, 1: -0.437374, 2: -0.000000, 3: 0.869561} + - time: 8.066667 + value: {0: 0.290680, 1: -0.365117, 2: 0.000000, 3: 0.884418} + - time: 8.100000 + value: {0: 0.340602, 1: -0.287509, 2: 0.000000, 3: 0.895170} + - time: 8.133333 + value: {0: 0.376740, 1: -0.211463, 2: 0.000000, 3: 0.901859} + - time: 8.166667 + value: {0: 0.400053, 1: -0.141667, 2: -0.000000, 3: 0.905477} + - time: 8.200000 + value: {0: 0.413012, 1: -0.079881, 2: 0.000000, 3: 0.907215} + - time: 8.233334 + value: {0: 0.418091, 1: -0.025880, 2: -0.000000, 3: 0.908036} + - time: 8.266666 + value: {0: 0.417105, 1: 0.021360, 2: 0.000000, 3: 0.908607} + - time: 8.300000 + value: {0: 0.411254, 1: 0.063289, 2: -0.000000, 3: 0.909321} + - time: 8.333333 + value: {0: 0.401095, 1: 0.101222, 2: 0.000000, 3: 0.910427} + - time: 8.366667 + value: {0: 0.386663, 1: 0.136282, 2: -0.000000, 3: 0.912096} + - time: 8.400000 + value: {0: 0.367431, 1: 0.169456, 2: -0.000000, 3: 0.914483} + - time: 8.433333 + value: {0: 0.342666, 1: 0.201159, 2: -0.000000, 3: 0.917668} + - time: 8.466666 + value: {0: 0.311638, 1: 0.231623, 2: 0.000000, 3: 0.921538} + - time: 8.500000 + value: {0: 0.274162, 1: 0.260987, 2: 0.000000, 3: 0.925592} + - time: 8.533334 + value: {0: 0.235356, 1: 0.287923, 2: 0.000000, 3: 0.928282} + - time: 8.566667 + value: {0: 0.197126, 1: 0.311846, 2: 0.000000, 3: 0.929459} + - time: 8.600000 + value: {0: 0.160475, 1: 0.332548, 2: 0.000000, 3: 0.929333} + - time: 8.633333 + value: {0: 0.126069, 1: 0.350121, 2: -0.000000, 3: 0.928182} + - time: 8.666667 + value: {0: 0.094333, 1: 0.364806, 2: -0.000000, 3: 0.926292} + - time: 8.700000 + value: {0: 0.065492, 1: 0.376920, 2: -0.000000, 3: 0.923927} + - time: 8.733334 + value: {0: 0.039543, 1: 0.386830, 2: 0.000000, 3: 0.921303} + - time: 8.766666 + value: {0: 0.016471, 1: 0.394846, 2: -0.000000, 3: 0.918600} + - time: 8.800000 + value: {0: -0.003880, 1: 0.401273, 2: 0.000000, 3: 0.915950} + - time: 8.833333 + value: {0: -0.021791, 1: 0.406407, 2: -0.000000, 3: 0.913432} + - time: 8.866667 + value: {0: -0.037109, 1: 0.410338, 2: 0.000000, 3: 0.911178} + - time: 8.900000 + value: {0: -0.050209, 1: 0.413314, 2: -0.000000, 3: 0.909203} + - time: 8.933333 + value: {0: -0.060735, 1: 0.415296, 2: 0.000000, 3: 0.907656} + - time: 8.966666 + value: {0: -0.068655, 1: 0.416340, 2: -0.000000, 3: 0.906613} + - time: 9.000000 + value: {0: -0.073849, 1: 0.416433, 2: 0.000000, 3: 0.906162} + - time: 9.033334 + value: {0: -0.077327, 1: 0.415810, 2: 0.000000, 3: 0.906158} + - time: 9.066667 + value: {0: -0.080830, 1: 0.414869, 2: 0.000000, 3: 0.906284} + - time: 9.100000 + value: {0: -0.085059, 1: 0.413698, 2: -0.000000, 3: 0.906432} + - time: 9.133333 + value: {0: -0.090341, 1: 0.412213, 2: -0.000000, 3: 0.906597} + - time: 9.166667 + value: {0: -0.097100, 1: 0.410277, 2: -0.000000, 3: 0.906777} + - time: 9.200000 + value: {0: -0.105947, 1: 0.407676, 2: 0.000000, 3: 0.906959} + - time: 9.233334 + value: {0: -0.117601, 1: 0.404129, 2: -0.000000, 3: 0.907111} + - time: 9.266666 + value: {0: -0.132159, 1: 0.399487, 2: 0.000000, 3: 0.907162} + - time: 9.300000 + value: {0: -0.153084, 1: 0.392432, 2: -0.000000, 3: 0.906953} + - time: 9.333333 + value: {0: -0.176526, 1: 0.384058, 2: 0.000000, 3: 0.906277} + - time: 9.366667 + value: {0: -0.200668, 1: 0.374771, 2: -0.000000, 3: 0.905140} + - time: 9.400000 + value: {0: -0.229718, 1: 0.364173, 2: 0.000000, 3: 0.902556} + - time: 9.433333 + value: {0: -0.257446, 1: 0.353177, 2: 0.000000, 3: 0.899437} + - time: 9.466666 + value: {0: -0.300163, 1: 0.337164, 2: 0.000000, 3: 0.892313} + - time: 9.500000 + value: {0: -0.337679, 1: 0.320915, 2: 0.000000, 3: 0.884865} + - time: 9.533334 + value: {0: -0.383475, 1: 0.299888, 2: 0.000000, 3: 0.873507} + - time: 9.566667 + value: {0: -0.425881, 1: 0.277611, 2: 0.000000, 3: 0.861137} + - time: 9.600000 + value: {0: -0.460614, 1: 0.256804, 2: 0.000000, 3: 0.849639} + - time: 9.633333 + value: {0: -0.489161, 1: 0.238026, 2: -0.000000, 3: 0.839086} + - time: 9.666667 + value: {0: -0.513496, 1: 0.221006, 2: -0.000000, 3: 0.829143} + - time: 9.700000 + value: {0: -0.533658, 1: 0.205725, 2: 0.000000, 3: 0.820296} + - time: 9.733334 + value: {0: -0.550528, 1: 0.192027, 2: -0.000000, 3: 0.812431} + - time: 9.766666 + value: {0: -0.564984, 1: 0.179561, 2: 0.000000, 3: 0.805327} + - time: 9.800000 + value: {0: -0.577874, 1: 0.167823, 2: -0.000000, 3: 0.798685} + - time: 9.833333 + value: {0: -0.590005, 1: 0.156190, 2: -0.000000, 3: 0.792148} + - time: 9.866667 + value: {0: -0.602093, 1: 0.143980, 2: 0.000000, 3: 0.785337} + - time: 9.900000 + value: {0: -0.610949, 1: 0.134773, 2: 0.000000, 3: 0.780114} + - time: 9.933333 + value: {0: -0.620626, 1: 0.124286, 2: -0.000000, 3: 0.774194} + - time: 9.966666 + value: {0: -0.631665, 1: 0.111713, 2: -0.000000, 3: 0.767151} + - time: 10.000000 + value: {0: -0.644337, 1: 0.096386, 2: -0.000000, 3: 0.758643} + - time: 10.033334 + value: {0: -0.658772, 1: 0.077590, 2: -0.000000, 3: 0.748331} + - time: 10.066667 + value: {0: -0.671500, 1: 0.059634, 2: 0.000000, 3: 0.738601} + - time: 10.100000 + value: {0: -0.677030, 1: 0.051376, 2: 0.000000, 3: 0.734160} + - time: 10.133333 + value: {0: -0.681697, 1: 0.044161, 2: -0.000000, 3: 0.730300} + - time: 10.166667 + value: {0: -0.685686, 1: 0.037801, 2: 0.000000, 3: 0.726915} + - time: 10.200000 + value: {0: -0.689133, 1: 0.032154, 2: -0.000000, 3: 0.723921} + - time: 10.233334 + value: {0: -0.692130, 1: 0.027120, 2: -0.000000, 3: 0.721263} + - time: 10.266666 + value: {0: -0.694753, 1: 0.022617, 2: -0.000000, 3: 0.718893} + - time: 10.300000 + value: {0: -0.697056, 1: 0.018582, 2: 0.000000, 3: 0.716776} + - time: 10.333333 + value: {0: -0.698968, 1: 0.015173, 2: -0.000000, 3: 0.714992} + - time: 10.400000 + value: {0: -0.699978, 1: 0.013348, 2: 0.000000, 3: 0.714040} + - time: 10.500000 + value: {0: -0.701113, 1: 0.011280, 2: -0.000000, 3: 0.712961} + - time: 10.600000 + value: {0: -0.701898, 1: 0.009837, 2: 0.000000, 3: 0.712209} + - time: 10.733334 + value: {0: -0.702541, 1: 0.008648, 2: 0.000000, 3: 0.711591} + - time: 10.900000 + value: {0: -0.702884, 1: 0.008010, 2: 0.000000, 3: 0.711259} + - time: 14.000000 + value: {0: -0.702926, 1: 0.007933, 2: 0.000000, 3: 0.711219} + scale: + [] + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 2.animationAsset.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 2.animationAsset.meta new file mode 100644 index 00000000..32e1da60 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 2.animationAsset.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + AnimationAsset: ! 7eba6aa9-4ba6-4792-9195-8471fd86103b + ImporterName: AnimationAssetImporter + PrimaryAsset: ! 7eba6aa9-4ba6-4792-9195-8471fd86103b + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 3.animationAsset b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 3.animationAsset new file mode 100644 index 00000000..6be34fd5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 3.animationAsset @@ -0,0 +1,1062 @@ +- ! + PackagePath: "" + AnimationPropertiesLayers: + piece_0: + position: + - time: 0.000000 + value: {x: 0.000012, y: 4.089051, z: -0.064286} + - time: 0.033333 + value: {x: 0.000012, y: 4.089051, z: -0.064286} + - time: 0.066667 + value: {x: 0.000012, y: 4.104006, z: -0.064286} + - time: 0.100000 + value: {x: 0.000012, y: 4.124079, z: -0.064286} + - time: 0.133333 + value: {x: 0.000012, y: 4.148738, z: -0.064286} + - time: 0.166667 + value: {x: 0.000012, y: 4.177551, z: -0.064286} + - time: 0.200000 + value: {x: 0.000012, y: 4.210159, z: -0.064286} + - time: 0.233333 + value: {x: 0.000012, y: 4.246264, z: -0.064286} + - time: 0.266667 + value: {x: 0.000015, y: 4.285613, z: -0.064289} + - time: 0.300000 + value: {x: 0.000018, y: 4.327989, z: -0.064292} + - time: 0.333333 + value: {x: 0.000022, y: 4.373208, z: -0.064296} + - time: 0.366667 + value: {x: 0.000025, y: 4.421111, z: -0.064300} + - time: 0.400000 + value: {x: 0.000029, y: 4.471559, z: -0.064303} + - time: 0.433333 + value: {x: 0.000032, y: 4.524433, z: -0.064308} + - time: 0.466667 + value: {x: 0.000036, y: 4.579628, z: -0.064312} + - time: 0.500000 + value: {x: 0.000040, y: 4.637052, z: -0.064316} + - time: 0.533333 + value: {x: 0.000045, y: 4.696625, z: -0.064321} + - time: 0.566667 + value: {x: 0.000049, y: 4.758279, z: -0.064326} + - time: 0.600000 + value: {x: 0.000054, y: 4.821952, z: -0.064331} + - time: 0.633333 + value: {x: 0.000059, y: 4.887593, z: -0.064336} + - time: 0.666667 + value: {x: 0.000063, y: 4.955157, z: -0.064341} + - time: 0.700000 + value: {x: 0.000068, y: 5.024606, z: -0.064347} + - time: 0.733333 + value: {x: 0.000073, y: 5.095908, z: -0.064352} + - time: 0.766667 + value: {x: 0.000079, y: 5.169036, z: -0.064358} + - time: 0.800000 + value: {x: 0.000084, y: 5.243971, z: -0.064364} + - time: 0.833333 + value: {x: 0.000090, y: 5.320698, z: -0.064370} + - time: 0.866667 + value: {x: 0.000095, y: 5.399206, z: -0.064376} + - time: 0.900000 + value: {x: 0.000101, y: 5.479491, z: -0.064382} + - time: 0.933333 + value: {x: 0.000107, y: 5.561551, z: -0.064388} + - time: 0.966667 + value: {x: 0.000113, y: 5.645392, z: -0.064395} + - time: 1.000000 + value: {x: 0.000119, y: 5.731023, z: -0.064401} + - time: 1.033333 + value: {x: 0.000125, y: 5.818460, z: -0.064408} + - time: 1.066667 + value: {x: 0.000131, y: 5.907721, z: -0.064415} + - time: 1.100000 + value: {x: 0.000138, y: 5.998832, z: -0.064422} + - time: 1.133333 + value: {x: 0.000145, y: 6.091824, z: -0.064429} + - time: 1.166667 + value: {x: 0.000151, y: 6.186736, z: -0.064437} + - time: 1.200000 + value: {x: 0.000158, y: 6.283612, z: -0.064444} + - time: 1.233333 + value: {x: 0.000165, y: 6.382504, z: -0.064452} + - time: 1.266667 + value: {x: 0.000173, y: 6.483470, z: -0.064460} + - time: 1.300000 + value: {x: 0.000180, y: 6.586581, z: -0.064467} + - time: 1.333333 + value: {x: 0.000187, y: 6.691916, z: -0.064476} + - time: 1.366667 + value: {x: 0.000195, y: 6.799568, z: -0.064484} + - time: 1.400000 + value: {x: 0.000203, y: 6.909638, z: -0.064492} + - time: 1.433333 + value: {x: 0.000211, y: 7.022251, z: -0.064501} + - time: 1.466667 + value: {x: 0.000219, y: 7.137541, z: -0.064510} + - time: 1.500000 + value: {x: 0.000227, y: 7.255672, z: -0.064519} + - time: 1.533333 + value: {x: 0.000236, y: 7.376827, z: -0.064528} + - time: 1.566667 + value: {x: 0.000245, y: 7.501225, z: -0.064537} + - time: 1.600000 + value: {x: 0.000254, y: 7.629122, z: -0.064547} + - time: 1.633333 + value: {x: 0.000263, y: 7.760820, z: -0.064557} + - time: 1.666667 + value: {x: 0.000273, y: 7.896683, z: -0.064568} + - time: 1.700000 + value: {x: 0.000283, y: 8.037151, z: -0.064578} + - time: 1.733333 + value: {x: 0.000293, y: 8.182769, z: -0.064589} + - time: 1.766667 + value: {x: 0.000304, y: 8.334211, z: -0.064601} + - time: 1.800000 + value: {x: 0.000315, y: 8.492348, z: -0.064613} + - time: 1.833333 + value: {x: 0.000327, y: 8.658318, z: -0.064625} + - time: 1.866667 + value: {x: 0.000339, y: 8.833662, z: -0.064639} + - time: 1.900000 + value: {x: 0.000352, y: 9.020560, z: -0.064653} + - time: 1.933333 + value: {x: 0.005077, y: 9.222198, z: -0.066041} + - time: 1.966667 + value: {x: 0.011744, y: 9.443902, z: -0.067997} + - time: 2.000000 + value: {x: 0.019306, y: 9.695357, z: -0.070215} + - time: 2.033333 + value: {x: 0.028421, y: 9.998479, z: -0.072889} + - time: 2.066667 + value: {x: 0.038810, y: 10.343951, z: -0.075935} + - time: 2.100000 + value: {x: 0.049304, y: 10.692924, z: -0.079012} + - time: 2.133333 + value: {x: 0.059960, y: 11.047304, z: -0.082136} + - time: 2.166667 + value: {x: 0.070841, y: 11.409172, z: -0.085326} + - time: 2.200000 + value: {x: 0.082016, y: 11.780822, z: -0.088601} + - time: 2.233333 + value: {x: 0.093560, y: 12.164781, z: -0.091984} + - time: 2.266667 + value: {x: 0.105559, y: 12.563861, z: -0.095499} + - time: 2.300000 + value: {x: 0.118107, y: 12.981189, z: -0.099175} + - time: 2.333333 + value: {x: 0.131308, y: 13.420273, z: -0.103041} + - time: 2.366667 + value: {x: 0.145281, y: 13.885062, z: -0.107132} + - time: 2.400000 + value: {x: 0.176325, y: 14.378254, z: -0.116148} + - time: 2.433333 + value: {x: 0.218088, y: 14.905681, z: -0.128257} + - time: 2.466667 + value: {x: 0.263093, y: 15.474053, z: -0.141305} + - time: 2.500000 + value: {x: 0.311877, y: 16.090151, z: -0.155448} + - time: 2.533333 + value: {x: 0.365066, y: 16.761902, z: -0.170867} + - time: 2.566667 + value: {x: 0.423403, y: 17.498674, z: -0.187777} + - time: 2.600000 + value: {x: 0.487776, y: 18.311678, z: -0.206434} + - time: 2.633333 + value: {x: 0.563003, y: 19.213974, z: -0.228219} + - time: 2.666667 + value: {x: 0.660906, y: 20.220844, z: -0.256516} + - time: 2.700000 + value: {x: 0.771177, y: 21.354921, z: -0.288387} + - time: 2.733333 + value: {x: 0.896427, y: 22.643049, z: -0.324586} + - time: 2.766667 + value: {x: 1.041856, y: 24.122364, z: -0.366614} + - time: 2.800000 + value: {x: 1.226170, y: 25.855215, z: -0.419857} + - time: 2.833333 + value: {x: 1.443366, y: 27.897213, z: -0.482597} + - time: 2.866667 + value: {x: 1.712719, y: 30.330112, z: -0.560791} + - time: 2.900000 + value: {x: 2.053581, y: 33.320301, z: -0.660085} + - time: 2.933333 + value: {x: 2.543628, y: 37.218109, z: -0.807089} + - time: 2.966667 + value: {x: 3.318649, y: 42.715958, z: -1.047687} + - time: 3.000000 + value: {x: 4.474258, y: 49.535770, z: -1.424428} + - time: 3.033333 + value: {x: 5.917471, y: 56.393810, z: -1.917611} + - time: 3.066667 + value: {x: 7.688623, y: 63.270065, z: -2.544474} + - time: 3.100000 + value: {x: 9.968611, y: 70.082993, z: -3.380549} + - time: 3.133333 + value: {x: 12.792662, y: 76.766335, z: -4.441184} + - time: 3.166667 + value: {x: 16.465059, y: 83.057220, z: -5.854988} + - time: 3.200000 + value: {x: 21.010427, y: 88.748222, z: -7.661360} + - time: 3.233333 + value: {x: 26.448639, y: 93.477921, z: -10.056418} + - time: 3.266667 + value: {x: 32.405819, y: 97.308090, z: -13.053039} + - time: 3.300000 + value: {x: 38.611820, y: 100.031891, z: -16.869007} + - time: 3.333333 + value: {x: 44.737331, y: 101.898407, z: -21.432995} + - time: 3.366667 + value: {x: 50.472141, y: 102.902634, z: -26.838575} + - time: 3.400000 + value: {x: 55.588619, y: 103.229469, z: -32.997986} + - time: 3.433333 + value: {x: 59.976452, y: 103.025810, z: -39.809147} + - time: 3.466667 + value: {x: 63.544468, y: 102.366798, z: -47.149933} + - time: 3.500000 + value: {x: 66.450592, y: 101.387207, z: -54.821808} + - time: 3.533333 + value: {x: 68.701225, y: 100.129501, z: -62.738865} + - time: 3.566667 + value: {x: 70.260536, y: 98.619400, z: -70.851280} + - time: 3.600000 + value: {x: 71.157837, y: 96.915169, z: -79.094452} + - time: 3.633333 + value: {x: 71.355484, y: 95.065750, z: -87.414841} + - time: 3.666667 + value: {x: 70.748711, y: 93.087830, z: -95.742302} + - time: 3.700000 + value: {x: 69.314720, y: 90.988159, z: -104.001015} + - time: 3.733333 + value: {x: 66.969536, y: 88.774330, z: -112.077110} + - time: 3.766667 + value: {x: 63.692688, y: 86.468056, z: -119.861565} + - time: 3.800000 + value: {x: 59.453598, y: 84.095512, z: -127.212334} + - time: 3.833333 + value: {x: 54.342731, y: 81.687981, z: -134.040817} + - time: 3.866667 + value: {x: 48.383121, y: 79.273323, z: -140.214523} + - time: 3.900000 + value: {x: 41.598412, y: 76.885063, z: -145.565292} + - time: 3.933333 + value: {x: 34.007324, y: 74.572510, z: -149.832550} + - time: 3.966667 + value: {x: 25.697515, y: 72.405045, z: -152.674393} + - time: 4.000000 + value: {x: 16.908716, y: 70.416862, z: -153.898575} + - time: 4.033333 + value: {x: 7.964176, y: 68.619987, z: -153.421219} + - time: 4.066667 + value: {x: -0.824107, y: 66.997093, z: -151.304184} + - time: 4.100000 + value: {x: -9.195930, y: 65.511192, z: -147.709244} + - time: 4.133333 + value: {x: -16.967457, y: 64.114243, z: -142.827744} + - time: 4.166667 + value: {x: -24.008486, y: 62.759727, z: -136.864426} + - time: 4.200000 + value: {x: -30.331629, y: 61.412704, z: -130.097610} + - time: 4.233333 + value: {x: -35.962708, y: 60.040394, z: -122.698639} + - time: 4.266666 + value: {x: -40.903255, y: 58.608139, z: -114.788147} + - time: 4.300000 + value: {x: -45.123024, y: 57.075111, z: -106.450745} + - time: 4.333333 + value: {x: -48.542747, y: 55.389164, z: -97.754204} + - time: 4.366667 + value: {x: -51.012444, y: 53.478882, z: -88.754051} + - time: 4.400000 + value: {x: -52.300652, y: 51.290081, z: -79.540955} + - time: 4.433333 + value: {x: -52.119469, y: 48.804546, z: -70.295578} + - time: 4.466667 + value: {x: -50.142529, y: 46.027283, z: -61.325401} + - time: 4.500000 + value: {x: -46.120041, y: 43.023106, z: -53.121464} + - time: 4.533333 + value: {x: -40.135132, y: 39.946125, z: -46.223793} + - time: 4.566667 + value: {x: -32.652683, y: 37.038231, z: -40.853451} + - time: 4.600000 + value: {x: -24.198242, y: 34.483234, z: -36.853657} + - time: 4.633333 + value: {x: -15.162588, y: 32.367413, z: -33.980694} + - time: 4.666667 + value: {x: -5.761771, y: 30.712507, z: -31.998499} + - time: 4.700000 + value: {x: 3.849427, y: 29.523478, z: -30.729267} + - time: 4.733333 + value: {x: 13.575757, y: 28.780012, z: -30.034037} + - time: 4.766666 + value: {x: 23.361984, y: 28.449009, z: -29.813143} + - time: 4.800000 + value: {x: 33.168854, y: 28.515778, z: -30.003477} + - time: 4.833333 + value: {x: 42.965736, y: 28.983528, z: -30.566597} + - time: 4.866667 + value: {x: 52.720173, y: 29.871473, z: -31.481611} + - time: 4.900000 + value: {x: 62.393959, y: 31.215239, z: -32.741505} + - time: 4.933333 + value: {x: 71.937737, y: 33.066608, z: -34.351791} + - time: 4.966667 + value: {x: 81.297203, y: 35.453747, z: -36.333462} + - time: 5.000000 + value: {x: 90.419357, y: 38.359844, z: -38.721920} + - time: 5.033333 + value: {x: 99.241035, y: 41.761963, z: -41.562218} + - time: 5.066667 + value: {x: 107.684044, y: 45.634617, z: -44.911400} + - time: 5.100000 + value: {x: 115.645874, y: 49.946552, z: -48.841824} + - time: 5.133333 + value: {x: 122.999199, y: 54.664192, z: -53.454891} + - time: 5.166667 + value: {x: 129.501022, y: 59.723034, z: -58.883492} + - time: 5.200000 + value: {x: 134.777084, y: 65.022942, z: -65.300652} + - time: 5.233333 + value: {x: 138.401474, y: 70.348778, z: -72.744324} + - time: 5.266666 + value: {x: 140.113831, y: 75.406731, z: -81.004395} + - time: 5.300000 + value: {x: 139.981491, y: 79.988708, z: -89.738388} + - time: 5.333333 + value: {x: 138.323532, y: 84.015915, z: -98.602234} + - time: 5.366667 + value: {x: 135.546112, y: 87.551842, z: -107.385979} + - time: 5.400000 + value: {x: 131.907074, y: 90.674828, z: -115.998482} + - time: 5.433333 + value: {x: 127.541519, y: 93.435806, z: -124.386093} + - time: 5.466667 + value: {x: 122.515732, y: 95.859329, z: -132.496490} + - time: 5.500000 + value: {x: 116.855949, y: 97.946953, z: -140.260635} + - time: 5.533333 + value: {x: 110.558197, y: 99.679672, z: -147.584442} + - time: 5.566667 + value: {x: 103.612595, y: 101.023125, z: -154.356003} + - time: 5.600000 + value: {x: 96.075111, y: 101.962593, z: -160.514572} + - time: 5.633333 + value: {x: 88.023064, y: 102.487648, z: -166.006195} + - time: 5.666667 + value: {x: 79.538437, y: 102.592552, z: -170.786652} + - time: 5.700000 + value: {x: 70.704155, y: 102.274467, z: -174.819290} + - time: 5.733333 + value: {x: 61.603752, y: 101.531517, z: -178.070694} + - time: 5.766666 + value: {x: 52.323391, y: 100.361221, z: -180.506851} + - time: 5.800000 + value: {x: 42.949280, y: 98.751091, z: -182.089493} + - time: 5.833333 + value: {x: 33.586987, y: 96.675842, z: -182.769608} + - time: 5.866667 + value: {x: 24.361071, y: 94.106407, z: -182.490265} + - time: 5.900000 + value: {x: 15.424416, y: 91.015297, z: -181.190582} + - time: 5.933333 + value: {x: 6.964213, y: 87.383667, z: -178.815338} + - time: 5.966667 + value: {x: -0.799541, y: 83.212456, z: -175.334763} + - time: 6.000000 + value: {x: -7.652493, y: 78.532257, z: -170.834381} + - time: 6.033333 + value: {x: -13.475179, y: 73.362755, z: -165.554367} + - time: 6.066667 + value: {x: -18.213093, y: 67.726677, z: -159.769135} + - time: 6.100000 + value: {x: -21.876713, y: 61.646873, z: -153.727631} + - time: 6.133333 + value: {x: -24.470098, y: 55.140121, z: -147.643631} + - time: 6.166667 + value: {x: -26.007505, y: 48.236115, z: -141.711151} + - time: 6.200000 + value: {x: -26.556374, y: 41.055382, z: -136.015106} + - time: 6.233333 + value: {x: -26.260592, y: 33.833786, z: -130.431656} + - time: 6.266666 + value: {x: -25.226288, y: 26.798321, z: -124.786278} + - time: 6.300000 + value: {x: -23.549072, y: 20.179167, z: -118.895676} + - time: 6.333333 + value: {x: -21.318146, y: 14.226229, z: -112.598579} + - time: 6.366667 + value: {x: -18.613615, y: 9.260552, z: -105.758522} + - time: 6.400000 + value: {x: -15.558074, y: 5.622147, z: -98.336571} + - time: 6.433333 + value: {x: -12.323532, y: 3.389633, z: -90.511765} + - time: 6.466667 + value: {x: -9.075833, y: 2.224191, z: -82.535431} + - time: 6.500000 + value: {x: -5.915982, y: 1.840284, z: -74.520287} + - time: 6.533333 + value: {x: -2.943851, y: 2.018458, z: -66.561676} + - time: 6.566667 + value: {x: -0.436833, y: 2.537893, z: -59.096859} + - time: 6.600000 + value: {x: 1.561101, y: 3.111038, z: -52.103775} + - time: 6.633333 + value: {x: 2.856448, y: 3.622274, z: -45.508957} + - time: 6.666667 + value: {x: 3.492330, y: 4.139158, z: -39.315647} + - time: 6.700000 + value: {x: 3.509354, y: 4.788281, z: -33.555916} + - time: 6.733333 + value: {x: 3.114469, y: 5.718385, z: -28.265196} + - time: 6.766666 + value: {x: 2.645032, y: 6.995295, z: -23.458534} + - time: 6.800000 + value: {x: 2.256499, y: 8.519595, z: -19.111933} + - time: 6.833333 + value: {x: 1.931365, y: 10.169502, z: -15.199798} + - time: 6.866667 + value: {x: 1.648064, y: 11.873976, z: -11.705459} + - time: 6.900000 + value: {x: 1.393000, y: 13.582806, z: -8.619253} + - time: 6.933333 + value: {x: 1.156651, y: 15.308303, z: -5.967256} + - time: 6.966667 + value: {x: 0.916063, y: 17.152588, z: -3.896782} + - time: 7.000000 + value: {x: 0.694924, y: 18.877766, z: -2.214656} + - time: 7.033333 + value: {x: 0.520210, y: 20.664938, z: -1.384071} + - time: 7.066667 + value: {x: 0.384314, y: 22.210175, z: -0.922020} + - time: 7.100000 + value: {x: 0.284829, y: 23.340134, z: -0.583503} + - time: 7.133333 + value: {x: 0.217835, y: 24.246994, z: -0.372072} + - time: 7.166667 + value: {x: 0.186284, y: 25.155918, z: -0.327460} + - time: 7.200000 + value: {x: 0.156074, y: 26.025686, z: -0.284737} + - time: 7.233333 + value: {x: 0.127193, y: 26.856701, z: -0.243884} + - time: 7.266666 + value: {x: 0.099639, y: 27.649036, z: -0.204898} + - time: 7.300000 + value: {x: 0.073409, y: 28.402866, z: -0.167773} + - time: 7.333333 + value: {x: 0.051938, y: 29.118870, z: -0.137375} + - time: 7.366667 + value: {x: 0.045101, y: 29.798626, z: -0.127704} + - time: 7.400000 + value: {x: 0.038650, y: 30.439987, z: -0.118579} + - time: 7.433333 + value: {x: 0.032585, y: 31.042879, z: -0.110000} + - time: 7.466667 + value: {x: 0.026906, y: 31.607296, z: -0.101968} + - time: 7.500000 + value: {x: 0.021615, y: 32.133095, z: -0.094485} + - time: 7.533333 + value: {x: 0.016713, y: 32.620190, z: -0.087552} + - time: 7.566667 + value: {x: 0.012202, y: 33.068356, z: -0.081173} + - time: 7.600000 + value: {x: 0.008084, y: 33.477516, z: -0.075349} + - time: 7.633333 + value: {x: 0.004362, y: 33.847218, z: -0.070085} + - time: 7.666667 + value: {x: 0.002979, y: 34.176777, z: -0.068144} + - time: 7.700000 + value: {x: 0.002798, y: 34.466072, z: -0.067907} + - time: 7.733333 + value: {x: 0.002642, y: 34.715080, z: -0.067704} + - time: 7.766666 + value: {x: 0.002512, y: 34.923199, z: -0.067534} + - time: 7.800000 + value: {x: 0.002396, y: 35.108284, z: -0.067383} + - time: 7.833333 + value: {x: 0.002284, y: 35.288658, z: -0.067236} + - time: 7.866667 + value: {x: 0.002174, y: 35.464550, z: -0.067092} + - time: 7.900000 + value: {x: 0.002066, y: 35.636181, z: -0.066952} + - time: 7.933333 + value: {x: 0.001961, y: 35.803478, z: -0.066815} + - time: 7.966667 + value: {x: 0.001859, y: 35.966751, z: -0.066682} + - time: 8.000000 + value: {x: 0.001760, y: 36.125614, z: -0.066552} + - time: 8.033334 + value: {x: 0.001663, y: 36.280376, z: -0.066425} + - time: 8.066667 + value: {x: 0.001569, y: 36.430645, z: -0.066303} + - time: 8.100000 + value: {x: 0.001478, y: 36.576508, z: -0.066183} + - time: 8.133333 + value: {x: 0.001389, y: 36.717663, z: -0.066068} + - time: 8.166667 + value: {x: 0.001304, y: 36.854103, z: -0.065957} + - time: 8.200000 + value: {x: 0.001222, y: 36.985371, z: -0.065849} + - time: 8.233334 + value: {x: 0.001143, y: 37.111549, z: -0.065746} + - time: 8.266666 + value: {x: 0.001067, y: 37.232101, z: -0.065648} + - time: 8.300000 + value: {x: 0.000995, y: 37.346878, z: -0.065554} + - time: 8.333333 + value: {x: 0.000928, y: 37.455421, z: -0.065465} + - time: 8.366667 + value: {x: 0.000864, y: 37.557430, z: -0.065382} + - time: 8.400000 + value: {x: 0.000804, y: 37.628780, z: -0.065304} + - time: 8.433333 + value: {x: 0.000750, y: 37.685989, z: -0.065233} + - time: 8.466666 + value: {x: 0.000700, y: 37.728191, z: -0.065168} + - time: 8.500000 + value: {x: 0.000656, y: 37.754261, z: -0.065111} + - time: 8.533334 + value: {x: 0.000618, y: 37.762760, z: -0.065062} + - time: 8.566667 + value: {x: 0.000587, y: 37.752430, z: -0.065021} + - time: 8.600000 + value: {x: 0.000564, y: 37.721703, z: -0.064991} + - time: 8.633333 + value: {x: 0.000549, y: 37.668350, z: -0.064971} + - time: 8.666667 + value: {x: 0.000544, y: 37.590183, z: -0.064964} + - time: 8.700000 + value: {x: 0.000544, y: 37.493500, z: -0.064964} + - time: 8.733334 + value: {x: 0.000544, y: 37.386219, z: -0.064964} + - time: 8.766666 + value: {x: 0.000544, y: 37.267708, z: -0.064964} + - time: 8.800000 + value: {x: 0.000544, y: 37.137276, z: -0.064964} + - time: 8.833333 + value: {x: 0.000544, y: 36.994190, z: -0.064964} + - time: 8.866667 + value: {x: 0.000544, y: 36.837654, z: -0.064964} + - time: 8.900000 + value: {x: 0.000544, y: 36.666824, z: -0.064964} + - time: 8.933333 + value: {x: 0.000544, y: 36.480766, z: -0.064964} + - time: 8.966666 + value: {x: 0.000544, y: 36.278519, z: -0.064964} + - time: 9.000000 + value: {x: 0.000544, y: 36.059025, z: -0.064964} + - time: 9.033334 + value: {x: 0.000544, y: 35.821175, z: -0.064964} + - time: 9.066667 + value: {x: 0.000544, y: 35.563805, z: -0.064964} + - time: 9.100000 + value: {x: 0.000544, y: 35.285667, z: -0.064964} + - time: 9.133333 + value: {x: 0.000544, y: 34.985497, z: -0.064964} + - time: 9.166667 + value: {x: 0.000544, y: 34.661964, z: -0.064964} + - time: 9.200000 + value: {x: 0.000544, y: 34.313774, z: -0.064964} + - time: 9.233334 + value: {x: 0.000544, y: 33.939598, z: -0.064964} + - time: 9.266666 + value: {x: 0.000544, y: 33.538239, z: -0.064964} + - time: 9.300000 + value: {x: 0.000544, y: 33.108547, z: -0.064964} + - time: 9.333333 + value: {x: 0.000544, y: 32.649643, z: -0.064964} + - time: 9.366667 + value: {x: 0.000544, y: 32.160839, z: -0.064964} + - time: 9.400000 + value: {x: 0.000544, y: 31.641882, z: -0.064964} + - time: 9.433333 + value: {x: 0.000544, y: 31.092916, z: -0.064964} + - time: 9.466666 + value: {x: 0.000544, y: 30.514690, z: -0.064964} + - time: 9.500000 + value: {x: 0.000544, y: 29.908516, z: -0.064964} + - time: 9.533334 + value: {x: 0.000544, y: 29.276407, z: -0.064964} + - time: 9.566667 + value: {x: 0.000544, y: 28.621044, z: -0.064964} + - time: 9.600000 + value: {x: 0.000544, y: 27.945633, z: -0.064964} + - time: 9.633333 + value: {x: 0.000544, y: 27.253939, z: -0.064964} + - time: 9.666667 + value: {x: 0.000544, y: 26.549974, z: -0.064964} + - time: 9.700000 + value: {x: 0.000544, y: 25.837944, z: -0.064964} + - time: 9.766666 + value: {x: 0.000544, y: 24.405857, z: -0.064964} + - time: 9.800000 + value: {x: 0.000544, y: 23.693211, z: -0.064964} + - time: 9.833333 + value: {x: 0.000544, y: 22.987106, z: -0.064964} + - time: 9.866667 + value: {x: 0.000544, y: 22.290085, z: -0.064964} + - time: 9.900000 + value: {x: 0.000544, y: 21.604277, z: -0.064964} + - time: 9.933333 + value: {x: 0.000544, y: 20.931261, z: -0.064964} + - time: 9.966666 + value: {x: 0.000544, y: 20.272276, z: -0.064964} + - time: 10.000000 + value: {x: 0.000544, y: 19.628105, z: -0.064964} + - time: 10.033334 + value: {x: 0.000544, y: 18.999287, z: -0.064964} + - time: 10.066667 + value: {x: 0.000544, y: 18.386103, z: -0.064964} + - time: 10.100000 + value: {x: 0.000544, y: 17.788574, z: -0.064964} + - time: 10.133333 + value: {x: 0.000544, y: 17.206638, z: -0.064964} + - time: 10.166667 + value: {x: 0.000544, y: 16.640039, z: -0.064964} + - time: 10.200000 + value: {x: 0.000544, y: 16.088503, z: -0.064964} + - time: 10.233334 + value: {x: 0.000544, y: 15.551620, z: -0.064964} + - time: 10.266666 + value: {x: 0.000544, y: 15.029004, z: -0.064964} + - time: 10.300000 + value: {x: 0.000544, y: 14.520180, z: -0.064964} + - time: 10.333333 + value: {x: 0.000544, y: 14.024714, z: -0.064964} + - time: 10.366667 + value: {x: 0.000544, y: 13.542109, z: -0.064964} + - time: 10.400000 + value: {x: 0.000544, y: 13.071931, z: -0.064964} + - time: 10.433333 + value: {x: 0.000544, y: 12.613684, z: -0.064964} + - time: 10.466666 + value: {x: 0.000544, y: 12.166949, z: -0.064964} + - time: 10.500000 + value: {x: 0.000544, y: 11.731261, z: -0.064964} + - time: 10.533334 + value: {x: 0.000544, y: 11.306211, z: -0.064964} + - time: 10.566667 + value: {x: 0.000544, y: 10.891401, z: -0.064964} + - time: 10.600000 + value: {x: 0.000544, y: 10.486418, z: -0.064964} + - time: 10.633333 + value: {x: 0.000544, y: 10.090907, z: -0.064964} + - time: 10.666667 + value: {x: 0.000544, y: 9.704492, z: -0.064964} + - time: 10.700000 + value: {x: 0.000544, y: 9.327706, z: -0.064964} + - time: 10.733334 + value: {x: 0.000544, y: 8.961796, z: -0.064964} + - time: 10.766666 + value: {x: 0.000544, y: 8.607550, z: -0.064964} + - time: 10.800000 + value: {x: 0.000544, y: 8.265702, z: -0.064964} + - time: 10.833333 + value: {x: 0.000544, y: 7.937001, z: -0.064964} + - time: 10.866667 + value: {x: 0.000544, y: 7.622099, z: -0.064964} + - time: 10.900000 + value: {x: 0.000544, y: 7.321625, z: -0.064964} + - time: 10.933333 + value: {x: 0.000544, y: 7.036086, z: -0.064964} + - time: 10.966666 + value: {x: 0.000544, y: 6.765916, z: -0.064964} + - time: 11.000000 + value: {x: 0.000544, y: 6.511403, z: -0.064964} + - time: 11.033334 + value: {x: 0.000544, y: 6.272728, z: -0.064964} + - time: 11.066667 + value: {x: 0.000544, y: 6.049938, z: -0.064964} + - time: 11.100000 + value: {x: 0.000544, y: 5.842915, z: -0.064964} + - time: 11.133333 + value: {x: 0.000544, y: 5.651447, z: -0.064964} + - time: 11.166667 + value: {x: 0.000544, y: 5.475156, z: -0.064964} + - time: 11.200000 + value: {x: 0.000544, y: 5.313587, z: -0.064964} + - time: 11.233334 + value: {x: 0.000544, y: 5.166155, z: -0.064964} + - time: 11.266666 + value: {x: 0.000544, y: 5.032223, z: -0.064964} + - time: 11.300000 + value: {x: 0.000544, y: 4.911067, z: -0.064964} + - time: 11.333333 + value: {x: 0.000544, y: 4.801945, z: -0.064964} + - time: 11.366667 + value: {x: 0.000544, y: 4.704070, z: -0.064964} + - time: 11.400000 + value: {x: 0.000544, y: 4.616657, z: -0.064964} + - time: 11.433333 + value: {x: 0.000544, y: 4.538924, z: -0.064964} + - time: 11.466666 + value: {x: 0.000544, y: 4.470100, z: -0.064964} + - time: 11.500000 + value: {x: 0.000544, y: 4.409442, z: -0.064964} + - time: 11.533334 + value: {x: 0.000544, y: 4.356238, z: -0.064964} + - time: 11.566667 + value: {x: 0.000544, y: 4.309821, z: -0.064964} + - time: 11.600000 + value: {x: 0.000544, y: 4.269545, z: -0.064964} + - time: 11.633333 + value: {x: 0.000544, y: 4.234824, z: -0.064964} + - time: 11.666667 + value: {x: 0.000544, y: 4.205100, z: -0.064964} + - time: 11.700000 + value: {x: 0.000544, y: 4.179866, z: -0.064964} + - time: 11.733334 + value: {x: 0.000544, y: 4.158648, z: -0.064964} + - time: 11.766666 + value: {x: 0.000544, y: 4.141017, z: -0.064964} + - time: 11.800000 + value: {x: 0.000544, y: 4.126571, z: -0.064964} + - time: 11.833333 + value: {x: 0.000544, y: 4.114947, z: -0.064964} + - time: 11.866667 + value: {x: 0.000544, y: 4.105819, z: -0.064964} + - time: 11.900000 + value: {x: 0.000544, y: 4.098880, z: -0.064964} + - time: 11.933333 + value: {x: 0.000544, y: 4.093860, z: -0.064964} + - time: 11.966666 + value: {x: 0.000544, y: 4.090510, z: -0.064964} + - time: 12.000000 + value: {x: 0.000544, y: 4.088603, z: -0.064964} + rotation: + - time: 0.000000 + value: {0: -0.707113, 1: 0.000037, 2: -0.000000, 3: 0.707101} + - time: 0.300000 + value: {0: -0.707186, 1: 0.000544, 2: 0.000000, 3: 0.707028} + - time: 0.766667 + value: {0: -0.707440, 1: 0.002330, 2: 0.000000, 3: 0.706770} + - time: 1.266667 + value: {0: -0.707827, 1: 0.005123, 2: -0.000000, 3: 0.706367} + - time: 1.666667 + value: {0: -0.708231, 1: 0.008129, 2: 0.000000, 3: 0.705934} + - time: 1.900000 + value: {0: -0.708543, 1: 0.010522, 2: 0.000000, 3: 0.705589} + - time: 1.933333 + value: {0: -0.708668, 1: 0.011499, 2: 0.000000, 3: 0.705448} + - time: 2.000000 + value: {0: -0.709001, 1: 0.014161, 2: -0.000000, 3: 0.705065} + - time: 2.033333 + value: {0: -0.709209, 1: 0.015867, 2: -0.000000, 3: 0.704820} + - time: 2.200000 + value: {0: -0.710347, 1: 0.025924, 2: -0.000000, 3: 0.703374} + - time: 2.300000 + value: {0: -0.711030, 1: 0.032717, 2: 0.000000, 3: 0.702400} + - time: 2.433333 + value: {0: -0.711929, 1: 0.042923, 2: 0.000000, 3: 0.700938} + - time: 2.500000 + value: {0: -0.712368, 1: 0.048672, 2: -0.000000, 3: 0.700116} + - time: 2.533333 + value: {0: -0.712596, 1: 0.051937, 2: -0.000000, 3: 0.699650} + - time: 2.566667 + value: {0: -0.712827, 1: 0.055522, 2: -0.000000, 3: 0.699138} + - time: 2.633333 + value: {0: -0.713264, 1: 0.063273, 2: 0.000000, 3: 0.698033} + - time: 2.666667 + value: {0: -0.713362, 1: 0.065260, 2: -0.000000, 3: 0.697750} + - time: 2.700000 + value: {0: -0.713466, 1: 0.067500, 2: -0.000000, 3: 0.697431} + - time: 2.733333 + value: {0: -0.713574, 1: 0.070046, 2: -0.000000, 3: 0.697069} + - time: 2.766667 + value: {0: -0.713684, 1: 0.072837, 2: 0.000000, 3: 0.696671} + - time: 2.800000 + value: {0: -0.713773, 1: 0.074921, 2: 0.000000, 3: 0.696358} + - time: 2.833333 + value: {0: -0.713870, 1: 0.077379, 2: 0.000000, 3: 0.695990} + - time: 2.866667 + value: {0: -0.714048, 1: 0.080787, 2: 0.000000, 3: 0.695420} + - time: 2.900000 + value: {0: -0.714309, 1: 0.085426, 2: 0.000000, 3: 0.694597} + - time: 2.933333 + value: {0: -0.714824, 1: 0.094165, 2: -0.000000, 3: 0.692935} + - time: 2.966667 + value: {0: -0.715536, 1: 0.109811, 2: -0.000000, 3: 0.689891} + - time: 3.000000 + value: {0: -0.715983, 1: 0.134883, 2: 0.000000, 3: 0.684963} + - time: 3.033333 + value: {0: -0.715210, 1: 0.167319, 2: -0.000000, 3: 0.678586} + - time: 3.066667 + value: {0: -0.711986, 1: 0.208418, 2: 0.000000, 3: 0.670551} + - time: 3.100000 + value: {0: -0.703486, 1: 0.264323, 2: -0.000000, 3: 0.659728} + - time: 3.133333 + value: {0: -0.684759, 1: 0.337904, 2: -0.000000, 3: 0.645698} + - time: 3.166667 + value: {0: -0.644076, 1: 0.439155, 2: -0.000000, 3: 0.626346} + - time: 3.200000 + value: {0: -0.576643, 1: 0.552982, 2: -0.000000, 3: 0.601409} + - time: 3.233333 + value: {0: -0.493431, 1: 0.658151, 2: -0.000000, 3: 0.568651} + - time: 3.266667 + value: {0: -0.399943, 1: 0.748171, 2: -0.000000, 3: 0.529421} + - time: 3.300000 + value: {0: -0.306215, 1: 0.820781, 2: 0.000000, 3: 0.482236} + - time: 3.333333 + value: {0: -0.209557, 1: 0.878574, 2: -0.000000, 3: 0.429177} + - time: 3.366667 + value: {0: -0.112425, 1: 0.921912, 2: 0.000000, 3: 0.370727} + - time: 3.400000 + value: {0: -0.009617, 1: 0.950677, 2: -0.000000, 3: 0.310034} + - time: 3.433333 + value: {0: 0.106140, 1: 0.961609, 2: -0.000000, 3: 0.253068} + - time: 3.466667 + value: {0: 0.236786, 1: 0.949158, 2: 0.000000, 3: 0.207441} + - time: 3.500000 + value: {0: 0.391639, 1: 0.904165, 2: 0.000000, 3: 0.170602} + - time: 3.533333 + value: {0: 0.573940, 1: 0.806592, 2: 0.000000, 3: 0.141426} + - time: 3.566667 + value: {0: 0.774488, 1: 0.621062, 2: 0.000000, 3: 0.120209} + - time: 3.600000 + value: {0: 0.943426, 1: 0.312960, 2: -0.000000, 3: 0.109562} + - time: 3.633333 + value: {0: 0.990782, 1: -0.074271, 2: 0.000000, 3: 0.113292} + - time: 3.666667 + value: {0: 0.899197, 1: -0.416755, 2: 0.000000, 3: 0.133268} + - time: 3.700000 + value: {0: 0.748824, 1: -0.641043, 2: 0.000000, 3: 0.168306} + - time: 3.733333 + value: {0: -0.614017, 1: 0.760044, 2: -0.000000, 3: -0.212876} + - time: 3.766667 + value: {0: -0.512406, 1: 0.817997, 2: -0.000000, 3: -0.261382} + - time: 3.800000 + value: {0: -0.435021, 1: 0.844621, 2: 0.000000, 3: -0.312046} + - time: 3.833333 + value: {0: -0.373053, 1: 0.853100, 2: 0.000000, 3: -0.364762} + - time: 3.866667 + value: {0: -0.320504, 1: 0.848860, 2: -0.000000, 3: -0.420375} + - time: 3.900000 + value: {0: -0.273167, 1: 0.833372, 2: 0.000000, 3: -0.480490} + - time: 3.933333 + value: {0: 0.227772, 1: -0.805166, 2: 0.000000, 3: 0.547565} + - time: 3.966667 + value: {0: 0.185379, 1: -0.762018, 2: 0.000000, 3: 0.620454} + - time: 4.000000 + value: {0: 0.150359, 1: -0.706442, 2: 0.000000, 3: 0.691616} + - time: 4.033333 + value: {0: 0.123362, 1: -0.643111, 2: 0.000000, 3: 0.755771} + - time: 4.066667 + value: {0: 0.103837, 1: -0.576845, 2: 0.000000, 3: 0.810227} + - time: 4.100000 + value: {0: 0.090716, 1: -0.511192, 2: -0.000000, 3: 0.854666} + - time: 4.133333 + value: {0: 0.082775, 1: -0.448075, 2: 0.000000, 3: 0.890156} + - time: 4.166667 + value: {0: 0.078639, 1: -0.390769, 2: 0.000000, 3: 0.917123} + - time: 4.200000 + value: {0: 0.077120, 1: -0.340691, 2: -0.000000, 3: 0.937007} + - time: 4.233333 + value: {0: 0.077901, 1: -0.295319, 2: 0.000000, 3: 0.952218} + - time: 4.266666 + value: {0: 0.080973, 1: -0.251942, 2: -0.000000, 3: 0.964349} + - time: 4.300000 + value: {0: 0.086649, 1: -0.207720, 2: -0.000000, 3: 0.974343} + - time: 4.333333 + value: {0: 0.095671, 1: -0.159074, 2: 0.000000, 3: 0.982620} + - time: 4.366667 + value: {0: 0.108380, 1: -0.101421, 2: 0.000000, 3: 0.988922} + - time: 4.400000 + value: {0: 0.123092, 1: -0.031252, 2: -0.000000, 3: 0.991903} + - time: 4.433333 + value: {0: 0.138982, 1: 0.054596, 2: -0.000000, 3: 0.988789} + - time: 4.466667 + value: {0: 0.154867, 1: 0.157954, 2: 0.000000, 3: 0.975226} + - time: 4.500000 + value: {0: 0.168126, 1: 0.274578, 2: 0.000000, 3: 0.946753} + - time: 4.533333 + value: {0: 0.173312, 1: 0.388503, 2: -0.000000, 3: 0.905002} + - time: 4.566667 + value: {0: 0.165123, 1: 0.480714, 2: 0.000000, 3: 0.861190} + - time: 4.600000 + value: {0: 0.147007, 1: 0.549685, 2: -0.000000, 3: 0.822336} + - time: 4.633333 + value: {0: 0.123069, 1: 0.600648, 2: -0.000000, 3: 0.789985} + - time: 4.666667 + value: {0: 0.095730, 1: 0.638774, 2: -0.000000, 3: 0.763415} + - time: 4.700000 + value: {0: 0.066661, 1: 0.667574, 2: 0.000000, 3: 0.741553} + - time: 4.733333 + value: {0: 0.037997, 1: 0.689421, 2: -0.000000, 3: 0.723363} + - time: 4.766666 + value: {0: 0.009726, 1: 0.706487, 2: -0.000000, 3: 0.707660} + - time: 4.800000 + value: {0: -0.019287, 1: 0.720209, 2: 0.000000, 3: 0.693489} + - time: 4.833333 + value: {0: -0.050199, 1: 0.731341, 2: -0.000000, 3: 0.680162} + - time: 4.866667 + value: {0: -0.084308, 1: 0.740157, 2: 0.000000, 3: 0.667129} + - time: 4.900000 + value: {0: -0.123234, 1: 0.746488, 2: 0.000000, 3: 0.653888} + - time: 4.933333 + value: {0: -0.167811, 1: 0.749932, 2: -0.000000, 3: 0.639877} + - time: 4.966667 + value: {0: -0.214892, 1: 0.750971, 2: 0.000000, 3: 0.624390} + - time: 5.000000 + value: {0: -0.263397, 1: 0.749901, 2: 0.000000, 3: 0.606853} + - time: 5.033333 + value: {0: -0.314214, 1: 0.746434, 2: 0.000000, 3: 0.586606} + - time: 5.066667 + value: {0: -0.368699, 1: 0.739880, 2: 0.000000, 3: 0.562707} + - time: 5.100000 + value: {0: -0.428912, 1: 0.728767, 2: 0.000000, 3: 0.533792} + - time: 5.133333 + value: {0: -0.498850, 1: 0.709711, 2: 0.000000, 3: 0.497452} + - time: 5.166667 + value: {0: -0.588580, 1: 0.672550, 2: 0.000000, 3: 0.448609} + - time: 5.200000 + value: {0: 0.706680, 1: -0.593389, 2: 0.000000, 3: -0.385347} + - time: 5.233333 + value: {0: 0.845613, 1: -0.430497, 2: 0.000000, 3: -0.315613} + - time: 5.266666 + value: {0: 0.955224, 1: -0.144932, 2: -0.000000, 3: -0.257957} + - time: 5.300000 + value: {0: 0.949154, 1: 0.216116, 2: -0.000000, 3: -0.228910} + - time: 5.333333 + value: {0: 0.832708, 1: 0.504667, 2: -0.000000, 3: -0.227834} + - time: 5.366667 + value: {0: 0.693919, 1: 0.678443, 2: -0.000000, 3: -0.241230} + - time: 5.400000 + value: {0: 0.569148, 1: 0.779814, 2: 0.000000, 3: -0.260690} + - time: 5.433333 + value: {0: 0.462317, 1: 0.840154, 2: 0.000000, 3: -0.283557} + - time: 5.466667 + value: {0: 0.369643, 1: 0.876129, 2: 0.000000, 3: -0.309454} + - time: 5.500000 + value: {0: 0.286807, 1: 0.895993, 2: -0.000000, 3: -0.339026} + - time: 5.533333 + value: {0: 0.210581, 1: 0.903458, 2: 0.000000, 3: -0.373389} + - time: 5.566667 + value: {0: 0.142605, 1: 0.900560, 2: -0.000000, 3: -0.410676} + - time: 5.600000 + value: {0: 0.084197, 1: 0.889942, 2: 0.000000, 3: -0.448234} + - time: 5.633333 + value: {0: 0.033838, 1: 0.873592, 2: 0.000000, 3: -0.485481} + - time: 5.666667 + value: {0: 0.009954, 1: -0.852808, 2: 0.000000, 3: 0.522130} + - time: 5.700000 + value: {0: 0.048461, 1: -0.828355, 2: -0.000000, 3: 0.558103} + - time: 5.733333 + value: {0: 0.082758, 1: -0.800580, 2: 0.000000, 3: 0.593483} + - time: 5.766666 + value: {0: 0.113909, 1: -0.769427, 2: 0.000000, 3: 0.628495} + - time: 5.800000 + value: {0: 0.143532, 1: -0.734246, 2: 0.000000, 3: 0.663537} + - time: 5.833333 + value: {0: 0.172448, 1: -0.694028, 2: -0.000000, 3: 0.698990} + - time: 5.866667 + value: {0: 0.200777, 1: -0.647555, 2: 0.000000, 3: 0.735093} + - time: 5.900000 + value: {0: 0.228263, 1: -0.593454, 2: -0.000000, 3: 0.771821} + - time: 5.933333 + value: {0: 0.254165, 1: -0.530519, 2: -0.000000, 3: 0.808671} + - time: 5.966667 + value: {0: 0.277534, 1: -0.459186, 2: -0.000000, 3: 0.843874} + - time: 6.000000 + value: {0: 0.299613, 1: -0.386233, 2: -0.000000, 3: 0.872385} + - time: 6.033333 + value: {0: 0.322316, 1: -0.316511, 2: 0.000000, 3: 0.892151} + - time: 6.066667 + value: {0: 0.346291, 1: -0.250099, 2: 0.000000, 3: 0.904175} + - time: 6.100000 + value: {0: 0.371755, 1: -0.186078, 2: -0.000000, 3: 0.909491} + - time: 6.133333 + value: {0: 0.398713, 1: -0.123484, 2: -0.000000, 3: 0.908724} + - time: 6.166667 + value: {0: 0.424923, 1: -0.062300, 2: -0.000000, 3: 0.903083} + - time: 6.200000 + value: {0: 0.439423, 1: -0.006632, 2: -0.000000, 3: 0.898256} + - time: 6.233333 + value: {0: 0.437259, 1: 0.041276, 2: -0.000000, 3: 0.898388} + - time: 6.266666 + value: {0: 0.419403, 1: 0.082596, 2: -0.000000, 3: 0.904035} + - time: 6.300000 + value: {0: 0.385057, 1: 0.118466, 2: -0.000000, 3: 0.915258} + - time: 6.333333 + value: {0: 0.331885, 1: 0.148941, 2: -0.000000, 3: 0.931487} + - time: 6.366667 + value: {0: 0.257323, 1: 0.172400, 2: 0.000000, 3: 0.950822} + - time: 6.400000 + value: {0: 0.171125, 1: 0.186273, 2: -0.000000, 3: 0.967481} + - time: 6.433333 + value: {0: 0.099244, 1: 0.190927, 2: -0.000000, 3: 0.976574} + - time: 6.466667 + value: {0: 0.044737, 1: 0.189195, 2: 0.000000, 3: 0.980920} + - time: 6.500000 + value: {0: 0.004342, 1: 0.182449, 2: 0.000000, 3: 0.983206} + - time: 6.533333 + value: {0: -0.023781, 1: 0.170474, 2: 0.000000, 3: 0.985075} + - time: 6.566667 + value: {0: -0.037255, 1: 0.150262, 2: -0.000000, 3: 0.987944} + - time: 6.600000 + value: {0: -0.039132, 1: 0.119271, 2: -0.000000, 3: 0.992090} + - time: 6.633333 + value: {0: -0.039402, 1: 0.075099, 2: 0.000000, 3: 0.996397} + - time: 6.666667 + value: {0: -0.048584, 1: 0.025153, 2: -0.000000, 3: 0.998502} + - time: 6.700000 + value: {0: -0.071756, 1: -0.019479, 2: 0.000000, 3: 0.997232} + - time: 6.733333 + value: {0: -0.108354, 1: -0.043010, 2: -0.000000, 3: 0.993182} + - time: 6.766666 + value: {0: -0.147837, 1: -0.045065, 2: -0.000000, 3: 0.987984} + - time: 6.800000 + value: {0: -0.181280, 1: -0.041020, 2: 0.000000, 3: 0.982576} + - time: 6.833333 + value: {0: -0.210141, 1: -0.038339, 2: 0.000000, 3: 0.976919} + - time: 6.866667 + value: {0: -0.239157, 1: -0.037620, 2: 0.000000, 3: 0.970252} + - time: 6.900000 + value: {0: -0.273587, 1: -0.038936, 2: -0.000000, 3: 0.961059} + - time: 6.933333 + value: {0: -0.321033, 1: -0.043061, 2: -0.000000, 3: 0.946089} + - time: 6.966667 + value: {0: -0.396420, 1: -0.047523, 2: -0.000000, 3: 0.916838} + - time: 7.000000 + value: {0: -0.473635, 1: -0.051127, 2: -0.000000, 3: 0.879236} + - time: 7.033333 + value: {0: -0.536952, 1: -0.049042, 2: 0.000000, 3: 0.842186} + - time: 7.066667 + value: {0: -0.587063, 1: -0.044948, 2: -0.000000, 3: 0.808293} + - time: 7.100000 + value: {0: -0.622146, 1: -0.041416, 2: 0.000000, 3: 0.781805} + - time: 7.133333 + value: {0: -0.644589, 1: -0.038081, 2: 0.000000, 3: 0.763580} + - time: 7.166667 + value: {0: -0.654572, 1: -0.034017, 2: -0.000000, 3: 0.755234} + - time: 7.200000 + value: {0: -0.664022, 1: -0.030017, 2: 0.000000, 3: 0.747111} + - time: 7.233333 + value: {0: -0.672941, 1: -0.026095, 2: -0.000000, 3: 0.739236} + - time: 7.266666 + value: {0: -0.681333, 1: -0.022267, 2: 0.000000, 3: 0.731635} + - time: 7.300000 + value: {0: -0.689206, 1: -0.018547, 2: -0.000000, 3: 0.724328} + - time: 7.333333 + value: {0: -0.695409, 1: -0.015325, 2: -0.000000, 3: 0.718450} + - time: 7.433333 + value: {0: -0.698985, 1: -0.010786, 2: 0.000000, 3: 0.715055} + - time: 7.533333 + value: {0: -0.701882, 1: -0.007031, 2: -0.000000, 3: 0.712259} + - time: 7.633333 + value: {0: -0.704114, 1: -0.004090, 2: -0.000000, 3: 0.710075} + - time: 7.666667 + value: {0: -0.704440, 1: -0.003653, 2: 0.000000, 3: 0.709754} + - time: 8.000000 + value: {0: -0.705397, 1: -0.002350, 2: 0.000000, 3: 0.708809} + - time: 8.500000 + value: {0: -0.706259, 1: -0.001168, 2: -0.000000, 3: 0.707952} + - time: 12.000000 + value: {0: -0.706347, 1: -0.001047, 2: -0.000000, 3: 0.707865} + scale: + [] + vertexCache: + [] + visibilityAnimation: + [] + blendShapes: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 3.animationAsset.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 3.animationAsset.meta new file mode 100644 index 00000000..6ae035b6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Animations/Base Layer Rocket 3.animationAsset.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + AnimationAsset: ! af080ccb-4a5a-400a-aa23-a9f0d85ad3e1 + ImporterName: AnimationAssetImporter + PrimaryAsset: ! af080ccb-4a5a-400a-aa23-a9f0d85ad3e1 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Rocket_sparks.mesh b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Rocket_sparks.mesh new file mode 100644 index 00000000..eea077d6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Rocket_sparks.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dae4c64909c061a4a29908d46efae3ddcc69aafd036b0391c24b1418103af9cc +size 8127 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Rocket_sparks.mesh.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Rocket_sparks.mesh.meta new file mode 100644 index 00000000..bf999ae8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Rocket_sparks.mesh.meta @@ -0,0 +1,21 @@ +- ! + ImportedAssetIds: + FileMesh: ! 3e3dc67e-f8de-4502-b790-51fa5c73c19b + ImporterName: FileMeshImporter + PrimaryAsset: ! 3e3dc67e-f8de-4502-b790-51fa5c73c19b + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + color: UNorm Byte + position: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.mat b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.mat new file mode 100644 index 00000000..cb12c85e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.mat @@ -0,0 +1,133 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 3428837e-1a88-494b-a4ac-abeea509b069 +- ! + CachedProperties: + [] + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Front + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Center_N032: + typeIdx: 3 + value: {x: 0.500000, y: 0.500000} + Port_Direction_N037: + typeIdx: 3 + value: {x: 1.000000, y: 1.000000} + Port_Input0_N000: + typeIdx: 1 + value: 0.100000 + Port_Input0_N003: + typeIdx: 1 + value: 1.000000 + Port_Input0_N014: + typeIdx: 1 + value: 0.100000 + Port_Input0_N045: + typeIdx: 1 + value: 0.200000 + Port_Input1_N000: + typeIdx: 1 + value: 0.000000 + Port_Input1_N003: + typeIdx: 1 + value: 0.200000 + Port_Input1_N013: + typeIdx: 1 + value: 0.500000 + Port_Input1_N014: + typeIdx: 1 + value: 0.200000 + Port_Input1_N034: + typeIdx: 1 + value: 1.000000 + Port_Input1_N041: + typeIdx: 1 + value: 12.000000 + Port_Input1_N043: + typeIdx: 1 + value: 1.000000 + Port_Input1_N045: + typeIdx: 1 + value: 0.500000 + Port_Input1_N046: + typeIdx: 1 + value: -1.000000 + Port_Input1_N047: + typeIdx: 1 + value: 0.000000 + Port_Multiplier_N039: + typeIdx: 1 + value: 1.000000 + Port_Position1_N038: + typeIdx: 1 + value: 0.250000 + Port_Scale_N032: + typeIdx: 3 + value: {x: 0.050000, y: 0.000000} + Port_Value0_N038: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Port_Value1_N038: + typeIdx: 5 + value: {x: 1.000000, y: 0.439109, z: 0.000000, w: 1.000000} + Port_Value2_N038: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + PreviewNodeID: + typeIdx: 0 + value: 0 + Tweak_N44: + typeIdx: 1 + value: 0.510000 + black_height: + typeIdx: 1 + value: 1.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + texture_map: + typeIdx: 9 + value: + id: 1c126145-7185-4ac9-b2fe-926ada7a96fc + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + texture_mapBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + texture_mapDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + texture_mapTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + texture_mapUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Pass: ! 7da3011e-c379-47db-87d5-63ebc4c9454b diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.mat.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.mat.meta new file mode 100644 index 00000000..5050bdee --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! ee5a38f8-6b3c-425a-90e8-babde063e515 + ImporterName: MaterialImporter + PrimaryAsset: ! ee5a38f8-6b3c-425a-90e8-babde063e515 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.ss_graph b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.ss_graph new file mode 100644 index 00000000..fbb96c74 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b681660d64159cd6c19addaf0f0044633f21bcd3dee643f6b4f211c8bb94f07 +size 254058 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.ss_graph.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.ss_graph.meta new file mode 100644 index 00000000..7c3e84df --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/Top_Rocket_Trail.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 7da3011e-c379-47db-87d5-63ebc4c9454b + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 7da3011e-c379-47db-87d5-63ebc4c9454b + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/stripe_noise 2.png b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/stripe_noise 2.png new file mode 100644 index 00000000..fb8e078d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/stripe_noise 2.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:824194d8107c87d74577c3a9b675ab9874075f76feafd1572f050e1e0e2015b5 +size 1945 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/stripe_noise 2.png.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/stripe_noise 2.png.meta new file mode 100644 index 00000000..e66ecc0a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/RocketWorkshop/VFX/Rocket Sparks/stripe_noise 2.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 1c126145-7185-4ac9-b2fe-926ada7a96fc + ImporterName: FileTextureImporter + PrimaryAsset: ! 1c126145-7185-4ac9-b2fe-926ada7a96fc + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/SIK Examples.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/SIK Examples.prefab new file mode 100644 index 00000000..d1f05f7a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/SIK Examples.prefab @@ -0,0 +1,10663 @@ +- ! + PackagePath: "" + objects: + - ! 2c79d8f8-6e19-4bc1-8c7e-eeb7b9172be5 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! ffb9811f-92b4-4514-ac28-2aa421dc9dfe + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: false + RenderOrder: 11 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 0607447c-e8df-4721-9c51-777e973d74eb + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + Axis: Z + Length: 1.900000 + Radius: 2.100000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: piece_0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 5.097826, z: -0.064316} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 20d2fbd5-6bf0-4241-9c0d-8258178f6789 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! fd61450e-fa46-40aa-a6c1-21c78d870ba2 + - ! abfbbe54-80b3-4a90-a9a0-808dc3ff5e8d +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4bb77992-0e3e-4b1c-8d3b-c245e47391ca + - ! e9bbe9da-6b36-4e99-a4cd-1fe2d28d823d +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! d6404b8a-628b-42e8-86d6-74a1d1136133 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 077b8c55-6fe3-42b4-a99e-46f92cb22835 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: GridContentCreator + Enabled: true + ScriptAsset: ! ad83ff54-844d-49a8-9102-f568a9d291c3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + itemPrefab: ! 642b5216-980f-4be9-9593-16aa50bc54ca + itemsCount: ! 30.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! ae5f399d-f412-42b2-915e-5c7de7787711 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 8f1be4e1-ff3e-47a5-a761-b6ed0d466561 + - ! f1eaf93c-70f9-43fe-8fe2-a41582142f06 +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7d07885e-d3be-41f0-b24d-2f61c10779fa + Components: + - ! 8105b0c7-f201-4c2a-aedd-7e2b4d4b0af1 + - ! ca21cb84-c838-436d-9705-24c3cbd196e1 +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7a8db928-d205-4f3f-9d59-a7a13759da73 + - ! ceb35dbc-0c60-4f87-81a9-31f047f53fb7 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -15.000000 + bottom: -20.000000 + right: 15.000000 + top: 20.000000 +- ! + PrefabRemaps: + [] + Name: Billboard + Enabled: true + ScriptAsset: ! b5593251-a0da-4491-8561-2e0dccd715bc + ScriptInputsDefault: + _xAxisEnabled: true + _yAxisEnabled: true + _zAxisEnabled: true + _axisBufferDegrees: true + _axisEasing: true + duration: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _xAxisEnabled: false + _yAxisEnabled: true + _zAxisEnabled: false + _axisBufferDegrees: ! {x: 0.000000, y: 0.000000, z: 0.000000} + _axisEasing: ! {x: 1.000000, y: 1.000000, z: 1.000000} + duration: 0.033000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Platform + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -30.000000, z: -100.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.000000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 81ac99fe-bb9c-4203-88a5-149ff24f4d8f +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c647f5e5-a48d-4552-99c7-630bcb3fc5af + - ! 3bd20dac-a943-4d7e-a08d-6b529725b690 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 7 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: | + Toggle Off + + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 0.984314, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 11 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 0607447c-e8df-4721-9c51-777e973d74eb + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.075000 + meshVisuals: ! + - ! dc6b7e84-4d7f-4754-b5ef-7a8e8995a9cc + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Content + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! dae05fcb-ff13-4f9c-9e8c-92679490f805 + - ! 1fcdc7cc-c2fa-4a12-95f4-caeffa79295e + - ! 61451a97-d498-4319-850a-db26407772aa + - ! 8f271eef-bc6f-44ca-8498-4d71eb993dc0 + - ! 35b271f1-4ef6-431e-bd13-f995681ed278 + Components: + - ! cd4cac9b-7761-4921-b9cc-f78b074bab79 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + Mesh: ! 19b05bf9-336a-4446-8bae-3900ec681e19 + Convex: false + Skin: ! 00000000-0000-0000-0000-000000000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! 2a0176da-4f12-41be-ae32-8ca018680f8b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! ffb9811f-92b4-4514-ac28-2aa421dc9dfe + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 8f5afc96-f8af-49e6-8c59-93f62d72c98c + _offIcon: ! 1b94b845-f11f-4781-8362-c5cb1bef17fa + _isToggledOn: true + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.075000 + meshVisuals: ! + - ! 62b8a451-7989-45b5-a6c7-ab02c30f30de + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 5c84b816-a8dd-4475-8337-964ddf2aceea + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + border: true + constantPadding: true + isContentInteractable: true + allowTranslation: true + minimumSize: true + maximumSize: true + xAlways: true + yAlways: true + useSnapping: true + itemSnapping: true + worldSnapping: true + showFollowButton: true + isFollowing: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 31.000000, y: 40.000000} + border: ! 4.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: false + autoScaleContent: false + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 10.000000, y: 10.000000} + maximumSize: ! {x: 300.000000, y: 300.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: false + itemSnapping: false + worldSnapping: false + showFollowButton: false + useFOVFollow: true + isFollowing: false + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9129b095-809f-453f-ad22-f9ac86c7ab8c + - ! a61b2db4-6c4d-4e28-960b-3876a0d4054c +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c0a16006-a72e-46ea-b037-6f6055a8037e + - ! f7d350e1-f928-42ff-9a3c-3460594bfa00 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 073b79f8-7222-4585-86f6-8acd58335931 + useGlowMesh: true + glowRenderMeshVisual: ! 80935988-d850-43b0-8489-fdfb937b76e4 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Flight Speed + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 60 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + _minValue: true + _maxValue: true + stepBehavior: true + _stepSize: true + toggleDuration: true + editEventCallbacks: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnValueUpdate: true + onValueUpdateFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: ! 0.000000 + _maxValue: ! 1.000000 + startValue: 0.200000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! 88acf2e5-9240-47f4-8a6f-82805925f710 + sliderMax: ! 8862e579-091b-498f-b65a-9ade1608fdb7 + _sliderKnob: ! ef252a02-e448-44b9-9e43-6cba7ea7c0f4 + editEventCallbacks: false + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 00000000-0000-0000-0000-000000000000 + onValueUpdateFunctionNames: ! + [] + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: root + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 04ff2d6a-03de-4b0a-bedc-a4b282d7efc5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Categories + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! dd029e31-8ad4-48dc-a2bc-5fa83ab2622f + - ! f4669faa-525a-4926-bfdf-e7b1b07813b7 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! f580b6f0-2a1a-48d8-9796-674a7b0ecd46 + useGlowMesh: true + glowRenderMeshVisual: ! f57a3e91-93ed-467a-a0c0-deecbed6cd45 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Rocket + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -0.064316, z: -5.097826} + rotation: {x: 90.000008, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! bd9c7a12-8208-473d-b8d7-540d137af7a6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + ScriptAsset: ! 6ad8e076-1f73-4dde-9236-fd993752a829 + ScriptInputsDefault: + _debugDrawEnabled: true + enableHorizontalScroll: true + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: true + scrollAreaBounds: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _debugDrawEnabled: false + enableHorizontalScroll: false + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: 0.300000 + scrollAreaBounds: ! {x: 1.000000, y: 1.000000} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewContent + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! aafb526f-a2ed-4dc7-acd9-7245b143dbb4 + - ! 09db777e-2a46-487f-8d0e-89061d39cbce +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! bf23557f-e639-48f1-aff2-aafc4d92fe11 + Mesh: ! 2a58608b-008d-40f8-9627-d339311f2e1d + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch Horizontal: 0.000000 + Pinch Vertical: 0.000000 +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f57a3e91-93ed-467a-a0c0-deecbed6cd45 +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 18acdc7e-459f-4219-bcd5-8614cb2776ef + - ! af39b2ca-39f9-4be3-883f-3e60844b18d7 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 5 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 2d43b9d7-cdc4-4727-8b79-f643982ea695 + useGlowMesh: true + glowRenderMeshVisual: ! 702c7723-1685-4104-adfb-d00ae5caf8b0 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketLaunchControls + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -35.000000, z: -30.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c903e1ce-abf1-4253-84ca-85d5e3999a67 + - ! 4f9c951b-cdcd-4f27-a21a-c791f2f6855e + - ! a77c1eb1-9593-4438-87b1-ae63ecf14f5d + - ! 6c6cb8b7-3a98-4d0b-aacc-d52cbec6726a + - ! 4448e178-da1e-466c-832d-cb35015a7100 + - ! db4b404e-9f10-4f88-b107-2e38bd2b1afc + - ! 9cd18e63-f258-47f2-8eac-80b575acda0d + - ! a2df5570-1a26-46c8-9692-745f51555629 + - ! 50ecda44-3290-4cec-9805-7b911c17c3a3 + - ! 4eef3acd-6894-43d4-b6e6-bba4bc729457 + Components: + - ! 2b3b3079-d010-4f80-b3de-b51fcb3d4f57 + - ! ebeaae85-cb2b-41e4-a902-44286f2258be +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! b6e0f29f-f6a2-4cab-97c7-b0b7475b0cdc + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: max + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 6e910f1c-f33c-4497-8c7d-ce77b8f7b885 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! ad481c2d-f6bf-4d74-9d13-17ca74924223 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 8d858ff6-aa23-4863-b2df-a5af56b736da + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + border: true + constantPadding: true + isContentInteractable: true + allowTranslation: true + minimumSize: true + maximumSize: true + xAlways: true + yAlways: true + useSnapping: true + itemSnapping: true + worldSnapping: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 15.000000, y: 23.000000} + border: ! 4.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: false + autoScaleContent: false + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 10.000000, y: 10.000000} + maximumSize: ! {x: 300.000000, y: 300.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: false + itemSnapping: false + worldSnapping: false + showFollowButton: true + useFOVFollow: true + isFollowing: true + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: SIK Examples + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c0f104b8-b66f-4cc2-9a40-911d8b08fc7c + - ! 734fd77c-cf92-4677-a635-faefb258d109 + - ! 675942d7-d7d1-48fc-abd8-5a6bff7f56cd + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -15.000000 + bottom: -20.000000 + right: 15.000000 + top: 20.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: HeadlockExample + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 10.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6b154d00-05e6-4008-8c8d-ff3c38dc97c1 + - ! fd5b3964-1eab-4124-91f5-e57195abbe20 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 2752b65d-df97-4c03-9eef-c5f00796c1c7 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.500000 + right: 1.000000 + top: 0.931538 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Launch! + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 76a4091e-15c1-4831-87d8-b69dbee3f873 + - ! c7e7d299-e828-4a21-bdfc-cafd6c557c4b +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample Mid Bottom Right + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 5.000000, y: 9.500000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! a4ee76b0-f83d-4264-8f35-6f65e6deef32 + - ! 7af80f84-dca4-4828-a01e-1e2c83301467 + - ! 1b5518c4-e625-4eb2-ab98-ef3675396855 + Components: + - ! 5773cc04-5773-434e-9985-2dd4200f1a77 + - ! 35ab393e-a4e7-4608-a60a-b9e0a5683dc9 + - ! 1efadfe5-29ad-4190-a473-1ce818b39230 + - ! 4982a4bd-8004-4ced-a93f-8c22fa227369 + - ! 08ef5629-3d1d-4e26-8a1d-b0b7ae25f515 + - ! 51a93b09-9f90-4d9d-924c-ca920dd25aae + - ! 56885160-9bf6-4d66-9330-0a8001c1ffd5 + - ! 4f1beab4-2c8a-4f63-a05f-357008991456 + - ! 9852472b-586e-40df-be99-0ea695ce4dac +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: ScrollBarSlider + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 18.000000, y: -7.000000, z: -0.250000} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 40.000000, y: 40.000000, z: 40.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 98c2d544-25c1-43a6-a6f8-d396385399b1 +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample Mid Bottom Center + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 9.500000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! 5857ba63-8e4c-4afa-9413-3ef6d3184e32 + - ! 8f5afc96-f8af-49e6-8c59-93f62d72c98c + - ! 1b94b845-f11f-4781-8362-c5cb1bef17fa + Components: + - ! 6bf51efb-c165-480c-834e-cd9e1573372e + - ! ae4ba4ca-d378-448a-a6bc-a0633b4a3211 + - ! 1da1ae14-3e7a-4cfa-b353-e425319a3572 + - ! 1894539e-bf0c-4d34-bc92-d5eca75e7589 + - ! 0a9143d8-a5e8-4bc5-90dd-98075fe95d19 + - ! cf20aefe-5abc-4ebb-8336-b7e1e0c9a094 + - ! ff19197c-9428-4f08-9a91-3b0aa6da372a + - ! 87ea7e7c-debc-47fd-9c33-4015328482c2 + - ! e63bf552-2edd-44f6-817b-8467a4db70e1 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Launch Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3375b270-5d27-4f31-b4e9-9b12bc85c58f +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + ScriptAsset: ! 6ad8e076-1f73-4dde-9236-fd993752a829 + ScriptInputsDefault: + _debugDrawEnabled: true + enableHorizontalScroll: true + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: true + scrollAreaBounds: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _debugDrawEnabled: false + enableHorizontalScroll: false + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: 0.300000 + scrollAreaBounds: ! {x: 1.000000, y: 1.000000} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 15 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 00000000-0000-0000-0000-000000000000 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: max + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + ScriptAsset: ! 6edc785e-877c-4a9a-b0a0-3f29d68e2274 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + _scrollBarMeshVisual: ! 008299c5-f728-4311-b3c6-21cbf5660edf + _boundingHeightOffset: ! -1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! e3c97abf-6ee9-42b3-bc7e-1876cca70142 + _offIcon: ! 5236bf74-2c01-4cfa-8ac3-71def1454ab5 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 5c84b816-a8dd-4475-8337-964ddf2aceea + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + _minValue: true + _maxValue: true + stepBehavior: true + _stepSize: true + toggleDuration: true + editEventCallbacks: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnValueUpdate: true + onValueUpdateFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: ! 0.000000 + _maxValue: ! 1.000000 + startValue: 0.200000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! 6f2f7e56-ab07-4f8b-935a-c0150d74e9f6 + sliderMax: ! 6ca8c494-08e6-480c-a6c0-b3dce62bd692 + _sliderKnob: ! e73b1f1d-7c11-4099-9632-edabe94166a8 + editEventCallbacks: false + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 00000000-0000-0000-0000-000000000000 + onValueUpdateFunctionNames: ! + [] + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! d1d15b9a-f9f8-45f7-b124-de8885fbcb5d + knobObject: ! a0bee32f-a528-40cc-8704-9dd39691c1a4 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Skin + Enabled: true + skinBones: + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 6 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Toggle On + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 0.274510, y: 0.274510, z: 0.274510, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: max + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Path Option C + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.000000, y: 4.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ad481c2d-f6bf-4d74-9d13-17ca74924223 + - ! eaf4b260-3a9d-465a-8b21-86d130203721 + - ! 8e63e8fd-3b3a-4713-8173-b4ef651ec203 + - ! 3a75d733-5107-4a4a-a6de-0204e4089a00 + - ! aa952deb-b054-4e99-aa60-600cf2678371 + - ! 2af4ec65-1023-4f81-873e-950d998a65f2 +- ! + PrefabRemaps: + [] + Name: RocketGridContentCreator + Enabled: true + ScriptAsset: ! 01cb4976-7110-49ff-ae27-dbb77153e547 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + rocketConfigurator: ! a97c37a8-109a-4866-9e37-56d6c8a9c1f8 + objectPrefabs: ! + - ! 8104e815-4316-48be-ad1a-2021666f989f + - ! b9b3aff4-658d-4c76-ab3d-b479d4a722c8 + - ! e56db565-cd60-4e54-9dc1-b211e729b73b + - ! e7254ab7-df28-44a9-9252-05d53fbdc7da + - ! 242abbc5-63eb-448b-9a60-c5f5eae6725c + - ! 76789411-9f7c-4352-84bb-6a762a706580 + - ! 68a19954-e237-4b18-827d-db13073a38d6 + - ! 32671acc-9b4d-4487-ac10-3af976d942d7 + - ! 5c321a82-1be9-40b7-a482-f37464b708db + - ! dbb1f943-cd3e-4b20-89e5-0ce41c98a705 + - ! bbe206c8-38e1-4245-9550-2a019fe7e078 + - ! f2f3ca41-1bd5-4136-a5db-f3edb882b464 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Objects + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ebe15137-3734-487c-a0d7-b498f241e8c1 + - ! e7b1b809-065c-4da1-8d3a-4c59dc598329 + - ! 10ef1717-a0b6-4e65-a7d9-44f91b6017cd + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 046ad65b-f330-4692-9807-fbd95f8061f2 + - ! 7476680a-1828-4517-8b6d-a38bee74bd03 +- ! + PrefabRemaps: + [] + Name: ScrollButton + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: -90.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2572bdd9-c2de-4adb-be7a-d53217cf7db4 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 80935988-d850-43b0-8489-fdfb937b76e4 +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 995378a9-0c60-444f-95ea-9a77adf164d6 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 765da78a-e794-4604-a38a-33a1c38d7406 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 7af80f84-dca4-4828-a01e-1e2c83301467 + _offIcon: ! 1b5518c4-e625-4eb2-ab98-ef3675396855 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d1d15b9a-f9f8-45f7-b124-de8885fbcb5d + - ! f14127e0-d9ae-44ec-8230-3851a3639162 +- ! + PrefabRemaps: + [] + Name: Animation Player + Enabled: true + Autoplay: false + ClipRangeType: Frames + AnimationClips: + - ! + AnimationAsset: ! 8811a6ee-076e-4144-a4e2-0cdc9e2fe3c2 + Name: Base Layer Rocket 1 + Weight: 1.000000 + PlaybackSpeed: 1.000000 + Begin: 0.000000 + End: 400.000000 + Reversed: false + Disabled: false + BlendMode: Default + ScaleMode: Multiply + PlaybackMode: Single + - ! + AnimationAsset: ! 7eba6aa9-4ba6-4792-9195-8471fd86103b + Name: Base Layer Rocket 2 + Weight: 1.000000 + PlaybackSpeed: 1.000000 + Begin: 0.000000 + End: 420.000000 + Reversed: false + Disabled: false + BlendMode: Default + ScaleMode: Multiply + PlaybackMode: Single + - ! + AnimationAsset: ! af080ccb-4a5a-400a-aa23-a9f0d85ad3e1 + Name: Base Layer Rocket 3 + Weight: 1.000000 + PlaybackSpeed: 1.000000 + Begin: 0.000000 + End: 360.000000 + Reversed: false + Disabled: false + BlendMode: Default + ScaleMode: Multiply + PlaybackMode: Single +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 88acf2e5-9240-47f4-8a6f-82805925f710 + - ! 8862e579-091b-498f-b65a-9ade1608fdb7 + Components: + - ! 09f0b7d0-42b3-4eaf-9c54-fef40b29a0dd +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "[Manipulate Example] Sphere" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: -22.000000, z: -70.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7ce79967-b6f4-41de-a181-7d05dadb9224 + - ! bcc84955-f911-4c35-ba6b-2c77998f9f4d + - ! ad378ea5-7cc1-4152-a022-3f3563680405 + - ! e08f8232-5976-4c1c-8716-e28147a6ce64 + - ! e1f8bc07-848c-411f-8468-e593250bd389 + - ! 1146c9ab-b553-4255-9954-52ffe8f621f5 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Launch PinchButtonCapsule + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -10.850000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 37b4795a-0ce0-4e29-b3cc-79aa3cb81fbe + Components: + - ! d5ef0869-3c0f-4768-88e8-8eebbc747a17 + - ! 96a77374-8d65-4258-afa8-56fa7dd9a353 + - ! 70a5b7c3-549e-4a03-ba4a-127df073805d + - ! 7eb68798-e720-4b5b-bab0-13835772bcee + - ! da181ff2-8374-4cc6-96f4-a40ed3d7e14c + - ! 7b3b0ace-4c9f-4d8d-a869-af9439d938e7 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 077b8c55-6fe3-42b4-a99e-46f92cb22835 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Flight Path + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.257892, y: 7.500000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d2e60671-ae1e-419a-ac5e-3759a34df741 +- ! + PrefabRemaps: + [] + Name: ShowPlatformToggleButton + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 5.850000, y: -7.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.150000, y: 1.150000, z: 1.150000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6777d912-e79d-4f3d-8a23-f24d7acdd522 + - ! 49d3c420-96cd-485d-9a64-bb7d2c52204f + - ! 7b503393-b7d7-4fee-bebc-2e0a0a158c3e + - ! a3a2626d-dc87-4c90-bb2f-4ef4cb8271c6 + - ! 37b759b8-1f4e-4f26-b5ee-57c90bc21a73 + - ! e6e4c36b-32c2-4083-b6b2-0defb0f50b4d +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + ScriptAsset: ! 6edc785e-877c-4a9a-b0a0-3f29d68e2274 + ScriptInputsDefault: + _boundingHeightOffset: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _scrollBarMeshVisual: ! 1353aaef-a78a-4f70-80ef-f2c9fe717ac5 + _boundingHeightOffset: ! 0.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f24b3095-782f-4fbe-a900-138727112c90 + - ! ebcabaf7-993b-47f4-9ff6-1b867297f822 +- ! + PrefabRemaps: + [] + Name: RocketConfigurator + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a97c37a8-109a-4866-9e37-56d6c8a9c1f8 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 995378a9-0c60-444f-95ea-9a77adf164d6 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.075000 + meshVisuals: ! + - ! c8ebd78d-8835-4c00-8308-6da560d95db7 + - ! 774e1493-bd36-454c-b478-ec0cebda666a + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 1353aaef-a78a-4f70-80ef-f2c9fe717ac5 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 34db47f7-8795-4800-940f-3381c9bc70fe + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 13 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 4d35bac2-e858-4d9c-afa4-6f02ae7d5065 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ae5f399d-f412-42b2-915e-5c7de7787711 + - ! aa4e29d0-66d3-49ee-b482-4a2a4c447d88 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 3abc2130-bd88-4fb0-9f9b-2637a20f2c13 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScrollBarFeedback + Enabled: true + ScriptAsset: ! 37bf0d33-fcd6-4d18-8150-19002357972e + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + scrollbarObject: ! d07d1906-eaea-4b71-92d2-bea1f8736f92 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! cb2f009e-3cf2-4187-bf1e-aafac6787521 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Satellite + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 47.675831, y: 19.865082, z: 33.071331} + scale: {x: 0.222222, y: 0.222222, z: 0.222222} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7a4a44a4-8a66-4320-a3cb-c5fc4a55bb4b + - ! ee4c641a-c79a-436e-a89e-1e8ffe9cd3bc + - ! b47a1db7-5e4a-4f06-9a2e-7251e54d0a66 + - ! a2dc5a63-c1df-41a5-90b2-e740f12bbf63 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 22a58330-8626-4c4a-8423-4ef292fd378e + Components: + - ! d918b75d-d600-45fb-8d41-0c40a86951f9 + - ! 2272c271-7b6c-48cc-ae08-d7d30dde682e +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! 19b05bf9-336a-4446-8bae-3900ec681e19 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewContent + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e7a1b64d-9ae1-430a-a584-51a434e45381 + - ! 44cc41b9-1913-4614-aa74-d6adf8658156 +- ! + PrefabRemaps: + [] + Name: "[EXAMPLES] Simple UI" + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8c43891d-652c-4699-90e9-d7d2c4dd0a29 + - ! bc68a313-97f1-497f-8510-ad525c2932be + - ! 765da78a-e794-4604-a38a-33a1c38d7406 + - ! c32fdec6-4ed8-4c87-8521-950db919ede2 + - ! ed7615db-bf66-4ceb-9b6d-94585dfba275 + - ! b48985e2-11a7-40a4-b8df-1e8b4854aa1a + - ! fd8de8fc-3999-4e0a-b9a9-745c28d186c2 + - ! 30bf6d19-885c-42fe-8195-3e71e8c3918b + - ! f62fbb0d-eab9-4ce3-ac4f-197c49d50ad0 + - ! b5fef323-29cd-48d3-a043-4dc937b28241 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 2752b65d-df97-4c03-9eef-c5f00796c1c7 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -8.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 16.000000, y: 16.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 8197be4b-6667-4511-90ec-3764aaf7097e +- ! + PrefabRemaps: + [] + Name: ScrollBarSlider + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 17.000000, y: -6.500000, z: -0.250000} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.750000, y: 0.750000, z: 0.750000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ace5dc90-9121-482e-bc77-338e3f17c25f + - ! 5d4a954b-d8cc-4290-917f-fc4284b79c3e +- ! + PrefabRemaps: + [] + Name: ScrollViewCanvasExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -1.000000, y: 2.000000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f5ea9cd5-c350-473d-b0cc-9117263fd777 + Components: + - ! 2dc056c9-08ab-4593-a8d7-e2e7ad71861b +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! b487fcf3-002e-4822-9625-f02956fbb781 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text3D + Enabled: true + RenderOrder: 14 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e6189357-b3eb-4ed5-8a07-593c3328fc24 + Text: HeadlockExample + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 75 + ExtrusionDepth: 0.500000 + ExtrudeDirection: Both + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + ShadowMode: None +- ! + PrefabRemaps: + [] + Name: Rocket_sparks + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a5eaad25-8b90-4fca-9706-422e02f5c643 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Path Option B + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 4.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2e9e3044-964b-4715-bfd8-238f810af6ee + - ! e33700d5-863c-4eb6-b422-2b6c26477e2c + - ! 9bc07bdc-0bed-42c5-997f-7eaa4a937221 + - ! 866bd418-abd8-4061-a6ff-2f4e36e2cbf5 + - ! c3469410-615c-48b7-b277-fdbb7fe01425 + - ! e0de0477-b7d3-4d25-a608-c298b58b3860 +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 113ef412-c8f7-4b7e-a3ab-e59df2135943 + Components: + - ! 802c2599-cd73-47a3-9a39-9fef13d5fff5 + - ! 7c53858f-523a-451c-9ada-9112151d87df +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 88f531cc-523c-47b1-9231-7c166961c7a1 + _offIcon: ! 8fd43d53-4707-4755-ae21-281babc4a8a5 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: RocketPartSelector + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -35.000000, y: -1.927469, z: -100.000000} + rotation: {x: 0.000000, y: 10.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6a863191-faea-4432-b7f4-41bc539cc8e7 + Components: + - ! 1b490eb7-9528-4f6f-a0c1-50a388b944b3 +- ! + PrefabRemaps: + [] + Name: "[Manipulate Example] Box" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: -6.000000, z: -70.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ebbecedd-4b69-462f-8155-8784cc752bb0 + - ! c7b5e2c4-ed9e-4fc9-a0ac-ae5ab3522ca9 + - ! 2a40ff1f-4494-4db1-8e8b-1560f5ae0b45 + - ! 2a0176da-4f12-41be-ae32-8ca018680f8b + - ! 15c8ff47-7aaf-4ed8-8983-1539f0f073c4 + - ! f740487d-923c-4156-bad2-f1deb9c49131 +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c8325863-b981-4ca5-a5b4-bc6192e4bf5c + Components: + - ! 77141b36-1afa-4580-a4e7-77b46a7e7144 + - ! 0724cc1a-aac8-4dc7-b552-c63aadfb2934 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.672431 + right: 1.000000 + top: 0.931538 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 995378a9-0c60-444f-95ea-9a77adf164d6 + - ! 85db361a-2725-4fdc-b752-1e0403bc821c +- ! + PrefabRemaps: + [] + Name: Controls + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 805d8e27-4c57-4ffb-a156-c006b14f8ebc + - ! 34db47f7-8795-4800-940f-3381c9bc70fe + - ! 36d23b92-f05c-4013-8bf2-28e6662dedae + - ! d6404b8a-628b-42e8-86d6-74a1d1136133 + - ! e6fe490c-8c1d-4b7b-a558-bf9a71e1e536 + - ! 687dfae2-c079-4fd4-9143-8a8a419910b9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: "[EXAMPLES] Simple Interaction" + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e03dda15-5806-44af-97cb-f144db36e8f9 + - ! 6e910f1c-f33c-4497-8c7d-ce77b8f7b885 + - ! 4d8e42f2-86df-4cf7-a61d-d8e6870abac5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! bc68a313-97f1-497f-8510-ad525c2932be + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.000000, y: -5.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! 71ca0806-008a-45ac-9173-d186754e53bc + - ! df969d23-af5a-4743-bd64-da3f32af946c + - ! 26c35729-b4dd-45aa-a373-b7d47dc657e0 + Components: + - ! 4d93040b-0877-4dc1-a0c2-a495016de83b + - ! 7d0ec120-acb2-4b27-99cb-bda87b3f26a0 + - ! dba0a409-027d-4f2d-b4eb-cf1c204c780d + - ! d2ceb182-c8a1-43bc-9aea-ff239f340c22 + - ! 491ecefb-13cd-4356-a5d9-73f442a5e381 + - ! 014e6143-34a3-4ea5-9f68-9048c596274a + - ! 497f7188-a34d-4c52-9285-6ef486ad684b + - ! 53ef3073-ecda-40c9-a16c-83797dbdb78e + - ! 68719226-e7e0-4113-bdab-6aec4a1b4375 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7f82b210-b438-4633-853e-6f804c2638bb + Mesh: ! 7ba378bf-39c6-4345-acbf-9e09fff8deaa + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f30b1cbf-55cb-4854-918a-d6f5b68ff302 + Mesh: ! 18828ccb-4865-4bf5-b7c5-fdec9ae7650e + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Container Frame + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 74 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 8fdab901-ff35-4223-8a72-2b6426756517 + - ! 24a7cc7c-689a-411c-b7d5-1f41b94b856e +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6f2f7e56-ab07-4f8b-935a-c0150d74e9f6 + - ! 6ca8c494-08e6-480c-a6c0-b3dce62bd692 + Components: + - ! ab173257-917c-4083-96cf-db6a82c6ae1b +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! d5ef0869-3c0f-4768-88e8-8eebbc747a17 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 271b74cf-8459-4dd1-83a4-91af22fc6f5f + meshHoverMaterial: ! 74679e29-9817-463b-9427-ffff4cccb602 + meshPinchedMaterial: ! 43cbc95f-b089-4e59-a639-ca3950ebd1b5 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _onIcon: true + _offIcon: true + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 00000000-0000-0000-0000-000000000000 + _offIcon: ! 00000000-0000-0000-0000-000000000000 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 47f40157-724c-4a3d-b60c-1553311e79b9 + Components: + - ! 073b79f8-7222-4585-86f6-8acd58335931 +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 40fe63a3-fad2-482f-afb7-5f08fbf540d9 + - ! 2a386676-8605-4331-86a5-5368d51335e6 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2752b65d-df97-4c03-9eef-c5f00796c1c7 + - ! ccc7cd7b-286e-43c8-8e4d-7b14c01d4978 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 14.000000, z: 1.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7ad2c4a8-399e-455b-8a94-7810c8cbaa96 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Radius: 1.300000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 1766b243-ecbd-49ab-99a0-0a126bf505c7 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 13 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ab483a45-8677-4f11-8cd0-5c5d4a239a94 + Mesh: ! e7bb3308-12a7-4fa8-93b1-14b414b79f5a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Rocket Parts + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 120 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + _minValue: true + _maxValue: true + stepBehavior: true + _stepSize: true + toggleDuration: true + editEventCallbacks: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnValueUpdate: true + onValueUpdateFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: ! 0.000000 + _maxValue: ! 1.000000 + startValue: 0.200000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! 899dedd2-598a-4baa-aa9f-81952216526d + sliderMax: ! 0ba73682-6bae-4b81-ba12-1b46f58c06cf + _sliderKnob: ! a0bee32f-a528-40cc-8704-9dd39691c1a4 + editEventCallbacks: false + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 00000000-0000-0000-0000-000000000000 + onValueUpdateFunctionNames: ! + [] + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.050000 + meshVisuals: ! + - ! 7a4a44a4-8a66-4320-a3cb-c5fc4a55bb4b + - ! ee4c641a-c79a-436e-a89e-1e8ffe9cd3bc + - ! b47a1db7-5e4a-4f06-9a2e-7251e54d0a66 + - ! a2dc5a63-c1df-41a5-90b2-e740f12bbf63 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! ae5f399d-f412-42b2-915e-5c7de7787711 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d39d54db-1af5-4c4c-bb64-507cff2a8752 + Components: + - ! 6e2ea6db-9160-4b38-8e13-085bdfb056d1 + - ! c12b6591-caa8-4433-b420-c3efc693593a +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0b1f59da-99c6-4369-8496-d54668056c4e + Components: + - ! ffc41b55-0d52-4a88-b1f5-63556851cb51 + - ! ab7d3ee8-38ad-45b1-aceb-d465c18049f5 +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 150163dd-7d0d-4bbe-a4dd-9ed2e0eabb11 + - ! 4089dc9c-5adb-4bf9-b957-8abc839b0d58 +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0c16c050-86ed-4ecc-b1c0-08f7ba5fa8d2 + Components: + - ! 8394cdc8-b72c-44c6-9b2e-30b2c9ef6d1a + - ! e46651b3-78b0-4aee-a12c-995553ce0c50 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 4.600000, y: 2.000000, z: 2.200000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: SliderExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 1.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! d04392b1-1178-4d5d-8f86-2e55b24e2cd1 + - ! 069fbe97-6520-486c-996f-8c2558d0aa97 + - ! e73b1f1d-7c11-4099-9632-edabe94166a8 + - ! 7af8f4d0-cd1d-4d0e-b395-028e41c9b290 + Components: + - ! 3f78fad9-18dc-4951-9bc5-2e61aad419ef + - ! 3e004573-ea7d-407f-a8e8-b3fe94fd4f4d + - ! a9072322-9cbe-460e-a04b-91bd9fdd7e21 + - ! 8f396bfa-9149-4d15-ba96-dd5c7a1633e9 +- ! + PrefabRemaps: + [] + Name: CapsuleMeshCustomizer + Enabled: true + ScriptAsset: ! 34ec9e1d-4d86-425e-9b7a-b6f2c130e4be + ScriptInputsDefault: + radianStepCount: true + cylinderStepCount: true + endXStepCount: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + meshVisual: ! 3abc2130-bd88-4fb0-9f9b-2637a20f2c13 + capsuleLength: ! 8.000000 + radius: 1.200000 + radianStepCount: 16 + cylinderStepCount: 16 + endXStepCount: 32 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 18.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 90.000000} + scale: {x: 0.750000, y: 0.750000, z: 0.750000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1353aaef-a78a-4f70-80ef-f2c9fe717ac5 + - ! 19e101b8-5c98-4d5f-bfd6-0e2fb86581e0 + - ! 51eb6c8b-6a73-40be-85ee-eaf700c954fb + - ! 56774434-9c3b-455d-931a-2b3f3bf7ddfc + - ! 749d5e61-5dec-4bb6-bb92-94dda1f3604a +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 61324e68-e226-4eb2-a96a-63a07ecc0e98 + - ! eaa2615e-3c3c-4ff7-b453-dd5ef940fc6a +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! cc34a58c-8336-4b3f-a590-769d4309fa6a + - ! 130c2cde-83a4-4a70-8b03-eeaf75ef4d9e +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 2572bdd9-c2de-4adb-be7a-d53217cf7db4 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! bf23557f-e639-48f1-aff2-aafc4d92fe11 + meshHoverMaterial: ! 386f728b-6a31-4633-b176-f92cd5bc60ce + meshPinchedMaterial: ! 92c09c9d-bf66-4313-9fbd-9c191887a5d4 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! c32fdec6-4ed8-4c87-8521-950db919ede2 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5c84b816-a8dd-4475-8337-964ddf2aceea + - ! 4742a657-5125-4825-994f-e0bcfa100021 +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 12 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 182db9f2-4d62-49ff-8cfe-55c29488a2e8 + Mesh: ! 45bdf724-f7f0-4a8b-b6c9-191da2777f09 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 899dedd2-598a-4baa-aa9f-81952216526d + - ! 0ba73682-6bae-4b81-ba12-1b46f58c06cf + Components: + - ! 36e41376-51bd-4477-ba07-b652c0aa82a4 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: SliderExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -2.750000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! 07cce6c8-f5d7-400e-b3bb-70cfa0e5881c + - ! 4aa8ed58-dcab-4256-a793-20c208772ea7 + - ! a0bee32f-a528-40cc-8704-9dd39691c1a4 + - ! 9b74a8b5-6dd0-4448-a505-5148f6ecaf5c + Components: + - ! 00cec48f-5242-404e-a5fd-78f05c69d591 + - ! 83fdf92e-7285-4864-b7f7-b56573f0e2e8 + - ! a466be5b-8036-4d74-a1b3-a50a6492ed86 + - ! 3e6c30f9-5b68-4524-a6e7-a566e22f5fa1 +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! af14efee-8102-4865-83d2-d4fbc64ef07c + Components: + - ! 308b6179-4063-45e1-9381-521859148bd0 + - ! 5a0defe9-efc0-420d-b36b-b9f29375fb51 + - ! ed8e7a3b-6207-4015-9c5c-6a264dfd191a + - ! b0ec31f4-bb56-429d-9647-d6bb45861c8c + - ! 2935496b-ff1c-4806-9ab9-ea54eb8f259d +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! f62fbb0d-eab9-4ce3-ac4f-197c49d50ad0 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 09db06bf-3b9e-41dd-b6a0-a7da122ffade + Mesh: ! 41ed7fd3-6772-4318-9758-7be2e92a7d59 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Show Platform + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.257892, y: -7.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b76315cc-03e3-415e-a637-41a465bcf947 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! e03dda15-5806-44af-97cb-f144db36e8f9 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 077b8c55-6fe3-42b4-a99e-46f92cb22835 + - ! 3e035bce-415d-45d0-bb92-d77e1bfe0950 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ee5a38f8-6b3c-425a-90e8-babde063e515 + Mesh: ! 3e3dc67e-f8de-4502-b790-51fa5c73c19b + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Meteor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 121.091568, y: -23.471666, z: -5.285858} + scale: {x: 0.222222, y: 0.222222, z: 0.222222} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! dc6b7e84-4d7f-4754-b5ef-7a8e8995a9cc +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Path Option A + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -6.000000, y: 4.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 785ab6ec-0c8c-46e8-b96d-80269823118d + - ! 6cabe18a-f69d-4a3e-95c1-073d6070fbc9 + - ! 37ff6fd2-8e27-4f86-95a5-fca66569fa01 + - ! e6f55aef-bba6-401f-8442-4101f628acdf + - ! 4d50842c-3e9c-47c1-94e9-9117bc3bb7df + - ! b7a16c0f-84f2-4590-85b8-8bfa507e89d2 +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! fd61450e-fa46-40aa-a6c1-21c78d870ba2 + knobObject: ! e73b1f1d-7c11-4099-9632-edabe94166a8 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketConfigurator + Enabled: true + ScriptAsset: ! 85cb5de9-5fbb-4fbd-9775-2ac32bd619fe + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + rocket: ! 20d2fbd5-6bf0-4241-9c0d-8258178f6789 + allRocketParts: ! + - ! 390ee0cb-1e60-4d19-8b40-1268800c64bc + - ! a9931968-3294-457d-b5f4-67213a87aec0 + - ! f1f20f41-b943-4d16-9ec2-8b3047cfe6fc + - ! f8c6c126-d1c9-46e6-965f-f185cb98ee55 + - ! 79343b52-0148-40f3-b5ee-59276ae43e7c + - ! 90f56253-e16e-40b6-9a7b-207dc3b162e7 + - ! 11174f6e-5467-4bf7-a4ec-be4b4e11d888 + - ! 255bac26-326b-4045-8f1e-04c78eabb8b4 + - ! 9bb44e42-24ca-4d39-87d2-41596d8f05a4 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -0.320000 + right: 1.000000 + top: -0.320000 + Offset: + left: 0.000000 + bottom: -16.000000 + right: 0.000000 + top: 16.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6582d0d3-dcc0-4a82-ab92-bda59d4ae4d3 + Components: + - ! ab13ce74-b5bf-4771-ae1e-22e99dd33e6a + - ! 3a082b68-8c10-478b-bdc1-012debddbfb9 +- ! + PrefabRemaps: + [] + Name: Planet + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: 17.000000, z: -100.000000} + rotation: {x: -41.182346, y: -19.682274, z: 2.537930} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + - ! d6bcb589-b766-430d-aed9-b1cd72971db5 + Components: + - ! 04b7c790-5f7c-40a1-b286-b68c8346665d + - ! e060c4b9-46ff-4a98-9a66-4e01c9d363d3 + - ! c99b7b55-01f0-46b1-9335-3978e896fca0 + - ! 55620f11-ba29-4773-ae0d-040e31ce992f + - ! 33323e07-f29c-4fa9-9bc2-a55327ead908 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 12 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 400016ba-897b-4f06-8668-db883d28f9a9 + Mesh: ! e773364b-808e-4165-96b2-285eb99a10bb + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Size: 0.660000 +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 4d8e42f2-86df-4cf7-a61d-d8e6870abac5 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! fe38f062-25cd-4668-9e51-42235170a549 + Components: + - ! 2d43b9d7-cdc4-4727-8b79-f643982ea695 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 26126d53-f439-4c11-a332-516f25d8cef9 + Components: + - ! f580b6f0-2a1a-48d8-9796-674a7b0ecd46 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 5d1d6397-ae85-4e5f-ab2c-6cce45791d26 + Mesh: ! d5389096-6ff6-4687-a39d-88838ca6ce61 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Meteor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: -18.000000, z: -100.000000} + rotation: {x: -118.520844, y: -7.233747, z: -22.973654} + scale: {x: 4.500000, y: 4.500000, z: 4.500000} + hasSegmentScaleCompensation: false + Children: + - ! a7132f3e-b959-4445-8c33-d83de440a0c9 + Components: + - ! 80e2e116-8840-484d-be53-471cdb4a8275 + - ! a13e9ccd-85a2-499c-b743-a73945646374 + - ! 6b10defb-e495-4de9-8e7f-87ff83364433 + - ! 138717b7-e5a9-4398-bf7a-4411ba0af469 + - ! 5f54672e-81d5-4d1f-bfcd-349615a988b2 +- ! + PrefabRemaps: + [] + Name: ScrollViewCanvasExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -40.000000, y: 0.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 15046028-d913-4fb0-8a5a-463b11599a95 + Components: + - ! 0c399b22-7b3e-40e0-8b5e-2905497a3229 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: min + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ContainerFrameUI + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 55.000000, y: -5.000000, z: -65.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 722655c4-7fce-41bf-b7e1-e46c8987282a + Components: + - ! d3a91d49-4352-4b77-8235-8d2d19bc7d82 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Launch Platform + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 60 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 785ab6ec-0c8c-46e8-b96d-80269823118d + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 962fe96e-aa8d-4ea3-8a35-09c60ce3f4dc + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButtonCapsuleExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -5.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 7f6239f2-26e6-48db-8e49-57e348234bfa + - ! 88f531cc-523c-47b1-9231-7c166961c7a1 + - ! 8fd43d53-4707-4755-ae21-281babc4a8a5 + Components: + - ! 7893756e-c8a5-4329-8b06-67ff294f05ad + - ! f28b8cf7-a028-4cba-8eb2-7e6fc16ca5fc + - ! 7da90f4e-81a7-473d-899f-301ae7076b02 + - ! 6df7408e-475e-4290-b64a-6265f1d4f92e + - ! 68265c8d-084e-4f2d-9358-355e46cab9b5 + - ! 45df5018-4c58-44a4-a17a-af1b1cb86c97 + - ! 74d601a3-8d97-441a-af78-5ec2a963651e + - ! 31d5d1f8-ab79-49d8-a722-f663eda27502 + - ! 093fe896-cad0-4c59-9e5d-8c596a8b5f77 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Radius: 6.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: rocket_sparks + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 5.731080, z: -2.724091} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.500000, y: 0.500000, z: 0.500000} + hasSegmentScaleCompensation: false + Children: + - ! 6b8948bf-e1c5-4626-9164-fb0631b13322 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: false + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 008299c5-f728-4311-b3c6-21cbf5660edf + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "[EXAMPLE] Rocket Workshop" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 452961b7-9236-48e9-b535-1e628e00b8bf + - ! 527ee95c-27ab-41a1-9b9f-3c15e512454c + - ! 6e56c65c-de07-4946-8e5f-49a71f90c0a0 + - ! 295cbbb9-33c7-487b-84e6-d554de447334 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -11.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 96bd6fd3-2b4f-4872-9cea-6570d04b737e + Components: + - ! 1edd2162-cecf-4e50-a261-9a28f7437ae3 + - ! be79e43e-3607-42f5-93e6-051525a200e0 + - ! 8b609d83-09a7-40a8-8b77-0ae7dcf1077a + - ! ec316b3b-a56b-477c-96e9-a0567890c9c5 + - ! 9568cfe8-b1ac-46f0-b30e-9b99a150b655 + - ! 3d9571e4-4397-4319-9187-0d1f83c516db + - ! 34a80196-25d7-4d71-a961-d47be0cefef3 + - ! 6d036508-bb0c-4eeb-921a-e1c468dc27b9 + - ! 1a3fd670-c1c7-4069-9b59-df845362a260 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! cb2f009e-3cf2-4187-bf1e-aafac6787521 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 147eda9e-e69e-4729-9347-923da3806a94 + - ! b5d8cd4e-83c2-40d0-9e87-5f19ef7c71d3 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! b4b364af-ee41-4c86-a1ba-a055da762816 + Mesh: ! eb9c4a4a-8795-4ce9-9f28-3fa5870debeb + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 10.500000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e41c5417-fdd3-419a-9ef4-41a88bf0660d +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! abf278a6-03d8-4b2b-910d-181a46b9fb60 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! fd38210a-8026-44e9-9cee-4d1b1e58ce02 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 31f296a4-9650-4bda-8d4a-2c5237911dac + - ! 81d98ccb-8c72-4fa2-81f7-20f82941c51d +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: min + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5d0a5812-4c6d-46e6-a03a-09b60ae5de48 + - ! ec8cd9e3-7dc8-4ecb-96d7-b06b67802261 +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 17.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 90.000000} + scale: {x: 0.750000, y: 0.750000, z: 0.750000} + hasSegmentScaleCompensation: false + Children: + - ! 46e04b21-2fef-46ad-8f8d-a2385e2bb2b6 + Components: + - ! 008299c5-f728-4311-b3c6-21cbf5660edf + - ! 40d69b9f-db3c-4e61-90e6-1bea61a6f409 + - ! 3bfe7b5b-6278-469c-b93c-63a04f1d5b02 + - ! bf4529eb-f205-484f-8da8-77cf3ca78879 + - ! e2bc3d8a-f84e-4176-8b08-bbb6c90dd5d7 + - ! 9534ce89-22a4-46e9-8884-3d08d4c2c179 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! df969d23-af5a-4743-bd64-da3f32af946c + _offIcon: ! 26c35729-b4dd-45aa-a373-b7d47dc657e0 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: "Flight Path : A" + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 60 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 558e82e4-7a36-4097-a16b-3b20d9d0f94b + - ! 42fa7251-c134-40b6-ae21-9e0cba42bcb4 +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + border: true + constantPadding: true + allowScaling: true + autoScaleContent: true + isContentInteractable: true + allowTranslation: true + xAlways: true + yAlways: true + worldSnapping: true + isFollowing: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 16.000000, y: 32.000000} + border: ! 4.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: true + autoScaleContent: true + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 8.000000, y: 8.000000} + maximumSize: ! {x: 200.000000, y: 200.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: true + itemSnapping: true + worldSnapping: false + showFollowButton: true + useFOVFollow: true + isFollowing: false + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 27665dcf-a50f-4925-b8cd-994e028b53ee + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample Mid Bottom Left + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -5.000000, y: 9.500000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! fb715abc-a6ec-48ee-96b3-1d300b6f2562 + - ! e3c97abf-6ee9-42b3-bc7e-1876cca70142 + - ! 5236bf74-2c01-4cfa-8ac3-71def1454ab5 + Components: + - ! b143eab2-4afd-4fd9-ae30-48e2f75b53e0 + - ! c3b90554-5964-4b67-accf-60fbb2d7b79f + - ! a0cf2921-1212-43f4-a56b-59e3efd1efc0 + - ! 3d616bb9-24c1-4adf-98db-b952a6c24a59 + - ! c7f768bc-3c72-4081-9c99-c40b0d7c90b6 + - ! dac6b2b7-1406-4985-8845-ad76d0070ec6 + - ! 07f1854c-abc2-491b-b8bc-a3501222feb3 + - ! 5d5387af-074a-4c33-8685-b78f1dd4946a + - ! a73f6dac-8037-468f-8acc-3b6bd9e770d5 +- ! + PrefabRemaps: + [] + Name: Planet + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 65.821396, y: 27.248711, z: 25.771273} + scale: {x: 0.222222, y: 0.222222, z: 0.222222} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c8ebd78d-8835-4c00-8308-6da560d95db7 + - ! 774e1493-bd36-454c-b478-ec0cebda666a +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! ed7615db-bf66-4ceb-9b6d-94585dfba275 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -0.320000 + right: 1.000000 + top: -0.320000 + Offset: + left: 0.000000 + bottom: -16.000000 + right: 0.000000 + top: 16.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 719c49c1-7076-4ea4-8d23-f7c1ad81e9e1 + - ! dda21d7e-d8c9-4a0c-9917-d73df68d6f29 +- ! + PrefabRemaps: + [] + Name: Flight Speed + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.257892, y: 0.500000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1ddd3d02-2a53-4389-87ed-3851ec1a22f1 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 57e56f6b-0632-4d36-829e-5265b4e158ec + Mesh: ! 9ab42643-fa56-4906-8dc6-c9cb4b53034f + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.930451 + bottom: 0.520907 + right: 1.000000 + top: 0.672431 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Scroll View + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 100 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.050000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d7a4041c-a405-456a-abc8-fb551d8b3b00 + - ! c5214645-e492-4c75-9778-3acb61503472 +- ! + PrefabRemaps: + [] + Name: "[Manipulate Example] Mesh" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: 10.000000, z: -70.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7ccb99d7-f247-40cd-a69a-cebd151fb182 + - ! 15457eea-afed-4200-b815-e2aef7d0ae2d + - ! a4c763e7-2e1b-400b-bd95-8f3bb728f824 + - ! 62b8a451-7989-45b5-a6c7-ab02c30f30de + - ! 192195e0-0a93-443d-8f00-e0289ab40167 + - ! 98945bf4-a4c1-4e54-8dc0-3f743d184bbf +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 2e9e3044-964b-4715-bfd8-238f810af6ee + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 16323e0b-43a3-431f-b1f0-60029ae56ca5 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! e08f8232-5976-4c1c-8716-e28147a6ce64 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e561681f-2b18-4185-97c1-cc7eb1d9c312 + - ! f40445f0-9b9c-4ceb-a25e-3a52e31a2a60 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Launch Controls + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 70 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 1 + renderMeshVisual: ! 6777d912-e79d-4f3d-8a23-f24d7acdd522 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 6b4d1ad8-50d3-4889-9613-534d1419b60b + meshToggledHoverMaterial: ! bfb514bb-32ed-4bf6-8838-1d4b52a8878e + meshToggledIdleMaterial: ! 51d47a79-fa9a-457f-a979-7b3c7756d6be + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 93ccce6d-acaf-463c-a766-245dfa12e12c + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: SliderExample Mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 4.000000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 34a68439-22cf-4285-b2f3-249a4aea3de8 + - ! 46a75696-6bb4-47d5-bc0c-903f6a797471 + - ! ef252a02-e448-44b9-9e43-6cba7ea7c0f4 + - ! 4c032802-37e9-4902-aaf9-665af40ac96d + Components: + - ! 3e465dbc-1232-4f56-b1ca-07c71159540f + - ! 1e6e0c1a-8056-45a4-9f38-bfe26b3e43ba + - ! f0c19a19-fb2a-4151-a1a8-9fee620e28b2 + - ! ac621d0d-1025-411f-81cc-831e5e3dd00b +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7cf0f5b2-75b8-4fac-ad13-712007347647 + Components: + - ! 3e7c8539-ac4b-4c16-90f7-0ba5cfaf9039 + - ! 57a0a9bd-d681-49fa-80c2-d0495e522a5f + - ! 96965a44-9849-496b-b1be-38299b203558 + - ! 8be8a529-4d9e-4e24-b655-37d8b5bb7527 + - ! 1bc2d2b6-d80d-496a-b99c-ca9c78f7d72e +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Rocket Holder + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -100.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1f6fb280-f4da-4a40-8668-dab2d0ffece2 + Components: + - ! 3f4b2619-d506-476a-99d6-4261cb8173bc + - ! 4b15a9f7-2cc8-41c8-ba9e-c6c69e562721 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Manipulation Examples + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! abf278a6-03d8-4b2b-910d-181a46b9fb60 + - ! fd38210a-8026-44e9-9cee-4d1b1e58ce02 + - ! b487fcf3-002e-4822-9625-f02956fbb781 + Components: + [] +- ! + PrefabRemaps: + [] + Name: RocketLaunchControl + Enabled: true + ScriptAsset: ! c0c12ffb-ecd8-43f8-8d68-f490810b1be0 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + slider: ! 83fdf92e-7285-4864-b7f7-b56573f0e2e8 + animationAButton: ! a77c1eb1-9593-4438-87b1-ae63ecf14f5d + animationBButton: ! 6c6cb8b7-3a98-4d0b-aacc-d52cbec6726a + animationCButton: ! 4448e178-da1e-466c-832d-cb35015a7100 + launchButton: ! 4eef3acd-6894-43d4-b6e6-bba4bc729457 + rocketConf: ! a97c37a8-109a-4866-9e37-56d6c8a9c1f8 + launchSparks: ! 6b8948bf-e1c5-4626-9164-fb0631b13322 + rocketAnimationPlayer: ! 4b15a9f7-2cc8-41c8-ba9e-c6c69e562721 + flightPathText: ! d2e60671-ae1e-419a-ac5e-3759a34df741 + launchPlatformToggleButton: ! 7b503393-b7d7-4fee-bebc-2e0a0a158c3e + launchPlatform: ! 10ef1717-a0b6-4e65-a7d9-44f91b6017cd + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: PinchButtonSphereExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.000000, y: -11.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! f529cf51-4d88-432a-b6e5-ad66743c842a + Components: + - ! ec0281d7-e1b5-4e83-8b50-235ecc55df4e + - ! b15a8977-a4d7-4f88-9377-4f12a2485f82 + - ! 2a648635-29d4-4da9-a0f3-487a1ed5149b + - ! 135c6c93-94ae-40eb-9436-9d5c7d4c1b76 + - ! d7dd6d05-6624-4493-851c-85aac0ab3ad0 + - ! 003e260b-935f-42ae-8dab-6f258ac7d789 + - ! d904c42b-301a-4dae-81f5-1c8d5d888d3f + - ! fc907ca1-b2f4-4ae3-b49c-9f8448ca0be8 + - ! 167de8eb-9f40-4d6f-8d89-3beba468e431 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7630d75e-c089-474f-917b-7571a900f1e2 + Mesh: ! dfb8556d-a943-41b2-a69f-1a525c358172 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! afc5e3b1-eccd-4f59-a2f8-53a0a63bd646 + Components: + - ! 181b1c2b-67d6-43d2-8fbc-91f5fa73afd4 + - ! 2db42466-df60-43ff-b942-b0eedd705abe + - ! 95bad5d6-34df-4c97-aaf5-d087a1ff442c + - ! d8bdabcb-8617-4d4e-a10f-8cdd5d4e441e + - ! 200c5a89-e479-42ed-8295-8c590be8fe67 +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! 046ad65b-f330-4692-9807-fbd95f8061f2 + knobObject: ! ef252a02-e448-44b9-9e43-6cba7ea7c0f4 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: min + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Recents + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 75 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.700008} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.700008} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.050000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ffb9811f-92b4-4514-ac28-2aa421dc9dfe + - ! 5af59c8c-af51-4d43-86dc-b441125fe967 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Content + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cd286a5c-5e95-4cb0-8680-5a238eebc33a + - ! abccdf94-337b-49f8-abf3-6b04e29d0ff4 + - ! d07d1906-eaea-4b71-92d2-bea1f8736f92 + - ! 69b71a12-2618-41f9-b62f-91ddaabb2c47 + Components: + - ! 7c8ea070-1726-4ee0-9f1e-aae5c2570841 +- ! + PrefabRemaps: + [] + Name: ExtendableCapsuleExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -17.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2fcf0bf7-bd26-4474-b860-5a6c02503cde + - ! a151c0ee-4b33-43aa-b9f4-25bf06a0adeb + - ! 5a790996-2d06-4b8d-9852-7165ac56527e + - ! c0e12f13-2832-412e-a65a-e58f29950dc6 + - ! 3abc2130-bd88-4fb0-9f9b-2637a20f2c13 + - ! 8de418d3-b497-4ee3-aef5-c35c7c478a08 + - ! d80f0595-4e1d-448e-afef-e21fcc80f521 + - ! 7eb53a6f-c678-4769-86c8-ffa9d6a29bc8 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! cb2f009e-3cf2-4187-bf1e-aafac6787521 + - ! 8679a711-e9c7-462f-bc36-bd5b8153194a +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Satellite + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: 0.000000, z: -100.000000} + rotation: {x: -65.090828, y: -16.609848, z: 40.221401} + scale: {x: 4.500000, y: 4.500000, z: 4.500000} + hasSegmentScaleCompensation: false + Children: + - ! 5f9a3157-9983-428f-93e6-951c5b5c929f + Components: + - ! 89a48c4f-a109-4b28-ae6a-9f30cf6965a2 + - ! 70220405-5a89-42d6-97bf-e1cc16af5e4a + - ! cc753256-5251-4a2a-82fc-52cff4435a21 + - ! 87327542-7e05-4d3a-89e5-294fe706fce6 + - ! c96dd1f8-ec5d-493d-a625-9b2970317b56 +- ! + PrefabRemaps: + [] + Name: Headlock + Enabled: true + ScriptAsset: ! 37c21f9a-dd95-4665-ac5c-60c72e00954d + ScriptInputsDefault: + _distance: true + _xzEnabled: true + _xzEasing: true + _yEnabled: true + _yEasing: true + _translationBuffer: true + _lockedPitch: true + _pitchEasing: true + _pitchOffsetDegrees: true + _pitchBufferDegrees: true + _lockedYaw: true + _yawEasing: true + _yawOffsetDegrees: true + _yawBufferDegrees: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _distance: ! 50.000000 + _xzEnabled: true + _xzEasing: ! 1.000000 + _yEnabled: true + _yEasing: ! 1.000000 + _translationBuffer: ! 0.000000 + _lockedPitch: true + _pitchEasing: ! 1.000000 + _pitchOffsetDegrees: ! 0.000000 + _pitchBufferDegrees: ! 0.000000 + _lockedYaw: true + _yawEasing: ! 1.000000 + _yawOffsetDegrees: ! 0.000000 + _yawBufferDegrees: ! 0.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: BillboardExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 10.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 56d3fd6e-f907-4278-b5a6-0018fe1b0c8c + - ! 106da489-c9ac-43c5-a0d6-fb0b298dafa5 +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 702c7723-1685-4104-adfb-d00ae5caf8b0 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 36d23b92-f05c-4013-8bf2-28e6662dedae + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/SIK Examples.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/SIK Examples.prefab.meta new file mode 100644 index 00000000..d0b8f4b9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Examples/SIK Examples.prefab.meta @@ -0,0 +1,11098 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! fd1bc086-aa02-4e60-a264-3d7710070b7f + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! fd1bc086-aa02-4e60-a264-3d7710070b7f + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! 7b84dd37-b48b-4715-b5da-cfdd381e906f + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketLaunchControls + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -35.000000, z: -30.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 98569155-7715-495c-9b96-2ba85403c63a + - ! 65dece1d-d9d4-4987-947a-8989ed8c7904 + - ! bf9ec558-adb7-4b56-9b86-f3af03dd7d3d + - ! cd03d3c5-a16f-46ed-8a51-1f377d8f3a92 + - ! 268d83d8-6f2e-443f-ba85-15477ea4c95c + - ! b18902a1-dd9b-495c-afb7-338b78e8472e + - ! fc7ee13d-1b3a-4dc5-90d9-74846b86725a + - ! 471244bb-2341-42cb-898b-c31df1cbbd6d + - ! ee12b99f-3f19-4974-ac22-a3b10edd222a + - ! e00e14e8-dc62-4125-8226-d9548ccd872f + Components: + - ! b899bb31-024b-4638-9c5a-54c2a71fb0d1 + - ! 54bd2b86-8e51-48fb-8099-7f0b702cb041 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -0.320000 + right: 1.000000 + top: -0.320000 + Offset: + left: 0.000000 + bottom: -16.000000 + right: 0.000000 + top: 16.000000 +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + border: true + constantPadding: true + isContentInteractable: true + allowTranslation: true + minimumSize: true + maximumSize: true + xAlways: true + yAlways: true + useSnapping: true + itemSnapping: true + worldSnapping: true + showFollowButton: true + isFollowing: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 31.000000, y: 40.000000} + border: ! 4.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: false + autoScaleContent: false + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 10.000000, y: 10.000000} + maximumSize: ! {x: 300.000000, y: 300.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: false + itemSnapping: false + worldSnapping: false + showFollowButton: false + useFOVFollow: true + isFollowing: false + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! e1c24e6d-6811-41de-a1d2-9c04e5cd21c1 + knobObject: ! 4ad86e01-dbe5-4c10-9a56-6ba3e17a1a58 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.050000 + meshVisuals: ! + - ! 0fba4b93-4ed1-4ad0-9e9a-7abd2ea2040e + - ! 3b7b90e8-b154-4678-aec6-b4644aad37a4 + - ! 43e187b9-6cfe-4f55-9c0d-da5aef53b9ab + - ! 4e312a81-ccf8-4ca9-8d22-3e4f8e3bc25e + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: max + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 33bcfd9d-61f2-4979-8393-543036ba439c + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Scroll View + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 100 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.050000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 284edbad-69b8-45dd-9357-c81c7294d80b + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 271b74cf-8459-4dd1-83a4-91af22fc6f5f + meshHoverMaterial: ! 74679e29-9817-463b-9427-ffff4cccb602 + meshPinchedMaterial: ! 43cbc95f-b089-4e59-a639-ca3950ebd1b5 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: BillboardExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 10.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 51304556-9d24-4779-9eeb-8c187004353f + - ! 44753bb4-5497-4535-9fca-619d2b472e58 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Planet + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 65.821396, y: 27.248711, z: 25.771273} + scale: {x: 0.222222, y: 0.222222, z: 0.222222} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! fda33b4c-8b79-4283-b700-15eaf6ad21c0 + - ! f0d95b32-82b6-47a7-9172-0524d4afc53b +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Launch! + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Text3D + Enabled: true + RenderOrder: 14 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! e6189357-b3eb-4ed5-8a07-593c3328fc24 + Text: HeadlockExample + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 75 + ExtrusionDepth: 0.500000 + ExtrudeDirection: Both + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + ShadowMode: None +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f30b1cbf-55cb-4854-918a-d6f5b68ff302 + Mesh: ! 18828ccb-4865-4bf5-b7c5-fdec9ae7650e + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.000000, y: -5.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! 5d3dce7b-0dc3-4ab8-a283-fa730d3ff3b2 + - ! 963efe2d-6a9c-4ac8-a191-5b09acdea953 + - ! 9d31774c-1b26-42a4-8819-3e7746b7436f + Components: + - ! 84c92320-773d-4a98-9185-ef096ebabe5d + - ! c832fc4c-5a59-4811-bd70-55548a2543cd + - ! c8905894-9b42-4b0d-9e44-6ecb3e33ea36 + - ! 8ac49ea1-ed38-47a0-89ed-23d1ce668176 + - ! 3f034f8e-14bc-4288-bf09-650dff1666d2 + - ! 987d94d8-c8b2-4b5f-a2dc-098e130c7443 + - ! 736c95ff-b5c8-48ce-998e-267301c3b5e9 + - ! e9388cb2-e5c9-4d72-a2f7-e721ad987ece + - ! c16fe00f-777c-4105-b43d-8f5417845f0a +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 448c56cf-332f-4b67-9f3e-30e8c9cf50c9 + Components: + - ! 7205d878-4bf3-4090-be15-cb6fd7616ba7 + - ! 2e2f85ff-86f2-44a6-9282-5a47a6c9e9d2 + - ! 1b159012-a3e8-4980-837b-f2afc877ec2f + - ! 19a1c053-73d8-48ba-b212-eb44ca4cac6b + - ! 34485431-89f8-4f98-a385-2eadf4893e18 +- ! + PrefabRemaps: + [] + Name: Meteor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 121.091568, y: -23.471666, z: -5.285858} + scale: {x: 0.222222, y: 0.222222, z: 0.222222} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7fbf0963-2f6c-483f-b7eb-6442552159a3 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: SIK Examples + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c5cc7e41-6ff8-48d3-8ae5-298def82f8bd + - ! 22105929-9790-4715-b5b9-a1a3e171eb23 + - ! ace18319-5e08-4aa2-a0e7-c8b5ca7861ee + Components: + [] +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: "[Manipulate Example] Box" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: -6.000000, z: -70.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4b2f1f33-b501-48c0-a2aa-adb63c510232 + - ! 610c072b-c01f-4a77-92bf-12b81c5af335 + - ! 24477947-3247-4c63-b5dc-1a142c148393 + - ! b452849c-342a-48c8-ae4f-6f9f0af79f77 + - ! 2e05a4bf-082f-4c6b-88ca-3536ba47bf15 + - ! 60f55125-b0af-46db-8f79-00a6a8e98856 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + border: true + constantPadding: true + allowScaling: true + autoScaleContent: true + isContentInteractable: true + allowTranslation: true + xAlways: true + yAlways: true + worldSnapping: true + isFollowing: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 16.000000, y: 32.000000} + border: ! 4.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: true + autoScaleContent: true + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 8.000000, y: 8.000000} + maximumSize: ! {x: 200.000000, y: 200.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: true + itemSnapping: true + worldSnapping: false + showFollowButton: true + useFOVFollow: true + isFollowing: false + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! 5bea567e-d091-4432-a0cd-f4e27f84743a + knobObject: ! 128e164f-ec19-4305-abf0-2467aee894d6 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! d2d00557-3420-44fe-be7f-ea7863ad591a + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 962fe96e-aa8d-4ea3-8a35-09c60ce3f4dc + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "[Manipulate Example] Sphere" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: -22.000000, z: -70.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b3c63f17-7988-4a99-9e05-3395570423d4 + - ! 68c1b242-6b55-403e-a02a-648ec0c3dc2a + - ! 76093a5a-0062-4982-a83d-5a45e071aaa2 + - ! dccfc25b-d760-4889-b488-67a6b4823d04 + - ! 31243a47-1f88-4b17-8bea-2e5994c9f7e0 + - ! 7c8f3134-2a44-4041-aa46-2007e4990ade +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.930451 + bottom: 0.520907 + right: 1.000000 + top: 0.672431 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScrollBarFeedback + Enabled: true + ScriptAsset: ! 37bf0d33-fcd6-4d18-8150-19002357972e + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + scrollbarObject: ! 76cb4f35-031b-4a4a-a99a-a484672cd586 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e1c24e6d-6811-41de-a1d2-9c04e5cd21c1 + - ! af8a6f90-8e75-41fb-a485-d09e39baca84 +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _onIcon: true + _offIcon: true + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 00000000-0000-0000-0000-000000000000 + _offIcon: ! 00000000-0000-0000-0000-000000000000 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollButton + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: -90.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! aad54900-794a-41ae-adbc-4d8e74af4626 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Meteor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: -18.000000, z: -100.000000} + rotation: {x: -118.520844, y: -7.233747, z: -22.973654} + scale: {x: 4.500000, y: 4.500000, z: 4.500000} + hasSegmentScaleCompensation: false + Children: + - ! 134763a3-7c99-4957-86c0-4903180533a8 + Components: + - ! 6ef0380d-8354-417d-8843-b4fdc495488a + - ! 815233cc-f9b3-4b65-bb71-5920232efcc7 + - ! 7327effc-f997-4cf9-969a-16305130820c + - ! 2851c00a-6ea4-44ba-a09d-2bb3c64b1fd1 + - ! a867dbaf-7978-4f52-861e-8d000a4cd232 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! b4d267b3-32be-411d-ab20-fe7c056f6b3e + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d7c52113-ff98-4df8-8095-c1e3beb17f02 + - ! 55e72539-f87e-4da6-ae9d-697e297631fc +- ! + PrefabRemaps: + [] + Name: "[EXAMPLES] Simple Interaction" + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3ef8fb01-59e9-422a-9ef6-1c49ba13bca5 + - ! 15647a3f-1dc9-4c29-b2b6-e6f9b0e55cde + - ! 1a219ac7-b0bc-4f1e-a9eb-d17ec7aab94f + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 11 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 0607447c-e8df-4721-9c51-777e973d74eb + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 15647a3f-1dc9-4c29-b2b6-e6f9b0e55cde + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Path Option C + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 6.000000, y: 4.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6e567238-4aff-45a4-9424-1dd73eb27d36 + - ! 5c9b03c9-7dd2-4cf4-b4b2-38558c664aeb + - ! 59fb95f6-9367-4ac9-8ad9-3aba1014b5b8 + - ! ef21dadf-ac3e-413f-a6f4-125d9092917a + - ! b399869b-ec00-43db-9eb5-69efbd75ab0e + - ! 71b68656-1364-4473-afae-1e63195e3feb +- ! + PrefabRemaps: + [] + Name: ScrollViewContent + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5e3a9338-b250-4734-b249-d6488faa5387 + - ! b59fc08b-0919-4078-af95-859bf1324d2c +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f3aabf66-de47-466a-9242-e8e6df3aa5e7 + - ! b1c2cb8b-0da5-4508-89ba-e53376517b76 + Components: + - ! a1f69f30-ac04-4abc-90b2-407898a44115 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 27665dcf-a50f-4925-b8cd-994e028b53ee + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.075000 + meshVisuals: ! + - ! 7fbf0963-2f6c-483f-b7eb-6442552159a3 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleButtonCapsuleExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -5.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 80e5a349-1c64-4b7c-869d-612771709af1 + - ! 908039ca-7d66-4fad-8e47-a7c3e419324a + - ! 5ebdc306-6d8f-4dba-a275-295bbb3e5e74 + Components: + - ! 910ba6a0-7ad6-4873-b8bb-b063dfd20907 + - ! 25038d3c-8f24-46aa-916c-25fadac45637 + - ! 90d69fa4-0ff3-4ccb-b1eb-b2cb2ecd9c8a + - ! ac44a234-b2c7-40bc-b165-14d49f6c7bdd + - ! cb7dfd36-1fcb-47a9-b875-88d19a0449c0 + - ! f0c7eadc-7e5a-4349-bd41-fc87c22bab55 + - ! 5531fd70-cb54-49a1-858a-21d2fde36388 + - ! 71cdd623-c1c1-406b-8763-25063c7086da + - ! 4dc0d48c-440f-4f8e-94b8-86e7294f83d2 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.075000 + meshVisuals: ! + - ! fcd13b59-7324-440e-a032-b9fd0b8b7c8e + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! acb0e3c0-808b-4dc5-94e6-ef2eb014797d + - ! 8701d1b0-4ea7-42b7-bb76-38623bbd1d94 +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! a61a9f44-749a-4bca-b2e0-acd3db5fd701 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 344dc46f-f5a7-499f-9f38-40743c27710e + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 16323e0b-43a3-431f-b1f0-60029ae56ca5 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 943996f2-d5c5-4546-8fc7-35ba7e25aafc + - ! 919a0c9f-3887-4f56-a354-6a97a4701ad8 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -0.320000 + right: 1.000000 + top: -0.320000 + Offset: + left: 0.000000 + bottom: -16.000000 + right: 0.000000 + top: 16.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! b452849c-342a-48c8-ae4f-6f9f0af79f77 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f19bb22d-47a7-4b02-9340-8295bca0de78 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: SliderExample Mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 4.000000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! f5286577-cc5d-42af-8aed-9f68c4479224 + - ! f63c5971-e0d6-4942-95b0-5b67162adffd + - ! 128e164f-ec19-4305-abf0-2467aee894d6 + - ! 2747806d-ff8b-4fce-ac20-c931c122dfb5 + Components: + - ! 1e32ed97-e3c3-4185-8e3d-e237cf490ee5 + - ! 33a50a0f-82b6-43a9-bcc6-b64611af165a + - ! 18f7410b-0c8f-4ac3-9d62-b44d0602835c + - ! 728d7444-a285-43c2-9e47-64208917cf90 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.025000 + meshVisuals: ! + - ! dccfc25b-d760-4889-b488-67a6b4823d04 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + ScriptAsset: ! 6ad8e076-1f73-4dde-9236-fd993752a829 + ScriptInputsDefault: + _debugDrawEnabled: true + enableHorizontalScroll: true + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: true + scrollAreaBounds: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _debugDrawEnabled: false + enableHorizontalScroll: false + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: 0.300000 + scrollAreaBounds: ! {x: 1.000000, y: 1.000000} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + _minValue: true + _maxValue: true + stepBehavior: true + _stepSize: true + toggleDuration: true + editEventCallbacks: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnValueUpdate: true + onValueUpdateFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: ! 0.000000 + _maxValue: ! 1.000000 + startValue: 0.200000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! f3aabf66-de47-466a-9242-e8e6df3aa5e7 + sliderMax: ! b1c2cb8b-0da5-4508-89ba-e53376517b76 + _sliderKnob: ! 128e164f-ec19-4305-abf0-2467aee894d6 + editEventCallbacks: false + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 00000000-0000-0000-0000-000000000000 + onValueUpdateFunctionNames: ! + [] + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 72a0faae-ee70-43db-94a5-b6eefc73eebb + useGlowMesh: true + glowRenderMeshVisual: ! 29383fa0-4093-4e63-884b-0fb2052eae1a + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! d7ccef9e-ae51-4e26-9634-922fadb15639 + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: 0.075000 + meshVisuals: ! + - ! fda33b4c-8b79-4283-b700-15eaf6ad21c0 + - ! f0d95b32-82b6-47a7-9172-0524d4afc53b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 7893e248-8c53-4dff-a565-26b5f8ec60f2 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 1766b243-ecbd-49ab-99a0-0a126bf505c7 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Content + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! eadfad91-c278-4805-877a-e6881f77844b + - ! 4337a78c-8014-46be-ac98-67797c1edf10 + - ! cb7a9788-8b86-48d1-9c62-ad54d785c2e9 + - ! 9cabd166-02ec-49f7-b29c-5bf242f69758 + - ! 91eaf3f9-a9eb-4b59-be67-2dd6d2dd4d0a + Components: + - ! 6918f245-9d0b-4dd8-999b-b7e875199104 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7630d75e-c089-474f-917b-7571a900f1e2 + Mesh: ! dfb8556d-a943-41b2-a69f-1a525c358172 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewCanvasExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -40.000000, y: 0.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3b729ec8-102c-40bb-8224-d1fb557393e8 + Components: + - ! f7898e65-e5a5-407c-878a-037830626f13 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 917c4645-20fc-4578-b743-0e62cec94cb3 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! f3197aee-abdb-4673-8278-929017e3caa1 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "[Manipulate Example] Mesh" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: 10.000000, z: -70.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! bd216985-981f-4df5-a5cb-94ffed60abfb + - ! b5a66652-d80a-4f04-8ec6-13f5f8fa3020 + - ! 954bd88a-8001-4d82-96e5-d818c6e4f7ba + - ! fcd13b59-7324-440e-a032-b9fd0b8b7c8e + - ! 29f85aa3-3335-4d0f-96e3-4dd59e80db24 + - ! df699017-3086-4026-b95e-c787215c811f +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 7b48f510-7cfb-4b62-b3ad-2db8eb879a10 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 5 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: Categories + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1abc710b-fc37-46ec-9a8c-f68fb6996f94 + - ! a85530b4-a696-4e00-8710-703d96fd4b5d +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! f373af33-29fc-4ac4-a507-514a4d13fd0b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 5d1d6397-ae85-4e5f-ab2c-6cce45791d26 + Mesh: ! d5389096-6ff6-4687-a39d-88838ca6ce61 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Flight Speed + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 60 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Rocket + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -0.064316, z: -5.097826} + rotation: {x: 90.000008, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8ed6703a-e1c0-4513-8b18-d617dcfbec6a + Components: + [] +- ! + PrefabRemaps: + [] + Name: Billboard + Enabled: true + ScriptAsset: ! b5593251-a0da-4491-8561-2e0dccd715bc + ScriptInputsDefault: + _xAxisEnabled: true + _yAxisEnabled: true + _zAxisEnabled: true + _axisBufferDegrees: true + _axisEasing: true + duration: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _xAxisEnabled: false + _yAxisEnabled: true + _zAxisEnabled: false + _axisBufferDegrees: ! {x: 0.000000, y: 0.000000, z: 0.000000} + _axisEasing: ! {x: 1.000000, y: 1.000000, z: 1.000000} + duration: 0.033000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 714e02cf-585a-4270-816e-5bbc2e08fe6a + Components: + - ! 72a0faae-ee70-43db-94a5-b6eefc73eebb +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Launch Controls + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 70 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Show Platform + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.257892, y: -7.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9426cda8-901b-4467-9e13-d1096e2fdd21 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 33bcfd9d-61f2-4979-8393-543036ba439c + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 90c081b2-59c0-435a-9af5-db45937168e4 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6bdf8c65-b25c-441b-a35c-71646b78cb61 + Components: + - ! edd30ada-8a85-44ce-a4fd-ad51935de939 + - ! d09d6b08-4155-47fe-b6ca-96e9c8d20b04 + - ! 9dc22f59-7633-489f-b339-b84f19ba548c + - ! 569a0ae4-90ed-44d6-9de4-99fbba0223de + - ! 5a23cf7b-0d90-45cf-bbdf-912ddea4c5c9 +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 941e28cc-de87-4b59-b202-a39797d1271f + - ! 6dc88105-5ee5-475a-9557-5101c0c43b9f + Components: + - ! 4fabe891-3f97-4036-ade4-b073e5f4b174 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! abf0e718-466a-44e0-a7f0-664d4eb50d5c + - ! 68d20d9e-3506-4565-9361-612edb5246e0 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 216f7c8e-9e81-4522-8fba-2c2ec37b196d + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 15edb898-3bb4-41a8-82f3-3c6b0a3dea3f + - ! b0f7d78d-3c97-4a8b-956e-d3d40a937aa4 +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 09db06bf-3b9e-41dd-b6a0-a7da122ffade + Mesh: ! 41ed7fd3-6772-4318-9758-7be2e92a7d59 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 14.000000, z: 1.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! eb2b94ae-75b2-4852-a980-6093135093b0 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: min + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 13 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 4d35bac2-e858-4d9c-afa4-6f02ae7d5065 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 95091fa6-0b55-4ba0-8794-738888ee725f + _offIcon: ! 71319c82-a204-4c51-9164-92c4938f210d + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Rocket Parts + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 120 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Planet + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: 17.000000, z: -100.000000} + rotation: {x: -41.182346, y: -19.682274, z: 2.537930} + scale: {x: 5.000000, y: 5.000000, z: 5.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0c2fe073-11d3-4994-a5a4-28552c28b3b1 + Components: + - ! 80f510ce-c947-46e5-8df8-1037ba35dac1 + - ! 081cf0f7-d8d2-47ae-bf4b-f6d949476320 + - ! e4d20e1c-1bd5-446a-8a2f-ef748527ad5b + - ! 357055f3-eabd-40ef-840c-60151bb5b93d + - ! af5c7285-6452-4dd3-86f8-a8e7ca80fcb7 +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! cd9f6a7c-995e-4787-ad13-9b0cb9054b6f + - ! 83aa7f02-08b3-4cf0-af5c-1da4746baf4e +- ! + PrefabRemaps: + [] + Name: Content + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 586740af-5848-4db3-934e-ac1b355c3954 + - ! 8d6f3798-2b45-4f78-8472-bdbb6a18498a + - ! 76cb4f35-031b-4a4a-a99a-a484672cd586 + - ! 75c714f6-fafc-499f-9823-44b94aa49dca + Components: + - ! a19f6ffc-b546-463d-8d56-00de2b49d9e1 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketLaunchControl + Enabled: true + ScriptAsset: ! c0c12ffb-ecd8-43f8-8d68-f490810b1be0 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + slider: ! c5e4e2f6-6a4c-4c04-bfea-f04b7efc0e39 + animationAButton: ! bf9ec558-adb7-4b56-9b86-f3af03dd7d3d + animationBButton: ! cd03d3c5-a16f-46ed-8a51-1f377d8f3a92 + animationCButton: ! 268d83d8-6f2e-443f-ba85-15477ea4c95c + launchButton: ! e00e14e8-dc62-4125-8226-d9548ccd872f + rocketConf: ! ce2fde66-cadc-4d86-97a4-9c45b257d536 + launchSparks: ! 6015cc18-9414-4f3b-9aa4-4283771ed4d7 + rocketAnimationPlayer: ! 55406b2c-4d46-4d85-ba95-0c9e50a1493f + flightPathText: ! e5dd6f7d-966d-4ed8-bfeb-f37db6b48658 + launchPlatformToggleButton: ! 1bf0d431-ce81-4485-891a-20241a415173 + launchPlatform: ! b3172fd7-fb4c-4a27-b922-7deb73d24d68 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Headlock + Enabled: true + ScriptAsset: ! 37c21f9a-dd95-4665-ac5c-60c72e00954d + ScriptInputsDefault: + _distance: true + _xzEnabled: true + _xzEasing: true + _yEnabled: true + _yEasing: true + _translationBuffer: true + _lockedPitch: true + _pitchEasing: true + _pitchOffsetDegrees: true + _pitchBufferDegrees: true + _lockedYaw: true + _yawEasing: true + _yawOffsetDegrees: true + _yawBufferDegrees: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _distance: ! 50.000000 + _xzEnabled: true + _xzEasing: ! 1.000000 + _yEnabled: true + _yEasing: ! 1.000000 + _translationBuffer: ! 0.000000 + _lockedPitch: true + _pitchEasing: ! 1.000000 + _pitchOffsetDegrees: ! 0.000000 + _pitchBufferDegrees: ! 0.000000 + _lockedYaw: true + _yawEasing: ! 1.000000 + _yawOffsetDegrees: ! 0.000000 + _yawBufferDegrees: ! 0.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 29ab70e8-85d8-4339-a569-1c3cba5b4f85 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Animation Player + Enabled: true + Autoplay: false + ClipRangeType: Frames + AnimationClips: + - ! + AnimationAsset: ! 8811a6ee-076e-4144-a4e2-0cdc9e2fe3c2 + Name: Base Layer Rocket 1 + Weight: 1.000000 + PlaybackSpeed: 1.000000 + Begin: 0.000000 + End: 400.000000 + Reversed: false + Disabled: false + BlendMode: Default + ScaleMode: Multiply + PlaybackMode: Single + - ! + AnimationAsset: ! 7eba6aa9-4ba6-4792-9195-8471fd86103b + Name: Base Layer Rocket 2 + Weight: 1.000000 + PlaybackSpeed: 1.000000 + Begin: 0.000000 + End: 420.000000 + Reversed: false + Disabled: false + BlendMode: Default + ScaleMode: Multiply + PlaybackMode: Single + - ! + AnimationAsset: ! af080ccb-4a5a-400a-aa23-a9f0d85ad3e1 + Name: Base Layer Rocket 3 + Weight: 1.000000 + PlaybackSpeed: 1.000000 + Begin: 0.000000 + End: 360.000000 + Reversed: false + Disabled: false + BlendMode: Default + ScaleMode: Multiply + PlaybackMode: Single +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: min + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! fa309a02-3377-4258-82b7-39992499c9ef +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a00c1f61-5ac9-4de7-a50b-9d79f8752275 + - ! 51e6f8a7-8f2f-41d7-ba23-cec56ddae92a +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 2d1d201d-5916-4b8c-9734-61870a09a3b0 + useGlowMesh: true + glowRenderMeshVisual: ! f19bb22d-47a7-4b02-9340-8295bca0de78 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 72813d4c-5965-40fc-b436-27385ed100d2 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ee5a38f8-6b3c-425a-90e8-babde063e515 + Mesh: ! 3e3dc67e-f8de-4502-b790-51fa5c73c19b + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 7b48f510-7cfb-4b62-b3ad-2db8eb879a10 + - ! 4a853a86-5206-439c-8488-f968c7ff182d +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2b77e527-3ff0-46bc-8e03-aa0ccea0c75e + - ! 678e13aa-9d64-43d5-879e-570070b57cc3 +- ! + PrefabRemaps: + [] + Name: Rocket_sparks + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5d00a934-7f01-4903-9d46-1c911be02391 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! f7d5c2ac-40e4-44a4-a513-d410ac0ec371 + _offIcon: ! 83813777-6075-43f1-82bd-dd9fa1bdb948 + _isToggledOn: true + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 13 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ab483a45-8677-4f11-8cd0-5c5d4a239a94 + Mesh: ! e7bb3308-12a7-4fa8-93b1-14b414b79f5a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Flight Path + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.257892, y: 7.500000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e5dd6f7d-966d-4ed8-bfeb-f37db6b48658 +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! a18286e9-69b4-476e-b31e-df7c4f96e8b2 + useGlowMesh: true + glowRenderMeshVisual: ! fa309a02-3377-4258-82b7-39992499c9ef + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + meshHoverMaterial: ! 033d682e-f69d-49e1-800b-29ad4331fe72 + meshPinchedMaterial: ! 66dc6856-da5a-49e3-a0d3-efbc987b4e4c + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketConfigurator + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ce2fde66-cadc-4d86-97a4-9c45b257d536 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 7 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: | + Toggle Off + + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 0.984314, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: true + Radius: 6.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! acb0e3c0-808b-4dc5-94e6-ef2eb014797d + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 72813d4c-5965-40fc-b436-27385ed100d2 + - ! 7c5dcebb-0900-4243-a758-3da5579bcaef +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3068e301-a3cd-465f-9013-b5984590f9e0 + Components: + - ! 2d1d201d-5916-4b8c-9734-61870a09a3b0 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: SliderFeedback + Enabled: true + ScriptAsset: ! a2c5daa0-6760-44b1-a1ce-0ff015888b17 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + renderMeshVisual: ! cd9f6a7c-995e-4787-ad13-9b0cb9054b6f + knobObject: ! 8b0858fb-58dc-4815-8a17-d136339fd301 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9fec5151-3627-4955-a017-f5b60c13c936 + Components: + - ! d242dcea-d618-4533-aa8b-555cb4d91b76 + - ! c843ac64-eed4-4b12-9a66-59afe41554f5 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Radius: 1.300000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9ca6e110-f3e5-4bd9-8bdc-1c4761f1723a + - ! d61b0c61-1140-4617-8dc5-b7acabd3a548 +- ! + PrefabRemaps: + [] + Name: Round Button Glow + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 29383fa0-4093-4e63-884b-0fb2052eae1a +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! 6e567238-4aff-45a4-9424-1dd73eb27d36 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 8d858ff6-aa23-4863-b2df-a5af56b736da + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 42028df6-f4bf-4e31-8e15-8ee907ae2e84 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -5.000000 + bottom: -1.050000 + right: 5.000000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 1f00b8fd-a622-451a-9934-9901a8a16763 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! 11710e50-1a5c-470e-9548-5e93183560ed + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 216f7c8e-9e81-4522-8fba-2c2ec37b196d + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2bf55a32-de54-4aaa-84a1-27e8b92e6fb9 + Components: + - ! 864f7adf-80ee-437e-bfe2-afcd38d0d7b2 + - ! 17809aac-2637-408f-b206-8f752cbdec7b +- ! + PrefabRemaps: + [] + Name: ScrollBarSlider + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 17.000000, y: -6.500000, z: -0.250000} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.750000, y: 0.750000, z: 0.750000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a1c729d4-081c-4efa-8ffb-5a942c982101 + - ! 1b0e2dd1-230d-47c7-a241-f8bb0631aa36 +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 1a219ac7-b0bc-4f1e-a9eb-d17ec7aab94f + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 17.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 90.000000} + scale: {x: 0.750000, y: 0.750000, z: 0.750000} + hasSegmentScaleCompensation: false + Children: + - ! 1ee897fc-a725-4210-b806-17bc2b44575f + Components: + - ! c16ed259-fa21-43a0-8b74-0e327d8ac125 + - ! 771291be-35a7-484d-92fa-13c0ed1826f9 + - ! 8b488e5b-6ee6-4eba-a7c2-a95d036c44cf + - ! 888fff1b-1424-450e-bba4-bde2441faaeb + - ! aec4c38f-121d-43e0-8c8a-f35eccf56aee + - ! ff072225-c032-4741-8447-f74cf2ac6568 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 12 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 182db9f2-4d62-49ff-8cfe-55c29488a2e8 + Mesh: ! 45bdf724-f7f0-4a8b-b6c9-191da2777f09 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample Mid Bottom Center + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 9.500000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! 6a3a050d-2b41-4258-b2a9-f1d6f4badefd + - ! f7d5c2ac-40e4-44a4-a513-d410ac0ec371 + - ! 83813777-6075-43f1-82bd-dd9fa1bdb948 + Components: + - ! c6716f04-8f6c-4655-a49b-dbde0a9e0a47 + - ! cec3c0b8-d104-4f1d-a034-f307673fabda + - ! 3f6dfbd0-cf57-48eb-80ef-ae49ecf44237 + - ! 61bd6ad4-2e9e-4a54-95ca-6a12e8df750b + - ! f9831512-5025-4582-a780-9a8e7a1dee81 + - ! 8abd0fe8-dc7d-457b-93c4-97be80c52cbe + - ! 3755b435-cbf0-44cb-ba7e-9e18ba2c2d27 + - ! 5bafc35a-792b-4965-a9c6-fe3e3dc76c45 + - ! 5ca9483c-fea1-49c6-8118-40390cf35d89 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + SourceRemaps: + - 003e260b-935f-42ae-8dab-6f258ac7d789: 082bd327-fd12-4e4b-951a-5daa2cd50a57 + - 008299c5-f728-4311-b3c6-21cbf5660edf: c16ed259-fa21-43a0-8b74-0e327d8ac125 + - 00cec48f-5242-404e-a5fd-78f05c69d591: 72abb230-9be4-415d-b507-59d1bcb25c1b + - 014e6143-34a3-4ea5-9f68-9048c596274a: 987d94d8-c8b2-4b5f-a2dc-098e130c7443 + - 046ad65b-f330-4692-9807-fbd95f8061f2: 5bea567e-d091-4432-a0cd-f4e27f84743a + - 04b7c790-5f7c-40a1-b286-b68c8346665d: 80f510ce-c947-46e5-8df8-1037ba35dac1 + - 04ff2d6a-03de-4b0a-bedc-a4b282d7efc5: ea663ae3-6aea-4488-939e-a2791f10e5ac + - 069fbe97-6520-486c-996f-8c2558d0aa97: 539b74ef-f7d2-4dd6-9805-e1b9dabb5555 + - 0724cc1a-aac8-4dc7-b552-c63aadfb2934: 7ef7df1c-9c06-4bb5-bf2a-61c117fe01dc + - 073b79f8-7222-4585-86f6-8acd58335931: a18286e9-69b4-476e-b31e-df7c4f96e8b2 + - 077b8c55-6fe3-42b4-a99e-46f92cb22835: 90c081b2-59c0-435a-9af5-db45937168e4 + - 07cce6c8-f5d7-400e-b3bb-70cfa0e5881c: f282803d-4936-45a6-aeb9-14b960645fc0 + - 07f1854c-abc2-491b-b8bc-a3501222feb3: fd64c6f0-f2e4-40ec-b4d2-52bfc6e7e3c2 + - 08ef5629-3d1d-4e26-8a1d-b0b7ae25f515: 80c25d73-8dcb-450a-b4ea-4876884a8f18 + - 093fe896-cad0-4c59-9e5d-8c596a8b5f77: 4dc0d48c-440f-4f8e-94b8-86e7294f83d2 + - 09db777e-2a46-487f-8d0e-89061d39cbce: c86d6989-0949-4715-8b3d-23f041ce77bc + - 09f0b7d0-42b3-4eaf-9c54-fef40b29a0dd: a1f69f30-ac04-4abc-90b2-407898a44115 + - 0a9143d8-a5e8-4bc5-90dd-98075fe95d19: f9831512-5025-4582-a780-9a8e7a1dee81 + - 0b1f59da-99c6-4369-8496-d54668056c4e: a8e1633c-034f-4321-ae13-3127dc221fc6 + - 0ba73682-6bae-4b81-ba12-1b46f58c06cf: 9d694d20-0970-4b25-a6c9-381e45313571 + - 0c16c050-86ed-4ecc-b1c0-08f7ba5fa8d2: 2bf55a32-de54-4aaa-84a1-27e8b92e6fb9 + - 0c399b22-7b3e-40e0-8b5e-2905497a3229: f7898e65-e5a5-407c-878a-037830626f13 + - 106da489-c9ac-43c5-a0d6-fb0b298dafa5: 44753bb4-5497-4535-9fca-619d2b472e58 + - 10ef1717-a0b6-4e65-a7d9-44f91b6017cd: b3172fd7-fb4c-4a27-b922-7deb73d24d68 + - 113ef412-c8f7-4b7e-a3ab-e59df2135943: 9fec5151-3627-4955-a017-f5b60c13c936 + - 1146c9ab-b553-4255-9954-52ffe8f621f5: 7c8f3134-2a44-4041-aa46-2007e4990ade + - 130c2cde-83a4-4a70-8b03-eeaf75ef4d9e: 678e13aa-9d64-43d5-879e-570070b57cc3 + - 1353aaef-a78a-4f70-80ef-f2c9fe717ac5: 2334f12f-471a-423d-a5e9-7171d9ea387e + - 135c6c93-94ae-40eb-9436-9d5c7d4c1b76: 9d87900d-f378-43eb-b430-8a6606d39af2 + - 138717b7-e5a9-4398-bf7a-4411ba0af469: 2851c00a-6ea4-44ba-a09d-2bb3c64b1fd1 + - 147eda9e-e69e-4729-9347-923da3806a94: d7c52113-ff98-4df8-8095-c1e3beb17f02 + - 150163dd-7d0d-4bbe-a4dd-9ed2e0eabb11: 8a5120d8-5a5d-4ffe-a0af-641af7954d6a + - 15046028-d913-4fb0-8a5a-463b11599a95: 3b729ec8-102c-40bb-8224-d1fb557393e8 + - 15457eea-afed-4200-b815-e2aef7d0ae2d: b5a66652-d80a-4f04-8ec6-13f5f8fa3020 + - 15c8ff47-7aaf-4ed8-8983-1539f0f073c4: 2e05a4bf-082f-4c6b-88ca-3536ba47bf15 + - 167de8eb-9f40-4d6f-8d89-3beba468e431: 498f4954-0bc1-4a9c-be4e-cb173b35131e + - 181b1c2b-67d6-43d2-8fbc-91f5fa73afd4: 7205d878-4bf3-4090-be15-cb6fd7616ba7 + - 1894539e-bf0c-4d34-bc92-d5eca75e7589: 61bd6ad4-2e9e-4a54-95ca-6a12e8df750b + - 18acdc7e-459f-4219-bcd5-8614cb2776ef: c25f198f-56c5-4453-95af-0b8c3df6651d + - 192195e0-0a93-443d-8f00-e0289ab40167: 29f85aa3-3335-4d0f-96e3-4dd59e80db24 + - 19e101b8-5c98-4d5f-bfd6-0e2fb86581e0: f0fe346e-fe60-4826-9001-2b474a8630a7 + - 1a3fd670-c1c7-4069-9b59-df845362a260: 69531856-b84e-40a0-8b63-9cdfb4979aca + - 1b490eb7-9528-4f6f-a0c1-50a388b944b3: 03de1672-8771-436d-ad08-860688095af9 + - 1b5518c4-e625-4eb2-ab98-ef3675396855: 4cc16ea5-a57f-4b78-aea8-b1d8a6575258 + - 1b94b845-f11f-4781-8362-c5cb1bef17fa: 83813777-6075-43f1-82bd-dd9fa1bdb948 + - 1bc2d2b6-d80d-496a-b99c-ca9c78f7d72e: 6654f2bd-3907-4d2d-9bad-9fe2bd6da379 + - 1da1ae14-3e7a-4cfa-b353-e425319a3572: 3f6dfbd0-cf57-48eb-80ef-ae49ecf44237 + - 1ddd3d02-2a53-4389-87ed-3851ec1a22f1: 4415928d-c047-4d8b-8474-a0cdf8bc1326 + - 1e6e0c1a-8056-45a4-9f38-bfe26b3e43ba: 33a50a0f-82b6-43a9-bcc6-b64611af165a + - 1edd2162-cecf-4e50-a261-9a28f7437ae3: de0ddca8-d98a-4b59-9382-fe4b7ba6af33 + - 1efadfe5-29ad-4190-a473-1ce818b39230: 9bf42b2b-6ad0-4f72-979e-462c4e6bf2a8 + - 1f6fb280-f4da-4a40-8668-dab2d0ffece2: e6b9e770-e836-451c-8cc9-f030aef2ba6e + - 1fcdc7cc-c2fa-4a12-95f4-caeffa79295e: 4337a78c-8014-46be-ac98-67797c1edf10 + - 200c5a89-e479-42ed-8295-8c590be8fe67: 34485431-89f8-4f98-a385-2eadf4893e18 + - 20d2fbd5-6bf0-4241-9c0d-8258178f6789: 44295d20-c33c-4c89-85e3-bd064d17a272 + - 2272c271-7b6c-48cc-ae08-d7d30dde682e: 31e3869e-2431-4395-8081-790a5f4dceb6 + - 22a58330-8626-4c4a-8423-4ef292fd378e: c4e490a8-e430-452e-ac26-b91b93059a8e + - 24a7cc7c-689a-411c-b7d5-1f41b94b856e: 6d4c5f96-7762-46ee-a133-04ec4558681a + - 2572bdd9-c2de-4adb-be7a-d53217cf7db4: aad54900-794a-41ae-adbc-4d8e74af4626 + - 26126d53-f439-4c11-a332-516f25d8cef9: 714e02cf-585a-4270-816e-5bbc2e08fe6a + - 26c35729-b4dd-45aa-a373-b7d47dc657e0: 9d31774c-1b26-42a4-8819-3e7746b7436f + - 2752b65d-df97-4c03-9eef-c5f00796c1c7: 42028df6-f4bf-4e31-8e15-8ee907ae2e84 + - 2935496b-ff1c-4806-9ab9-ea54eb8f259d: 5a23cf7b-0d90-45cf-bbdf-912ddea4c5c9 + - 295cbbb9-33c7-487b-84e6-d554de447334: 0264e12e-a524-40d4-a4a3-4fb93570a886 + - 2a0176da-4f12-41be-ae32-8ca018680f8b: b452849c-342a-48c8-ae4f-6f9f0af79f77 + - 2a386676-8605-4331-86a5-5368d51335e6: b0f7d78d-3c97-4a8b-956e-d3d40a937aa4 + - 2a40ff1f-4494-4db1-8e8b-1560f5ae0b45: 24477947-3247-4c63-b5dc-1a142c148393 + - 2a648635-29d4-4da9-a0f3-487a1ed5149b: 8ee64266-9084-4b9d-9e89-8c25c7f06196 + - 2af4ec65-1023-4f81-873e-950d998a65f2: 71b68656-1364-4473-afae-1e63195e3feb + - 2b3b3079-d010-4f80-b3de-b51fcb3d4f57: b899bb31-024b-4638-9c5a-54c2a71fb0d1 + - 2c79d8f8-6e19-4bc1-8c7e-eeb7b9172be5: 13aa01e6-7f7e-4e2f-a696-14e09d57cb48 + - 2d43b9d7-cdc4-4727-8b79-f643982ea695: 2d1d201d-5916-4b8c-9734-61870a09a3b0 + - 2db42466-df60-43ff-b942-b0eedd705abe: 2e2f85ff-86f2-44a6-9282-5a47a6c9e9d2 + - 2dc056c9-08ab-4593-a8d7-e2e7ad71861b: d59cddc5-b7d2-4f2f-8728-0df149f2fc3f + - 2e9e3044-964b-4715-bfd8-238f810af6ee: 344dc46f-f5a7-499f-9f38-40743c27710e + - 2fcf0bf7-bd26-4474-b860-5a6c02503cde: 4de9e5d2-cf1d-492f-8077-a8730c9c8ea7 + - 308b6179-4063-45e1-9381-521859148bd0: edd30ada-8a85-44ce-a4fd-ad51935de939 + - 30bf6d19-885c-42fe-8195-3e71e8c3918b: ad3378fd-b0a2-43b7-aa03-513f9630a512 + - 31d5d1f8-ab79-49d8-a722-f663eda27502: 71cdd623-c1c1-406b-8763-25063c7086da + - 31f296a4-9650-4bda-8d4a-2c5237911dac: a00c1f61-5ac9-4de7-a50b-9d79f8752275 + - 33323e07-f29c-4fa9-9bc2-a55327ead908: af5c7285-6452-4dd3-86f8-a8e7ca80fcb7 + - 3375b270-5d27-4f31-b4e9-9b12bc85c58f: 0ecb30c4-9050-4e95-83bd-866ec8aecc20 + - 34a68439-22cf-4285-b2f3-249a4aea3de8: f5286577-cc5d-42af-8aed-9f68c4479224 + - 34a80196-25d7-4d71-a961-d47be0cefef3: 1ece7c6f-3b6c-4169-8336-b887a8614937 + - 34db47f7-8795-4800-940f-3381c9bc70fe: f3197aee-abdb-4673-8278-929017e3caa1 + - 35ab393e-a4e7-4608-a60a-b9e0a5683dc9: b45458ed-16e0-4676-9a61-c95e97dbecbe + - 35b271f1-4ef6-431e-bd13-f995681ed278: 91eaf3f9-a9eb-4b59-be67-2dd6d2dd4d0a + - 36d23b92-f05c-4013-8bf2-28e6662dedae: 7893e248-8c53-4dff-a565-26b5f8ec60f2 + - 36e41376-51bd-4477-ba07-b652c0aa82a4: 49d9be37-e6ed-42f3-9364-6cc046b1b6f3 + - 37b4795a-0ce0-4e29-b3cc-79aa3cb81fbe: b84e5a5f-5aaa-4cb3-bef5-fcd29490a267 + - 37b759b8-1f4e-4f26-b5ee-57c90bc21a73: 33c17ba3-4fa4-4800-b90b-2e137397ed6c + - 37ff6fd2-8e27-4f86-95a5-fca66569fa01: 54c164b2-ed1b-4e3a-8768-e3bb9277b95f + - 3a082b68-8c10-478b-bdc1-012debddbfb9: eebe28b9-7f3b-47e3-9b42-e3152f3907b3 + - 3a75d733-5107-4a4a-a6de-0204e4089a00: ef21dadf-ac3e-413f-a6f4-125d9092917a + - 3abc2130-bd88-4fb0-9f9b-2637a20f2c13: f373af33-29fc-4ac4-a507-514a4d13fd0b + - 3bd20dac-a943-4d7e-a08d-6b529725b690: 05b51f1b-00cb-453d-ab7c-dd2dfb762c8f + - 3bfe7b5b-6278-469c-b93c-63a04f1d5b02: 8b488e5b-6ee6-4eba-a7c2-a95d036c44cf + - 3d616bb9-24c1-4adf-98db-b952a6c24a59: 517781cb-d022-45e1-8836-69a14ac377d0 + - 3d9571e4-4397-4319-9187-0d1f83c516db: c6902925-7e2d-4745-81ba-94cda9c4385a + - 3e004573-ea7d-407f-a8e8-b3fe94fd4f4d: c46721fe-f21f-4a7e-bf00-dead24747a8d + - 3e035bce-415d-45d0-bb92-d77e1bfe0950: d4268d97-7fa5-4bda-a070-0338b938738e + - 3e465dbc-1232-4f56-b1ca-07c71159540f: 1e32ed97-e3c3-4185-8e3d-e237cf490ee5 + - 3e6c30f9-5b68-4524-a6e7-a566e22f5fa1: 051cecd2-baa5-478d-b025-7ec93d56ceba + - 3e7c8539-ac4b-4c16-90f7-0ba5cfaf9039: a81d8b72-cf22-4367-8ee2-c30c24aa433e + - 3f4b2619-d506-476a-99d6-4261cb8173bc: 8f430177-8b9f-4b38-9b5a-324180ccc6bc + - 3f78fad9-18dc-4951-9bc5-2e61aad419ef: 42bc501a-ce13-4614-9e9f-5e63020ac686 + - 4089dc9c-5adb-4bf9-b957-8abc839b0d58: 8c527ba7-efd7-4bbc-9bb5-88aa3586ec6d + - 40d69b9f-db3c-4e61-90e6-1bea61a6f409: 771291be-35a7-484d-92fa-13c0ed1826f9 + - 40fe63a3-fad2-482f-afb7-5f08fbf540d9: 15edb898-3bb4-41a8-82f3-3c6b0a3dea3f + - 42fa7251-c134-40b6-ae21-9e0cba42bcb4: 7e322891-6563-46da-89ed-201eef2c40fc + - 4448e178-da1e-466c-832d-cb35015a7100: 268d83d8-6f2e-443f-ba85-15477ea4c95c + - 44cc41b9-1913-4614-aa74-d6adf8658156: b59fc08b-0919-4078-af95-859bf1324d2c + - 452961b7-9236-48e9-b535-1e628e00b8bf: b7ffae81-3872-40b1-8985-417e5b7ee93e + - 45df5018-4c58-44a4-a17a-af1b1cb86c97: f0c7eadc-7e5a-4349-bd41-fc87c22bab55 + - 46a75696-6bb4-47d5-bc0c-903f6a797471: f63c5971-e0d6-4942-95b0-5b67162adffd + - 46e04b21-2fef-46ad-8f8d-a2385e2bb2b6: 1ee897fc-a725-4210-b806-17bc2b44575f + - 4742a657-5125-4825-994f-e0bcfa100021: 8701d1b0-4ea7-42b7-bb76-38623bbd1d94 + - 47f40157-724c-4a3d-b60c-1553311e79b9: 566655f7-3dec-46f2-85d3-0dd859b02c5d + - 491ecefb-13cd-4356-a5d9-73f442a5e381: 3f034f8e-14bc-4288-bf09-650dff1666d2 + - 497f7188-a34d-4c52-9285-6ef486ad684b: 736c95ff-b5c8-48ce-998e-267301c3b5e9 + - 4982a4bd-8004-4ced-a93f-8c22fa227369: a7faad0d-e773-40af-8b1c-7c1f6db8641d + - 49d3c420-96cd-485d-9a64-bb7d2c52204f: ce3cbfd7-71d6-484d-8f35-3c75c58cf0ed + - 4aa8ed58-dcab-4256-a793-20c208772ea7: 1bba24ec-27b6-4fbc-a60d-6f067f323d12 + - 4b15a9f7-2cc8-41c8-ba9e-c6c69e562721: 55406b2c-4d46-4d85-ba95-0c9e50a1493f + - 4bb77992-0e3e-4b1c-8d3b-c245e47391ca: b1410ec4-1d45-43b9-8dc9-9027901a3bd5 + - 4c032802-37e9-4902-aaf9-665af40ac96d: 2747806d-ff8b-4fce-ac20-c931c122dfb5 + - 4d50842c-3e9c-47c1-94e9-9117bc3bb7df: 81be64bf-ac1e-419d-bcea-a163e6d1f47a + - 4d8e42f2-86df-4cf7-a61d-d8e6870abac5: 1a219ac7-b0bc-4f1e-a9eb-d17ec7aab94f + - 4d93040b-0877-4dc1-a0c2-a495016de83b: 84c92320-773d-4a98-9185-ef096ebabe5d + - 4eef3acd-6894-43d4-b6e6-bba4bc729457: e00e14e8-dc62-4125-8226-d9548ccd872f + - 4f1beab4-2c8a-4f63-a05f-357008991456: 4aa50c1c-12d3-4209-8c41-cb8e10a4e21a + - 4f9c951b-cdcd-4f27-a21a-c791f2f6855e: 65dece1d-d9d4-4987-947a-8989ed8c7904 + - 50ecda44-3290-4cec-9805-7b911c17c3a3: ee12b99f-3f19-4974-ac22-a3b10edd222a + - 51a93b09-9f90-4d9d-924c-ca920dd25aae: f58d51ba-2ebf-4b6d-8212-d489883774b5 + - 51eb6c8b-6a73-40be-85ee-eaf700c954fb: d46a7dbf-ea5e-4e5b-97b8-e3dd2e809ffa + - 5236bf74-2c01-4cfa-8ac3-71def1454ab5: 71319c82-a204-4c51-9164-92c4938f210d + - 527ee95c-27ab-41a1-9b9f-3c15e512454c: 66f7cd45-c536-41aa-8822-1805ee2e3b6a + - 53ef3073-ecda-40c9-a16c-83797dbdb78e: e9388cb2-e5c9-4d72-a2f7-e721ad987ece + - 55620f11-ba29-4773-ae0d-040e31ce992f: 357055f3-eabd-40ef-840c-60151bb5b93d + - 558e82e4-7a36-4097-a16b-3b20d9d0f94b: f3384425-666a-4766-a620-aa6672fcca3d + - 56774434-9c3b-455d-931a-2b3f3bf7ddfc: e2da4c90-15e7-4bda-8d89-83ebce005c20 + - 56885160-9bf6-4d66-9330-0a8001c1ffd5: 3ebadc52-4e51-426c-9207-d316088eed91 + - 56d3fd6e-f907-4278-b5a6-0018fe1b0c8c: 51304556-9d24-4779-9eeb-8c187004353f + - 5773cc04-5773-434e-9985-2dd4200f1a77: 8471a6fe-c53f-44a1-8594-e59723f7f791 + - 57a0a9bd-d681-49fa-80c2-d0495e522a5f: ead4c584-9e0f-41d6-8ab3-c0130e6442e7 + - 5857ba63-8e4c-4afa-9413-3ef6d3184e32: 6a3a050d-2b41-4258-b2a9-f1d6f4badefd + - 5a0defe9-efc0-420d-b36b-b9f29375fb51: d09d6b08-4155-47fe-b6ca-96e9c8d20b04 + - 5a790996-2d06-4b8d-9852-7165ac56527e: 436eccd9-9a65-4e60-9f53-8acb0a5d0c2d + - 5af59c8c-af51-4d43-86dc-b441125fe967: c3ab7030-1abb-429a-8dc2-921adf124b7c + - 5c84b816-a8dd-4475-8337-964ddf2aceea: acb0e3c0-808b-4dc5-94e6-ef2eb014797d + - 5d0a5812-4c6d-46e6-a03a-09b60ae5de48: c6f10311-98a6-43ed-9283-246fb934cdb2 + - 5d4a954b-d8cc-4290-917f-fc4284b79c3e: 1b0e2dd1-230d-47c7-a241-f8bb0631aa36 + - 5d5387af-074a-4c33-8685-b78f1dd4946a: 4d3b81c3-44c7-46b2-bdbb-b8315b216a54 + - 5f54672e-81d5-4d1f-bfcd-349615a988b2: a867dbaf-7978-4f52-861e-8d000a4cd232 + - 5f9a3157-9983-428f-93e6-951c5b5c929f: f8a74290-7650-4c6b-a850-3d5b21c462ae + - 61324e68-e226-4eb2-a96a-63a07ecc0e98: 11fc4951-34f8-4c41-842a-127c6450b3f9 + - 61451a97-d498-4319-850a-db26407772aa: cb7a9788-8b86-48d1-9c62-ad54d785c2e9 + - 62b8a451-7989-45b5-a6c7-ab02c30f30de: fcd13b59-7324-440e-a032-b9fd0b8b7c8e + - 6582d0d3-dcc0-4a82-ab92-bda59d4ae4d3: 27002369-11ae-4128-be4b-d556378cbc92 + - 675942d7-d7d1-48fc-abd8-5a6bff7f56cd: ace18319-5e08-4aa2-a0e7-c8b5ca7861ee + - 6777d912-e79d-4f3d-8a23-f24d7acdd522: 3f2631ee-7671-4e09-a3da-2d3ebbc3e058 + - 68265c8d-084e-4f2d-9358-355e46cab9b5: cb7dfd36-1fcb-47a9-b875-88d19a0449c0 + - 68719226-e7e0-4113-bdab-6aec4a1b4375: c16fe00f-777c-4105-b43d-8f5417845f0a + - 687dfae2-c079-4fd4-9143-8a8a419910b9: 861e427c-427d-415c-a5c9-62d0cbb72db1 + - 69b71a12-2618-41f9-b62f-91ddaabb2c47: 75c714f6-fafc-499f-9823-44b94aa49dca + - 6a863191-faea-4432-b7f4-41bc539cc8e7: 8d20fcb2-bd25-4e36-8620-574d46a2754e + - 6b10defb-e495-4de9-8e7f-87ff83364433: 7327effc-f997-4cf9-969a-16305130820c + - 6b154d00-05e6-4008-8c8d-ff3c38dc97c1: 0f99ec52-b378-4f53-ae5c-9f97316da863 + - 6b8948bf-e1c5-4626-9164-fb0631b13322: 6015cc18-9414-4f3b-9aa4-4283771ed4d7 + - 6bf51efb-c165-480c-834e-cd9e1573372e: c6716f04-8f6c-4655-a49b-dbde0a9e0a47 + - 6c6cb8b7-3a98-4d0b-aacc-d52cbec6726a: cd03d3c5-a16f-46ed-8a51-1f377d8f3a92 + - 6ca8c494-08e6-480c-a6c0-b3dce62bd692: 6dc88105-5ee5-475a-9557-5101c0c43b9f + - 6cabe18a-f69d-4a3e-95c1-073d6070fbc9: 19c9610a-3217-4c46-86f5-5acd5dbf81e7 + - 6d036508-bb0c-4eeb-921a-e1c468dc27b9: 0806d623-a4b2-42d2-a883-77272aa8a63e + - 6df7408e-475e-4290-b64a-6265f1d4f92e: ac44a234-b2c7-40bc-b165-14d49f6c7bdd + - 6e2ea6db-9160-4b38-8e13-085bdfb056d1: 136d5f7a-7787-45ad-988c-ef9b83909168 + - 6e56c65c-de07-4946-8e5f-49a71f90c0a0: ef1f36e6-0732-46cc-997e-c1da502ccb7a + - 6e910f1c-f33c-4497-8c7d-ce77b8f7b885: 15647a3f-1dc9-4c29-b2b6-e6f9b0e55cde + - 6f2f7e56-ab07-4f8b-935a-c0150d74e9f6: 941e28cc-de87-4b59-b202-a39797d1271f + - 70220405-5a89-42d6-97bf-e1cc16af5e4a: 5e074e7a-a118-40d4-8165-f25839e8708e + - 702c7723-1685-4104-adfb-d00ae5caf8b0: f19bb22d-47a7-4b02-9340-8295bca0de78 + - 70a5b7c3-549e-4a03-ba4a-127df073805d: d092b67b-f1a2-4b60-a4f4-3a2d1da16d8b + - 719c49c1-7076-4ea4-8d23-f7c1ad81e9e1: e80f3472-cd56-42fb-b0f8-71282549f1e4 + - 71ca0806-008a-45ac-9173-d186754e53bc: 5d3dce7b-0dc3-4ab8-a283-fa730d3ff3b2 + - 722655c4-7fce-41bf-b7e1-e46c8987282a: a0e7f2a8-9e75-4c79-a159-f2a6711c1a42 + - 734fd77c-cf92-4677-a635-faefb258d109: 22105929-9790-4715-b5b9-a1a3e171eb23 + - 7476680a-1828-4517-8b6d-a38bee74bd03: 996ebe32-603c-49b8-beb7-8a0f594c90fe + - 749d5e61-5dec-4bb6-bb92-94dda1f3604a: 89670454-180e-4079-8c25-8d55631d2147 + - 74d601a3-8d97-441a-af78-5ec2a963651e: 5531fd70-cb54-49a1-858a-21d2fde36388 + - 765da78a-e794-4604-a38a-33a1c38d7406: 11710e50-1a5c-470e-9548-5e93183560ed + - 76a4091e-15c1-4831-87d8-b69dbee3f873: 3c034048-9ae5-4710-b56c-d1ce02634454 + - 77141b36-1afa-4580-a4e7-77b46a7e7144: ec313b7c-c1ab-47d7-a982-67bb76e2591b + - 774e1493-bd36-454c-b478-ec0cebda666a: f0d95b32-82b6-47a7-9172-0524d4afc53b + - 785ab6ec-0c8c-46e8-b96d-80269823118d: d2d00557-3420-44fe-be7f-ea7863ad591a + - 7893756e-c8a5-4329-8b06-67ff294f05ad: 910ba6a0-7ad6-4873-b8bb-b063dfd20907 + - 7a4a44a4-8a66-4320-a3cb-c5fc4a55bb4b: 0fba4b93-4ed1-4ad0-9e9a-7abd2ea2040e + - 7a8db928-d205-4f3f-9d59-a7a13759da73: 943996f2-d5c5-4546-8fc7-35ba7e25aafc + - 7ad2c4a8-399e-455b-8a94-7810c8cbaa96: eb2b94ae-75b2-4852-a980-6093135093b0 + - 7af80f84-dca4-4828-a01e-1e2c83301467: c04b809b-503c-4926-a3b3-683d2c33fb45 + - 7af8f4d0-cd1d-4d0e-b395-028e41c9b290: 4b229650-8d72-429d-a0f7-a0b2fe029736 + - 7b3b0ace-4c9f-4d8d-a869-af9439d938e7: 0a36de73-a2c3-4095-92fe-1d3b342d1d31 + - 7b503393-b7d7-4fee-bebc-2e0a0a158c3e: 1bf0d431-ce81-4485-891a-20241a415173 + - 7c53858f-523a-451c-9ada-9112151d87df: c843ac64-eed4-4b12-9a66-59afe41554f5 + - 7c8ea070-1726-4ee0-9f1e-aae5c2570841: a19f6ffc-b546-463d-8d56-00de2b49d9e1 + - 7ccb99d7-f247-40cd-a69a-cebd151fb182: bd216985-981f-4df5-a5cb-94ffed60abfb + - 7ce79967-b6f4-41de-a181-7d05dadb9224: b3c63f17-7988-4a99-9e05-3395570423d4 + - 7cf0f5b2-75b8-4fac-ad13-712007347647: af270195-05b7-4a21-ba85-f65a4fe35f74 + - 7d07885e-d3be-41f0-b24d-2f61c10779fa: 4de074cf-ded5-4b4f-89f1-db2aeb676652 + - 7d0ec120-acb2-4b27-99cb-bda87b3f26a0: c832fc4c-5a59-4811-bd70-55548a2543cd + - 7da90f4e-81a7-473d-899f-301ae7076b02: 90d69fa4-0ff3-4ccb-b1eb-b2cb2ecd9c8a + - 7eb53a6f-c678-4769-86c8-ffa9d6a29bc8: efd9a13f-a9e9-4507-9a8a-1d89d7715a59 + - 7eb68798-e720-4b5b-bab0-13835772bcee: c1dca61c-21f6-4e16-b1bc-4490f744fea3 + - 7f6239f2-26e6-48db-8e49-57e348234bfa: 80e5a349-1c64-4b7c-869d-612771709af1 + - 802c2599-cd73-47a3-9a39-9fef13d5fff5: d242dcea-d618-4533-aa8b-555cb4d91b76 + - 805d8e27-4c57-4ffb-a156-c006b14f8ebc: 4f0f8a9d-6f94-4ca3-8292-d38c0730bed6 + - 80935988-d850-43b0-8489-fdfb937b76e4: fa309a02-3377-4258-82b7-39992499c9ef + - 80e2e116-8840-484d-be53-471cdb4a8275: 6ef0380d-8354-417d-8843-b4fdc495488a + - 8105b0c7-f201-4c2a-aedd-7e2b4d4b0af1: 483580f2-a3c8-422d-911a-24d701b6ae24 + - 8197be4b-6667-4511-90ec-3764aaf7097e: 3888fd1e-d32b-4f3a-a9fb-998276046fa2 + - 81ac99fe-bb9c-4203-88a5-149ff24f4d8f: 644f530d-4900-44c1-8b93-e99294b4898f + - 81d98ccb-8c72-4fa2-81f7-20f82941c51d: 51e6f8a7-8f2f-41d7-ba23-cec56ddae92a + - 8394cdc8-b72c-44c6-9b2e-30b2c9ef6d1a: 864f7adf-80ee-437e-bfe2-afcd38d0d7b2 + - 83fdf92e-7285-4864-b7f7-b56573f0e2e8: c5e4e2f6-6a4c-4c04-bfea-f04b7efc0e39 + - 85db361a-2725-4fdc-b752-1e0403bc821c: 4a853a86-5206-439c-8488-f968c7ff182d + - 866bd418-abd8-4061-a6ff-2f4e36e2cbf5: 20e01167-18d2-4a20-ad82-d4ee08b967ae + - 8679a711-e9c7-462f-bc36-bd5b8153194a: 0533d243-783d-4068-b980-41d6947eca25 + - 87327542-7e05-4d3a-89e5-294fe706fce6: 059224d1-1d25-4b3f-9584-af2f47f10333 + - 87ea7e7c-debc-47fd-9c33-4015328482c2: 5bafc35a-792b-4965-a9c6-fe3e3dc76c45 + - 8862e579-091b-498f-b65a-9ade1608fdb7: b1c2cb8b-0da5-4508-89ba-e53376517b76 + - 88acf2e5-9240-47f4-8a6f-82805925f710: f3aabf66-de47-466a-9242-e8e6df3aa5e7 + - 88f531cc-523c-47b1-9231-7c166961c7a1: 908039ca-7d66-4fad-8e47-a7c3e419324a + - 899dedd2-598a-4baa-aa9f-81952216526d: 747b6ca5-719b-4af0-b472-4199272cf36a + - 89a48c4f-a109-4b28-ae6a-9f30cf6965a2: e831a7e4-e6e7-468a-a7ca-53b016f7cc68 + - 8b609d83-09a7-40a8-8b77-0ae7dcf1077a: 4d0c6cce-e5c8-4fb6-9b7e-5eb5be377e3a + - 8be8a529-4d9e-4e24-b655-37d8b5bb7527: 9aa28ecf-a73a-464d-9884-7167ff68ab11 + - 8c43891d-652c-4699-90e9-d7d2c4dd0a29: b6aa604a-1021-4600-a6df-46af67fd2410 + - 8de418d3-b497-4ee3-aef5-c35c7c478a08: d3aeaf20-7d6e-4c9d-964d-ac4abd507d6c + - 8e63e8fd-3b3a-4713-8173-b4ef651ec203: 59fb95f6-9367-4ac9-8ad9-3aba1014b5b8 + - 8f1be4e1-ff3e-47a5-a761-b6ed0d466561: 0c17ce9d-0572-4d37-bf5f-8d9dc17506b4 + - 8f271eef-bc6f-44ca-8498-4d71eb993dc0: 9cabd166-02ec-49f7-b29c-5bf242f69758 + - 8f396bfa-9149-4d15-ba96-dd5c7a1633e9: 0795c0c7-f481-4613-85a5-8d0a06d6019f + - 8f5afc96-f8af-49e6-8c59-93f62d72c98c: f7d5c2ac-40e4-44a4-a513-d410ac0ec371 + - 8fd43d53-4707-4755-ae21-281babc4a8a5: 5ebdc306-6d8f-4dba-a275-295bbb3e5e74 + - 8fdab901-ff35-4223-8a72-2b6426756517: b8d81a23-6c80-4c26-bac9-d8118f3fecf9 + - 9129b095-809f-453f-ad22-f9ac86c7ab8c: abf0e718-466a-44e0-a7f0-664d4eb50d5c + - 9534ce89-22a4-46e9-8884-3d08d4c2c179: ff072225-c032-4741-8447-f74cf2ac6568 + - 9568cfe8-b1ac-46f0-b30e-9b99a150b655: 2006a4fb-5c60-4207-a9f4-30738e2d0957 + - 95bad5d6-34df-4c97-aaf5-d087a1ff442c: 1b159012-a3e8-4980-837b-f2afc877ec2f + - 96965a44-9849-496b-b1be-38299b203558: 1884f9bf-9555-48ae-9a02-3313f28faf2c + - 96a77374-8d65-4258-afa8-56fa7dd9a353: 681a51b5-d4f8-4b50-a8a4-dfbe63d87b4e + - 96bd6fd3-2b4f-4872-9cea-6570d04b737e: 2af707d3-6f15-4836-9fb9-22af49001ec3 + - 9852472b-586e-40df-be99-0ea695ce4dac: 36320a1d-a3bc-4369-89d6-94eb05b980a7 + - 98945bf4-a4c1-4e54-8dc0-3f743d184bbf: df699017-3086-4026-b95e-c787215c811f + - 98c2d544-25c1-43a6-a6f8-d396385399b1: 771f1da1-9afc-40b5-a5e6-fa9706436d06 + - 995378a9-0c60-444f-95ea-9a77adf164d6: 7b48f510-7cfb-4b62-b3ad-2db8eb879a10 + - 9b74a8b5-6dd0-4448-a505-5148f6ecaf5c: c0ae321c-1bce-4215-b082-0c564cc5bba0 + - 9bc07bdc-0bed-42c5-997f-7eaa4a937221: 35f0606e-5a31-4fe1-bf71-286790ec5161 + - 9cd18e63-f258-47f2-8eac-80b575acda0d: fc7ee13d-1b3a-4dc5-90d9-74846b86725a + - a0bee32f-a528-40cc-8704-9dd39691c1a4: 4ad86e01-dbe5-4c10-9a56-6ba3e17a1a58 + - a0cf2921-1212-43f4-a56b-59e3efd1efc0: 7251b086-04b8-46ca-80ac-d1f333954a93 + - a13e9ccd-85a2-499c-b743-a73945646374: 815233cc-f9b3-4b65-bb71-5920232efcc7 + - a151c0ee-4b33-43aa-b9f4-25bf06a0adeb: a0775d85-6e22-479f-a021-d36685c05fda + - a2dc5a63-c1df-41a5-90b2-e740f12bbf63: 4e312a81-ccf8-4ca9-8d22-3e4f8e3bc25e + - a2df5570-1a26-46c8-9692-745f51555629: 471244bb-2341-42cb-898b-c31df1cbbd6d + - a3a2626d-dc87-4c90-bb2f-4ef4cb8271c6: a5db8618-2b74-418a-953b-7777d3350c20 + - a466be5b-8036-4d74-a1b3-a50a6492ed86: 9afb0850-51a3-4658-b088-ffccf333bffb + - a4c763e7-2e1b-400b-bd95-8f3bb728f824: 954bd88a-8001-4d82-96e5-d818c6e4f7ba + - a4ee76b0-f83d-4264-8f35-6f65e6deef32: d6147361-2c77-4fe6-a50d-f93f102ff8cf + - a5eaad25-8b90-4fca-9706-422e02f5c643: 5d00a934-7f01-4903-9d46-1c911be02391 + - a61b2db4-6c4d-4e28-960b-3876a0d4054c: 68d20d9e-3506-4565-9361-612edb5246e0 + - a7132f3e-b959-4445-8c33-d83de440a0c9: 134763a3-7c99-4957-86c0-4903180533a8 + - a73f6dac-8037-468f-8acc-3b6bd9e770d5: a6aab087-1121-4f7f-af33-ccef89e1c9d0 + - a77c1eb1-9593-4438-87b1-ae63ecf14f5d: bf9ec558-adb7-4b56-9b86-f3af03dd7d3d + - a9072322-9cbe-460e-a04b-91bd9fdd7e21: 6da1558e-329b-4fc7-8274-08f491531cd8 + - a97c37a8-109a-4866-9e37-56d6c8a9c1f8: ce2fde66-cadc-4d86-97a4-9c45b257d536 + - aa4e29d0-66d3-49ee-b482-4a2a4c447d88: 7c5dcebb-0900-4243-a758-3da5579bcaef + - aa952deb-b054-4e99-aa60-600cf2678371: b399869b-ec00-43db-9eb5-69efbd75ab0e + - aafb526f-a2ed-4dc7-acd9-7245b143dbb4: ccf9a8ab-f33b-4c97-8de9-3c3081849b2a + - ab13ce74-b5bf-4771-ae1e-22e99dd33e6a: 2cb78c20-aa8b-4425-9694-f1f0fafea125 + - ab173257-917c-4083-96cf-db6a82c6ae1b: 4fabe891-3f97-4036-ade4-b073e5f4b174 + - ab7d3ee8-38ad-45b1-aceb-d465c18049f5: 2b0ff021-3975-49b2-ba2f-6d5f47c5495d + - abccdf94-337b-49f8-abf3-6b04e29d0ff4: 8d6f3798-2b45-4f78-8472-bdbb6a18498a + - abf278a6-03d8-4b2b-910d-181a46b9fb60: 534ffe64-3597-48e9-9351-7e4d144ca467 + - abfbbe54-80b3-4a90-a9a0-808dc3ff5e8d: 83aa7f02-08b3-4cf0-af5c-1da4746baf4e + - ac621d0d-1025-411f-81cc-831e5e3dd00b: 728d7444-a285-43c2-9e47-64208917cf90 + - ace5dc90-9121-482e-bc77-338e3f17c25f: a1c729d4-081c-4efa-8ffb-5a942c982101 + - ad378ea5-7cc1-4152-a022-3f3563680405: 76093a5a-0062-4982-a83d-5a45e071aaa2 + - ad481c2d-f6bf-4d74-9d13-17ca74924223: 6e567238-4aff-45a4-9424-1dd73eb27d36 + - ae4ba4ca-d378-448a-a6bc-a0633b4a3211: cec3c0b8-d104-4f1d-a034-f307673fabda + - ae5f399d-f412-42b2-915e-5c7de7787711: 72813d4c-5965-40fc-b436-27385ed100d2 + - af14efee-8102-4865-83d2-d4fbc64ef07c: 6bdf8c65-b25c-441b-a35c-71646b78cb61 + - af39b2ca-39f9-4be3-883f-3e60844b18d7: f8aa478d-c957-450b-a3e6-cca4ae97bc03 + - afc5e3b1-eccd-4f59-a2f8-53a0a63bd646: 448c56cf-332f-4b67-9f3e-30e8c9cf50c9 + - b0ec31f4-bb56-429d-9647-d6bb45861c8c: 569a0ae4-90ed-44d6-9de4-99fbba0223de + - b143eab2-4afd-4fd9-ae30-48e2f75b53e0: 6e332ad1-3338-441f-971e-a6541371eb3e + - b15a8977-a4d7-4f88-9377-4f12a2485f82: 1812807d-6e0c-480c-826c-33b2f6fbf438 + - b47a1db7-5e4a-4f06-9a2e-7251e54d0a66: 43e187b9-6cfe-4f55-9c0d-da5aef53b9ab + - b487fcf3-002e-4822-9625-f02956fbb781: 1f00b8fd-a622-451a-9934-9901a8a16763 + - b48985e2-11a7-40a4-b8df-1e8b4854aa1a: 3c40b17a-8ac9-4a05-b9f5-f0727533bac4 + - b5d8cd4e-83c2-40d0-9e87-5f19ef7c71d3: 55e72539-f87e-4da6-ae9d-697e297631fc + - b5fef323-29cd-48d3-a043-4dc937b28241: fe89ddbb-038e-46a7-aa3e-e2822b297dda + - b76315cc-03e3-415e-a637-41a465bcf947: 9426cda8-901b-4467-9e13-d1096e2fdd21 + - b7a16c0f-84f2-4590-85b8-8bfa507e89d2: 19ddc024-06cb-4a0a-80d1-f506ea51f9da + - bc68a313-97f1-497f-8510-ad525c2932be: 29ab70e8-85d8-4339-a569-1c3cba5b4f85 + - bcc84955-f911-4c35-ba6b-2c77998f9f4d: 68c1b242-6b55-403e-a02a-648ec0c3dc2a + - bd9c7a12-8208-473d-b8d7-540d137af7a6: 8ed6703a-e1c0-4513-8b18-d617dcfbec6a + - be79e43e-3607-42f5-93e6-051525a200e0: 85d866b5-0324-4e8a-bfa7-6cc2d33f1cc5 + - bf4529eb-f205-484f-8da8-77cf3ca78879: 888fff1b-1424-450e-bba4-bde2441faaeb + - c0a16006-a72e-46ea-b037-6f6055a8037e: 6accc573-dec9-4036-89a5-af3c632799c1 + - c0e12f13-2832-412e-a65a-e58f29950dc6: 53c01a08-fd29-4f5d-a2c6-30e0825d3871 + - c0f104b8-b66f-4cc2-9a40-911d8b08fc7c: c5cc7e41-6ff8-48d3-8ae5-298def82f8bd + - c12b6591-caa8-4433-b420-c3efc693593a: 18dff395-1747-4205-b671-d35923a7ed75 + - c32fdec6-4ed8-4c87-8521-950db919ede2: b4d267b3-32be-411d-ab20-fe7c056f6b3e + - c3469410-615c-48b7-b277-fdbb7fe01425: 011037e6-af4e-4fe9-a05b-4f5f01d5d04e + - c3b90554-5964-4b67-accf-60fbb2d7b79f: bc6e1c15-d8bb-4d4e-b694-aebd3a02d0e4 + - c5214645-e492-4c75-9778-3acb61503472: d990d335-d33e-422f-84a9-52709f165f0d + - c647f5e5-a48d-4552-99c7-630bcb3fc5af: faa82610-73ce-473b-9a0f-5795ddd53a38 + - c7b5e2c4-ed9e-4fc9-a0ac-ae5ab3522ca9: 610c072b-c01f-4a77-92bf-12b81c5af335 + - c7e7d299-e828-4a21-bdfc-cafd6c557c4b: 309e36bc-4a5b-438f-9ff8-e634a660edda + - c7f768bc-3c72-4081-9c99-c40b0d7c90b6: 745b27ac-cbdc-40ce-8d53-31b4d70e21a4 + - c8325863-b981-4ca5-a5b4-bc6192e4bf5c: 21e4d352-9d86-4acd-aa59-4612dab8ac62 + - c8ebd78d-8835-4c00-8308-6da560d95db7: fda33b4c-8b79-4283-b700-15eaf6ad21c0 + - c903e1ce-abf1-4253-84ca-85d5e3999a67: 98569155-7715-495c-9b96-2ba85403c63a + - c96dd1f8-ec5d-493d-a625-9b2970317b56: ee399757-1172-4e81-baef-174c1a56037f + - c99b7b55-01f0-46b1-9335-3978e896fca0: e4d20e1c-1bd5-446a-8a2f-ef748527ad5b + - ca21cb84-c838-436d-9705-24c3cbd196e1: bb9d933d-0e5a-4482-8c35-255f3b127a8c + - cb2f009e-3cf2-4187-bf1e-aafac6787521: 216f7c8e-9e81-4522-8fba-2c2ec37b196d + - cc34a58c-8336-4b3f-a590-769d4309fa6a: 2b77e527-3ff0-46bc-8e03-aa0ccea0c75e + - cc753256-5251-4a2a-82fc-52cff4435a21: 2af8cc7b-46cb-4703-8269-3d0af9276706 + - ccc7cd7b-286e-43c8-8e4d-7b14c01d4978: 736aeaf7-9a6b-4f7f-b7cb-624e8e01fe7e + - cd286a5c-5e95-4cb0-8680-5a238eebc33a: 586740af-5848-4db3-934e-ac1b355c3954 + - cd4cac9b-7761-4921-b9cc-f78b074bab79: 6918f245-9d0b-4dd8-999b-b7e875199104 + - ceb35dbc-0c60-4f87-81a9-31f047f53fb7: 919a0c9f-3887-4f56-a354-6a97a4701ad8 + - cf20aefe-5abc-4ebb-8336-b7e1e0c9a094: 8abd0fe8-dc7d-457b-93c4-97be80c52cbe + - d04392b1-1178-4d5d-8f86-2e55b24e2cd1: fbeb6fd9-56a7-4282-b049-eac1ad3903f4 + - d07d1906-eaea-4b71-92d2-bea1f8736f92: 76cb4f35-031b-4a4a-a99a-a484672cd586 + - d1d15b9a-f9f8-45f7-b124-de8885fbcb5d: e1c24e6d-6811-41de-a1d2-9c04e5cd21c1 + - d2ceb182-c8a1-43bc-9aea-ff239f340c22: 8ac49ea1-ed38-47a0-89ed-23d1ce668176 + - d2e60671-ae1e-419a-ac5e-3759a34df741: e5dd6f7d-966d-4ed8-bfeb-f37db6b48658 + - d39d54db-1af5-4c4c-bb64-507cff2a8752: becb62ab-34d3-48f4-9964-ec4fa235c378 + - d3a91d49-4352-4b77-8235-8d2d19bc7d82: 18911d85-b9bb-4de4-bdde-3459199d23ff + - d5ef0869-3c0f-4768-88e8-8eebbc747a17: 284edbad-69b8-45dd-9357-c81c7294d80b + - d6404b8a-628b-42e8-86d6-74a1d1136133: a04a5387-e7e1-4fa0-b1c7-0a9b381d84da + - d6bcb589-b766-430d-aed9-b1cd72971db5: 0c2fe073-11d3-4994-a5a4-28552c28b3b1 + - d7a4041c-a405-456a-abc8-fb551d8b3b00: f241e3c7-7003-41fd-9caf-19939e5ecd32 + - d7dd6d05-6624-4493-851c-85aac0ab3ad0: 3d3e693d-a336-4403-a316-ea8413d547bf + - d80f0595-4e1d-448e-afef-e21fcc80f521: c7aaa05c-fd71-4bcb-93e1-24177777bfba + - d8bdabcb-8617-4d4e-a10f-8cdd5d4e441e: 19a1c053-73d8-48ba-b212-eb44ca4cac6b + - d904c42b-301a-4dae-81f5-1c8d5d888d3f: 5096396e-dd06-4a79-b5aa-86b53013e700 + - d918b75d-d600-45fb-8d41-0c40a86951f9: 02c06197-d5b5-4b25-b3fa-188becf59fc0 + - da181ff2-8374-4cc6-96f4-a40ed3d7e14c: 3f7da662-08cf-48df-adf1-e9378c0b479e + - dac6b2b7-1406-4985-8845-ad76d0070ec6: eca01df9-89fb-49ed-994b-4c7d947d678c + - dae05fcb-ff13-4f9c-9e8c-92679490f805: eadfad91-c278-4805-877a-e6881f77844b + - db4b404e-9f10-4f88-b107-2e38bd2b1afc: b18902a1-dd9b-495c-afb7-338b78e8472e + - dba0a409-027d-4f2d-b4eb-cf1c204c780d: c8905894-9b42-4b0d-9e44-6ecb3e33ea36 + - dc6b7e84-4d7f-4754-b5ef-7a8e8995a9cc: 7fbf0963-2f6c-483f-b7eb-6442552159a3 + - dd029e31-8ad4-48dc-a2bc-5fa83ab2622f: 1abc710b-fc37-46ec-9a8c-f68fb6996f94 + - dda21d7e-d8c9-4a0c-9917-d73df68d6f29: 08d0670c-5afe-4fc8-a397-e96cdf6513e4 + - df969d23-af5a-4743-bd64-da3f32af946c: 963efe2d-6a9c-4ac8-a191-5b09acdea953 + - e03dda15-5806-44af-97cb-f144db36e8f9: 3ef8fb01-59e9-422a-9ef6-1c49ba13bca5 + - e060c4b9-46ff-4a98-9a66-4e01c9d363d3: 081cf0f7-d8d2-47ae-bf4b-f6d949476320 + - e08f8232-5976-4c1c-8716-e28147a6ce64: dccfc25b-d760-4889-b488-67a6b4823d04 + - e0de0477-b7d3-4d25-a608-c298b58b3860: 2b7bc28a-9194-404c-88f4-8ae21ff42c68 + - e1f8bc07-848c-411f-8468-e593250bd389: 31243a47-1f88-4b17-8bea-2e5994c9f7e0 + - e2bc3d8a-f84e-4176-8b08-bbb6c90dd5d7: aec4c38f-121d-43e0-8c8a-f35eccf56aee + - e33700d5-863c-4eb6-b422-2b6c26477e2c: 1ef0328d-be86-4265-b300-90052e4e6590 + - e3c97abf-6ee9-42b3-bc7e-1876cca70142: 95091fa6-0b55-4ba0-8794-738888ee725f + - e41c5417-fdd3-419a-9ef4-41a88bf0660d: 46373f08-546f-4e4c-ac2c-fe9882e45fc2 + - e46651b3-78b0-4aee-a12c-995553ce0c50: 17809aac-2637-408f-b206-8f752cbdec7b + - e561681f-2b18-4185-97c1-cc7eb1d9c312: 9dde13a7-01eb-4ce0-928c-f1a875e4bf5a + - e63bf552-2edd-44f6-817b-8467a4db70e1: 5ca9483c-fea1-49c6-8118-40390cf35d89 + - e6e4c36b-32c2-4083-b6b2-0defb0f50b4d: 88cab6a3-2bd9-4c63-81b0-834619c56f23 + - e6f55aef-bba6-401f-8442-4101f628acdf: 14364c01-f87d-4805-9527-10d94524f9c2 + - e6fe490c-8c1d-4b7b-a558-bf9a71e1e536: 30b1c907-3e03-44e8-a8f2-9ddb4c0825cd + - e73b1f1d-7c11-4099-9632-edabe94166a8: 8b0858fb-58dc-4815-8a17-d136339fd301 + - e7a1b64d-9ae1-430a-a584-51a434e45381: 5e3a9338-b250-4734-b249-d6488faa5387 + - e7b1b809-065c-4da1-8d3a-4c59dc598329: 875dcadd-e5f3-4192-a86d-5b08f1d30e48 + - e9bbe9da-6b36-4e99-a4cd-1fe2d28d823d: 1018440c-8f94-44fb-936d-d3befedcd3fc + - eaa2615e-3c3c-4ff7-b453-dd5ef940fc6a: 46d205c4-d6ea-40bf-a73d-98260489d19b + - eaf4b260-3a9d-465a-8b21-86d130203721: 5c9b03c9-7dd2-4cf4-b4b2-38558c664aeb + - ebbecedd-4b69-462f-8155-8784cc752bb0: 4b2f1f33-b501-48c0-a2aa-adb63c510232 + - ebcabaf7-993b-47f4-9ff6-1b867297f822: d61b0c61-1140-4617-8dc5-b7acabd3a548 + - ebe15137-3734-487c-a0d7-b498f241e8c1: 879b5b7d-647c-41b4-93b7-19c796172a1b + - ebeaae85-cb2b-41e4-a902-44286f2258be: 54bd2b86-8e51-48fb-8099-7f0b702cb041 + - ec0281d7-e1b5-4e83-8b50-235ecc55df4e: 4f57e8db-4cfc-4e98-a5fd-904008473f41 + - ec316b3b-a56b-477c-96e9-a0567890c9c5: ccd6dd60-282f-4a16-b730-14a1d19ceba5 + - ec8cd9e3-7dc8-4ecb-96d7-b06b67802261: a257dcec-8901-4c41-ba70-2c6456e0d5b3 + - ed7615db-bf66-4ceb-9b6d-94585dfba275: 917c4645-20fc-4578-b743-0e62cec94cb3 + - ed8e7a3b-6207-4015-9c5c-6a264dfd191a: 9dc22f59-7633-489f-b339-b84f19ba548c + - ee4c641a-c79a-436e-a89e-1e8ffe9cd3bc: 3b7b90e8-b154-4678-aec6-b4644aad37a4 + - ef252a02-e448-44b9-9e43-6cba7ea7c0f4: 128e164f-ec19-4305-abf0-2467aee894d6 + - f0c19a19-fb2a-4151-a1a8-9fee620e28b2: 18f7410b-0c8f-4ac3-9d62-b44d0602835c + - f14127e0-d9ae-44ec-8230-3851a3639162: af8a6f90-8e75-41fb-a485-d09e39baca84 + - f1eaf93c-70f9-43fe-8fe2-a41582142f06: 4f6827f2-0cd4-4f99-970e-120729043b27 + - f24b3095-782f-4fbe-a900-138727112c90: 9ca6e110-f3e5-4bd9-8bdc-1c4761f1723a + - f28b8cf7-a028-4cba-8eb2-7e6fc16ca5fc: 25038d3c-8f24-46aa-916c-25fadac45637 + - f40445f0-9b9c-4ceb-a25e-3a52e31a2a60: 30712b8f-f5e8-4493-97b7-8b71c1f2e536 + - f4669faa-525a-4926-bfdf-e7b1b07813b7: a85530b4-a696-4e00-8710-703d96fd4b5d + - f529cf51-4d88-432a-b6e5-ad66743c842a: cb8e61aa-b273-48b1-924e-f2ea5fb08e36 + - f57a3e91-93ed-467a-a0c0-deecbed6cd45: 29383fa0-4093-4e63-884b-0fb2052eae1a + - f580b6f0-2a1a-48d8-9796-674a7b0ecd46: 72a0faae-ee70-43db-94a5-b6eefc73eebb + - f5ea9cd5-c350-473d-b0cc-9117263fd777: 53a3c49a-b2de-45ea-8ede-2a7f31878d28 + - f62fbb0d-eab9-4ce3-ac4f-197c49d50ad0: e9b0749e-9b04-4198-8f4e-f00e42927004 + - f740487d-923c-4156-bad2-f1deb9c49131: 60f55125-b0af-46db-8f79-00a6a8e98856 + - f7d350e1-f928-42ff-9a3c-3460594bfa00: dcaa8333-4e76-4bc9-805c-e8a64522e5af + - fb715abc-a6ec-48ee-96b3-1d300b6f2562: d45857ad-173c-411c-a691-dfa6d051e7a1 + - fc907ca1-b2f4-4ae3-b49c-9f8448ca0be8: 3a2fcdc8-7d8e-4198-a126-3606012bc6fa + - fd1bc086-aa02-4e60-a264-3d7710070b7f: 8d2f9ecf-7c62-4fe9-8b6a-4d6d9d732089 + - fd38210a-8026-44e9-9cee-4d1b1e58ce02: a61a9f44-749a-4bca-b2e0-acd3db5fd701 + - fd5b3964-1eab-4124-91f5-e57195abbe20: 54d1b1dc-7425-4f4f-b9f1-3eda5b99981b + - fd61450e-fa46-40aa-a6c1-21c78d870ba2: cd9f6a7c-995e-4787-ad13-9b0cb9054b6f + - fd8de8fc-3999-4e0a-b9a9-745c28d186c2: 0b119fb8-2437-442a-af59-1f0f93e788ac + - fe38f062-25cd-4668-9e51-42235170a549: 3068e301-a3cd-465f-9013-b5984590f9e0 + - ff19197c-9428-4f08-9a91-3b0aa6da372a: 3755b435-cbf0-44cb-ba7e-9e18ba2c2d27 + - ffb9811f-92b4-4514-ac28-2aa421dc9dfe: 33bcfd9d-61f2-4979-8393-543036ba439c + - ffc41b55-0d52-4a88-b1f5-63556851cb51: fd07b3c9-6479-4e2d-981d-fc304c8cf9f6 + SourceState: ! 8d2f9ecf-7c62-4fe9-8b6a-4d6d9d732089 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: max + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 57e56f6b-0632-4d36-829e-5265b4e158ec + Mesh: ! 9ab42643-fa56-4906-8dc6-c9cb4b53034f + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 90c081b2-59c0-435a-9af5-db45937168e4 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 42028df6-f4bf-4e31-8e15-8ee907ae2e84 + - ! 736aeaf7-9a6b-4f7f-b7cb-624e8e01fe7e +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + Axis: Z + Length: 1.900000 + Radius: 2.100000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 6accc573-dec9-4036-89a5-af3c632799c1 + - ! dcaa8333-4e76-4bc9-805c-e8a64522e5af +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 7.500000, y: 2.100000, z: 2.100000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -8.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 16.000000, y: 16.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3888fd1e-d32b-4f3a-a9fb-998276046fa2 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Rocket Holder + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -100.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e6b9e770-e836-451c-8cc9-f030aef2ba6e + Components: + - ! 8f430177-8b9f-4b38-9b5a-324180ccc6bc + - ! 55406b2c-4d46-4d85-ba95-0c9e50a1493f +- ! + PrefabRemaps: + [] + Name: Manipulation Examples + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 534ffe64-3597-48e9-9351-7e4d144ca467 + - ! a61a9f44-749a-4bca-b2e0-acd3db5fd701 + - ! 1f00b8fd-a622-451a-9934-9901a8a16763 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: false + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! c16ed259-fa21-43a0-8b74-0e327d8ac125 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 1 + renderMeshVisual: ! 3f2631ee-7671-4e09-a3da-2d3ebbc3e058 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + meshHoverMaterial: ! f815b3fd-9acd-4427-8c85-ce9765c1b471 + meshPinchedMaterial: ! d6ef8e2e-f4d2-44d4-88f3-3697486802d2 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 6b4d1ad8-50d3-4889-9613-534d1419b60b + meshToggledHoverMaterial: ! bfb514bb-32ed-4bf6-8838-1d4b52a8878e + meshToggledIdleMaterial: ! 51d47a79-fa9a-457f-a979-7b3c7756d6be + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 93ccce6d-acaf-463c-a766-245dfa12e12c + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 963efe2d-6a9c-4ac8-a191-5b09acdea953 + _offIcon: ! 9d31774c-1b26-42a4-8819-3e7746b7436f + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: "Slider Knob [Interactable Required]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! af270195-05b7-4a21-ba85-f65a4fe35f74 + Components: + - ! a81d8b72-cf22-4367-8ee2-c30c24aa433e + - ! ead4c584-9e0f-41d6-8ab3-c0130e6442e7 + - ! 1884f9bf-9555-48ae-9a02-3313f28faf2c + - ! 9aa28ecf-a73a-464d-9884-7167ff68ab11 + - ! 6654f2bd-3907-4d2d-9bad-9fe2bd6da379 +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + ScriptAsset: ! 6edc785e-877c-4a9a-b0a0-3f29d68e2274 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + _scrollBarMeshVisual: ! c16ed259-fa21-43a0-8b74-0e327d8ac125 + _boundingHeightOffset: ! -1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 6 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Toggle On + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 34 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 0.274510, y: 0.274510, z: 0.274510, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ScrollViewCanvasExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -1.000000, y: 2.000000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 53a3c49a-b2de-45ea-8ede-2a7f31878d28 + Components: + - ! d59cddc5-b7d2-4f2f-8728-0df149f2fc3f +- ! + PackagePath: "" + objects: + - ! 13aa01e6-7f7e-4e2f-a696-14e09d57cb48 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 27002369-11ae-4128-be4b-d556378cbc92 + Components: + - ! 2cb78c20-aa8b-4425-9694-f1f0fafea125 + - ! eebe28b9-7f3b-47e3-9b42-e3152f3907b3 +- ! + PrefabRemaps: + [] + Name: rocket_sparks + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 5.731080, z: -2.724091} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.500000, y: 0.500000, z: 0.500000} + hasSegmentScaleCompensation: false + Children: + - ! 6015cc18-9414-4f3b-9aa4-4283771ed4d7 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Skin + Enabled: true + skinBones: + {} +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 8a5120d8-5a5d-4ffe-a0af-641af7954d6a + - ! 8c527ba7-efd7-4bbc-9bb5-88aa3586ec6d +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: PinchButtonSphereExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.000000, y: -11.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! cb8e61aa-b273-48b1-924e-f2ea5fb08e36 + Components: + - ! 4f57e8db-4cfc-4e98-a5fd-904008473f41 + - ! 1812807d-6e0c-480c-826c-33b2f6fbf438 + - ! 8ee64266-9084-4b9d-9e89-8c25c7f06196 + - ! 9d87900d-f378-43eb-b430-8a6606d39af2 + - ! 3d3e693d-a336-4403-a316-ea8413d547bf + - ! 082bd327-fd12-4e4b-951a-5daa2cd50a57 + - ! 5096396e-dd06-4a79-b5aa-86b53013e700 + - ! 3a2fcdc8-7d8e-4198-a126-3606012bc6fa + - ! 498f4954-0bc1-4a9c-be4e-cb173b35131e +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 2 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: min + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: ScrollBarSlider + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 18.000000, y: -7.000000, z: -0.250000} + rotation: {x: -0.000000, y: -0.000000, z: 0.000000} + scale: {x: 40.000000, y: 40.000000, z: 40.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 771f1da1-9afc-40b5-a5e6-fa9706436d06 +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 21e4d352-9d86-4acd-aa59-4612dab8ac62 + Components: + - ! ec313b7c-c1ab-47d7-a982-67bb76e2591b + - ! 7ef7df1c-9c06-4bb5-bf2a-61c117fe01dc +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Launch Platform + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 60 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9dde13a7-01eb-4ce0-928c-f1a875e4bf5a + - ! 30712b8f-f5e8-4493-97b7-8b71c1f2e536 +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 3ef8fb01-59e9-422a-9ef6-1c49ba13bca5 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f241e3c7-7003-41fd-9caf-19939e5ecd32 + - ! d990d335-d33e-422f-84a9-52709f165f0d +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 10.500000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 46373f08-546f-4e4c-ac2c-fe9882e45fc2 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 18.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 90.000000} + scale: {x: 0.750000, y: 0.750000, z: 0.750000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2334f12f-471a-423d-a5e9-7171d9ea387e + - ! f0fe346e-fe60-4826-9001-2b474a8630a7 + - ! d46a7dbf-ea5e-4e5b-97b8-e3dd2e809ffa + - ! e2da4c90-15e7-4bda-8d89-83ebce005c20 + - ! 89670454-180e-4079-8c25-8d55631d2147 +- ! + PrefabRemaps: + [] + Name: Toggle Off Icon + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c25f198f-56c5-4453-95af-0b8c3df6651d + - ! f8aa478d-c957-450b-a3e6-cca4ae97bc03 +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4de074cf-ded5-4b4f-89f1-db2aeb676652 + Components: + - ! 483580f2-a3c8-422d-911a-24d701b6ae24 + - ! bb9d933d-0e5a-4482-8c35-255f3b127a8c +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! faa82610-73ce-473b-9a0f-5795ddd53a38 + - ! 05b51f1b-00cb-453d-ab7c-dd2dfb762c8f +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.500000 + right: 1.000000 + top: 0.931538 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample Mid Bottom Left + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -5.000000, y: 9.500000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! d45857ad-173c-411c-a691-dfa6d051e7a1 + - ! 95091fa6-0b55-4ba0-8794-738888ee725f + - ! 71319c82-a204-4c51-9164-92c4938f210d + Components: + - ! 6e332ad1-3338-441f-971e-a6541371eb3e + - ! bc6e1c15-d8bb-4d4e-b694-aebd3a02d0e4 + - ! 7251b086-04b8-46ca-80ac-d1f333954a93 + - ! 517781cb-d022-45e1-8836-69a14ac377d0 + - ! 745b27ac-cbdc-40ce-8d53-31b4d70e21a4 + - ! eca01df9-89fb-49ed-994b-4c7d947d678c + - ! fd64c6f0-f2e4-40ec-b4d2-52bfc6e7e3c2 + - ! 4d3b81c3-44c7-46b2-bdbb-b8315b216a54 + - ! a6aab087-1121-4f7f-af33-ccef89e1c9d0 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! e9b0749e-9b04-4198-8f4e-f00e42927004 + verticalSquish: 0.900000 + horizontalSquish: 0.900000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Controls + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4f0f8a9d-6f94-4ca3-8292-d38c0730bed6 + - ! f3197aee-abdb-4673-8278-929017e3caa1 + - ! 7893e248-8c53-4dff-a565-26b5f8ec60f2 + - ! a04a5387-e7e1-4fa0-b1c7-0a9b381d84da + - ! 30b1c907-3e03-44e8-a8f2-9ddb4c0825cd + - ! 861e427c-427d-415c-a5c9-62d0cbb72db1 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 15c6d713-cca8-4c8a-b936-c9c2a4c961c7 + Mesh: ! ed719342-c4a0-42ca-80ae-988c6a27c71a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: true + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 12 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 400016ba-897b-4f06-8668-db883d28f9a9 + Mesh: ! e773364b-808e-4165-96b2-285eb99a10bb + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Size: 0.660000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Satellite + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 25.000000, y: 0.000000, z: -100.000000} + rotation: {x: -65.090828, y: -16.609848, z: 40.221401} + scale: {x: 4.500000, y: 4.500000, z: 4.500000} + hasSegmentScaleCompensation: false + Children: + - ! f8a74290-7650-4c6b-a850-3d5b21c462ae + Components: + - ! e831a7e4-e6e7-468a-a7ca-53b016f7cc68 + - ! 5e074e7a-a118-40d4-8165-f25839e8708e + - ! 2af8cc7b-46cb-4703-8269-3d0af9276706 + - ! 059224d1-1d25-4b3f-9584-af2f47f10333 + - ! ee399757-1172-4e81-baef-174c1a56037f +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! c04b809b-503c-4926-a3b3-683d2c33fb45 + _offIcon: ! 4cc16ea5-a57f-4b78-aea8-b1d8a6575258 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 10 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Recents + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 75 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.700008} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.700008} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.050000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0c17ce9d-0572-4d37-bf5f-8d9dc17506b4 + - ! 4f6827f2-0cd4-4f99-970e-120729043b27 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! bf23557f-e639-48f1-aff2-aafc4d92fe11 + Mesh: ! 2a58608b-008d-40f8-9627-d339311f2e1d + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch Horizontal: 0.000000 + Pinch Vertical: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ToggleButton + Enabled: true + ScriptAsset: ! 093b33e1-4d07-4545-964a-79fb748b7664 + ScriptInputsDefault: + _isToggledOn: true + editEventCallbacks: true + customFunctionForOnStateChanged: true + onStateChangedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _onIcon: ! 908039ca-7d66-4fad-8e47-a7c3e419324a + _offIcon: ! 5ebdc306-6d8f-4dba-a275-295bbb3e5e74 + _isToggledOn: false + editEventCallbacks: false + customFunctionForOnStateChanged: ! 00000000-0000-0000-0000-000000000000 + onStateChangedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: "[EXAMPLES] Simple UI" + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b6aa604a-1021-4600-a6df-46af67fd2410 + - ! 29ab70e8-85d8-4339-a569-1c3cba5b4f85 + - ! 11710e50-1a5c-470e-9548-5e93183560ed + - ! b4d267b3-32be-411d-ab20-fe7c056f6b3e + - ! 917c4645-20fc-4578-b743-0e62cec94cb3 + - ! 3c40b17a-8ac9-4a05-b9f5-f0727533bac4 + - ! 0b119fb8-2437-442a-af59-1f0f93e788ac + - ! ad3378fd-b0a2-43b7-aa03-513f9630a512 + - ! e9b0749e-9b04-4198-8f4e-f00e42927004 + - ! fe89ddbb-038e-46a7-aa3e-e2822b297dda + Components: + [] +- ! + PrefabRemaps: + [] + Name: HeadlockExample + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 10.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0f99ec52-b378-4f53-ae5c-9f97316da863 + - ! 54d1b1dc-7425-4f4f-b9f1-3eda5b99981b +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Round Button + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 566655f7-3dec-46f2-85d3-0dd859b02c5d + Components: + - ! a18286e9-69b4-476e-b31e-df7c4f96e8b2 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 4 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: max + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Flight Speed + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.257892, y: 0.500000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4415928d-c047-4d8b-8474-a0cdf8bc1326 +- ! + PrefabRemaps: + [] + Name: Slider Maximum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! becb62ab-34d3-48f4-9964-ec4fa235c378 + Components: + - ! 136d5f7a-7787-45ad-988c-ef9b83909168 + - ! 18dff395-1747-4205-b671-d35923a7ed75 +- ! + PrefabRemaps: + [] + Name: Platform + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -30.000000, z: -100.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.000000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 644f530d-4900-44c1-8b93-e99294b4898f +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! b6e0f29f-f6a2-4cab-97c7-b0b7475b0cdc + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: PinchButtonCapsuleExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -11.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! 2af707d3-6f15-4836-9fb9-22af49001ec3 + Components: + - ! de0ddca8-d98a-4b59-9382-fe4b7ba6af33 + - ! 85d866b5-0324-4e8a-bfa7-6cc2d33f1cc5 + - ! 4d0c6cce-e5c8-4fb6-9b7e-5eb5be377e3a + - ! ccd6dd60-282f-4a16-b730-14a1d19ceba5 + - ! 2006a4fb-5c60-4207-a9f4-30738e2d0957 + - ! c6902925-7e2d-4745-81ba-94cda9c4385a + - ! 1ece7c6f-3b6c-4169-8336-b887a8614937 + - ! 0806d623-a4b2-42d2-a883-77272aa8a63e + - ! 69531856-b84e-40a0-8b63-9cdfb4979aca +- ! + PrefabRemaps: + [] + Name: RocketGridContentCreator + Enabled: true + ScriptAsset: ! 01cb4976-7110-49ff-ae27-dbb77153e547 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + rocketConfigurator: ! ce2fde66-cadc-4d86-97a4-9c45b257d536 + objectPrefabs: ! + - ! 8104e815-4316-48be-ad1a-2021666f989f + - ! b9b3aff4-658d-4c76-ab3d-b479d4a722c8 + - ! e56db565-cd60-4e54-9dc1-b211e729b73b + - ! e7254ab7-df28-44a9-9252-05d53fbdc7da + - ! 242abbc5-63eb-448b-9a60-c5f5eae6725c + - ! 76789411-9f7c-4352-84bb-6a762a706580 + - ! 68a19954-e237-4b18-827d-db13073a38d6 + - ! 32671acc-9b4d-4487-ac10-3af976d942d7 + - ! 5c321a82-1be9-40b7-a482-f37464b708db + - ! dbb1f943-cd3e-4b20-89e5-0ce41c98a705 + - ! bbe206c8-38e1-4245-9550-2a019fe7e078 + - ! f2f3ca41-1bd5-4136-a5db-f3edb882b464 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + Mesh: ! 19b05bf9-336a-4446-8bae-3900ec681e19 + Convex: false + Skin: ! 00000000-0000-0000-0000-000000000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: SliderExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 1.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + - ! fbeb6fd9-56a7-4282-b049-eac1ad3903f4 + - ! 539b74ef-f7d2-4dd6-9805-e1b9dabb5555 + - ! 8b0858fb-58dc-4815-8a17-d136339fd301 + - ! 4b229650-8d72-429d-a0f7-a0b2fe029736 + Components: + - ! 42bc501a-ce13-4614-9e9f-5e63020ac686 + - ! c46721fe-f21f-4a7e-bf00-dead24747a8d + - ! 6da1558e-329b-4fc7-8274-08f491531cd8 + - ! 0795c0c7-f481-4613-85a5-8d0a06d6019f +- ! + PrefabRemaps: + [] + Name: Objects + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 879b5b7d-647c-41b4-93b7-19c796172a1b + - ! 875dcadd-e5f3-4192-a86d-5b08f1d30e48 + - ! b3172fd7-fb4c-4a27-b922-7deb73d24d68 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Launch Text + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0ecb30c4-9050-4e95-83bd-866ec8aecc20 +- ! + PrefabRemaps: + [] + Name: ContainerFrame + Enabled: true + ScriptAsset: ! 14c9f79e-3a55-43d4-bbf6-75c0d6d2e2a2 + ScriptInputsDefault: + border: true + constantPadding: true + isContentInteractable: true + allowTranslation: true + minimumSize: true + maximumSize: true + xAlways: true + yAlways: true + useSnapping: true + itemSnapping: true + worldSnapping: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + autoShowHide: false + innerSize: ! {x: 15.000000, y: 23.000000} + border: ! 4.000000 + constantPadding: ! {x: 0.000000, y: 0.000000} + allowScaling: false + autoScaleContent: false + isContentInteractable: false + allowTranslation: true + minimumSize: ! {x: 10.000000, y: 10.000000} + maximumSize: ! {x: 300.000000, y: 300.000000} + useBillboarding: true + xOnTranslate: true + xAlways: false + yOnTranslate: true + yAlways: false + useSnapping: false + itemSnapping: false + worldSnapping: false + showFollowButton: true + useFOVFollow: true + isFollowing: true + showCloseButton: false + _enableInteractionPlane: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Label + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! f3384425-666a-4766-a620-aa6672fcca3d + - ! 7e322891-6563-46da-89ed-201eef2c40fc +- ! + PrefabRemaps: + [] + Name: Path Option A + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -6.000000, y: 4.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d2d00557-3420-44fe-be7f-ea7863ad591a + - ! 19c9610a-3217-4c46-86f5-5acd5dbf81e7 + - ! 54c164b2-ed1b-4e3a-8768-e3bb9277b95f + - ! 14364c01-f87d-4805-9527-10d94524f9c2 + - ! 81be64bf-ac1e-419d-bcea-a163e6d1f47a + - ! 19ddc024-06cb-4a0a-80d1-f506ea51f9da +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b8d81a23-6c80-4c26-bac9-d8118f3fecf9 + - ! 6d4c5f96-7762-46ee-a133-04ec4558681a +- ! + PrefabRemaps: + [] + Name: Slider Bounds + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 1.200000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 747b6ca5-719b-4af0-b472-4199272cf36a + - ! 9d694d20-0970-4b25-a6c9-381e45313571 + Components: + - ! 49d9be37-e6ed-42f3-9364-6cc046b1b6f3 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: false + RenderOrder: 11 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 0607447c-e8df-4721-9c51-777e973d74eb + Mesh: ! a6361dc2-6074-45f7-b985-3924776714f4 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ScreenTransformAdapter + Enabled: true + ScriptAsset: ! 91623759-a5a8-4223-b7f9-e08a46044c6c + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c93d66c7-1631-4f81-8bf7-37300d4d2d3b + Mesh: ! cc68878f-b960-4016-868f-3516db30e67c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + _minValue: true + _maxValue: true + stepBehavior: true + _stepSize: true + toggleDuration: true + editEventCallbacks: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnValueUpdate: true + onValueUpdateFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: ! 0.000000 + _maxValue: ! 1.000000 + startValue: 0.200000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! 941e28cc-de87-4b59-b202-a39797d1271f + sliderMax: ! 6dc88105-5ee5-475a-9557-5101c0c43b9f + _sliderKnob: ! 8b0858fb-58dc-4815-8a17-d136339fd301 + editEventCallbacks: false + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 00000000-0000-0000-0000-000000000000 + onValueUpdateFunctionNames: ! + [] + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollViewContent + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ccf9a8ab-f33b-4c97-8de9-3c3081849b2a + - ! c86d6989-0949-4715-8b3d-23f041ce77bc +- ! + PrefabRemaps: + [] + Name: "[EXAMPLE] Rocket Workshop" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b7ffae81-3872-40b1-8985-417e5b7ee93e + - ! 66f7cd45-c536-41aa-8822-1805ee2e3b6a + - ! ef1f36e6-0732-46cc-997e-c1da502ccb7a + - ! 0264e12e-a524-40d4-a4a3-4fb93570a886 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Slider + Enabled: true + ScriptAsset: ! 396c7703-7a44-43f8-bfa0-44ac0d6a9fba + ScriptInputsDefault: + _minValue: true + _maxValue: true + stepBehavior: true + _stepSize: true + toggleDuration: true + editEventCallbacks: true + customFunctionForOnHoverEnter: true + onHoverEnterFunctionNames: true + customFunctionForOnHoverExit: true + onHoverExitFunctionNames: true + customFunctionForOnSlideStart: true + onSlideStartFunctionNames: true + customFunctionForOnSlideEnd: true + onSlideEndFunctionNames: true + customFunctionForOnValueUpdate: true + onValueUpdateFunctionNames: true + customFunctionForOnMinValueReached: true + onMinValueReachedFunctionNames: true + customFunctionForOnMaxValueReached: true + onMaxValueReachedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _minValue: ! 0.000000 + _maxValue: ! 1.000000 + startValue: 0.200000 + stepBehavior: false + _stepSize: ! 0.000000 + toggleDuration: 0.200000 + sliderMin: ! 747b6ca5-719b-4af0-b472-4199272cf36a + sliderMax: ! 9d694d20-0970-4b25-a6c9-381e45313571 + _sliderKnob: ! 4ad86e01-dbe5-4c10-9a56-6ba3e17a1a58 + editEventCallbacks: false + customFunctionForOnHoverEnter: ! 00000000-0000-0000-0000-000000000000 + onHoverEnterFunctionNames: ! + [] + customFunctionForOnHoverExit: ! 00000000-0000-0000-0000-000000000000 + onHoverExitFunctionNames: ! + [] + customFunctionForOnSlideStart: ! 00000000-0000-0000-0000-000000000000 + onSlideStartFunctionNames: ! + [] + customFunctionForOnSlideEnd: ! 00000000-0000-0000-0000-000000000000 + onSlideEndFunctionNames: ! + [] + customFunctionForOnValueUpdate: ! 00000000-0000-0000-0000-000000000000 + onValueUpdateFunctionNames: ! + [] + customFunctionForOnMinValueReached: ! 00000000-0000-0000-0000-000000000000 + onMinValueReachedFunctionNames: ! + [] + customFunctionForOnMaxValueReached: ! 00000000-0000-0000-0000-000000000000 + onMaxValueReachedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! acb0e3c0-808b-4dc5-94e6-ef2eb014797d + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 3 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: • + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 00000000-0000-0000-0000-000000000000 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: true + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: GridContentCreator + Enabled: true + ScriptAsset: ! ad83ff54-844d-49a8-9102-f568a9d291c3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + itemPrefab: ! 642b5216-980f-4be9-9593-16aa50bc54ca + itemsCount: ! 30.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -6.400000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c4e490a8-e430-452e-ac26-b91b93059a8e + Components: + - ! 02c06197-d5b5-4b25-b3fa-188becf59fc0 + - ! 31e3869e-2431-4395-8081-790a5f4dceb6 +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 42028df6-f4bf-4e31-8e15-8ee907ae2e84 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 33bcfd9d-61f2-4979-8393-543036ba439c + - ! c3ab7030-1abb-429a-8dc2-921adf124b7c +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Path Option B + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 4.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 344dc46f-f5a7-499f-9f38-40743c27710e + - ! 1ef0328d-be86-4265-b300-90052e4e6590 + - ! 35f0606e-5a31-4fe1-bf71-286790ec5161 + - ! 20e01167-18d2-4a20-ad82-d4ee08b967ae + - ! 011037e6-af4e-4fe9-a05b-4f5f01d5d04e + - ! 2b7bc28a-9194-404c-88f4-8ae21ff42c68 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: RocketConfigurator + Enabled: true + ScriptAsset: ! 85cb5de9-5fbb-4fbd-9775-2ac32bd619fe + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + rocket: ! 44295d20-c33c-4c89-85e3-bd064d17a272 + allRocketParts: ! + - ! 390ee0cb-1e60-4d19-8b40-1268800c64bc + - ! a9931968-3294-457d-b5f4-67213a87aec0 + - ! f1f20f41-b943-4d16-9ec2-8b3047cfe6fc + - ! f8c6c126-d1c9-46e6-965f-f185cb98ee55 + - ! 79343b52-0148-40f3-b5ee-59276ae43e7c + - ! 90f56253-e16e-40b6-9a7b-207dc3b162e7 + - ! 11174f6e-5467-4bf7-a4ec-be4b4e11d888 + - ! 255bac26-326b-4045-8f1e-04c78eabb8b4 + - ! 9bb44e42-24ca-4d39-87d2-41596d8f05a4 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 7.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Radius: 1.000000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 4.000000, y: 0.000000, z: 0.850000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.600000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 9b3f6550-083d-43ed-bafd-404cb0d6f508 + Mesh: ! 89d4fe22-573b-42e1-bc8e-620b4df6b699 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 + Z depth: 0.000000 +- ! + PrefabRemaps: + [] + Name: CapsuleMeshCustomizer + Enabled: true + ScriptAsset: ! 34ec9e1d-4d86-425e-9b7a-b6f2c130e4be + ScriptInputsDefault: + radianStepCount: true + cylinderStepCount: true + endXStepCount: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + meshVisual: ! f373af33-29fc-4ac4-a507-514a4d13fd0b + capsuleLength: ! 8.000000 + radius: 1.200000 + radianStepCount: 16 + cylinderStepCount: 16 + endXStepCount: 32 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 216f7c8e-9e81-4522-8fba-2c2ec37b196d + - ! 0533d243-783d-4068-b980-41d6947eca25 +- ! + PrefabRemaps: + [] + Name: ScrollBar + Enabled: true + ScriptAsset: ! 6edc785e-877c-4a9a-b0a0-3f29d68e2274 + ScriptInputsDefault: + _boundingHeightOffset: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _scrollBarMeshVisual: ! 2334f12f-471a-423d-a5e9-7171d9ea387e + _boundingHeightOffset: ! 0.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -15.000000 + bottom: -20.000000 + right: 15.000000 + top: 20.000000 +- ! + PrefabRemaps: + [] + Name: Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 90c081b2-59c0-435a-9af5-db45937168e4 + - ! d4268d97-7fa5-4bda-a070-0338b938738e +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -4.146290 + bottom: -1.000000 + right: -1.016440 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! be44ec86-6509-4953-8e7d-046468e6b199 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -3.750000 + bottom: -1.050000 + right: 3.750000 + top: 1.050000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Launch PinchButtonCapsule + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -10.850000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b84e5a5f-5aaa-4cb3-bef5-fcd29490a267 + Components: + - ! 284edbad-69b8-45dd-9357-c81c7294d80b + - ! 681a51b5-d4f8-4b50-a8a4-dfbe63d87b4e + - ! d092b67b-f1a2-4b60-a4f4-3a2d1da16d8b + - ! c1dca61c-21f6-4e16-b1bc-4490f744fea3 + - ! 3f7da662-08cf-48df-adf1-e9378c0b479e + - ! 0a36de73-a2c3-4095-92fe-1d3b342d1d31 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! c4f9e171-b692-42e0-99c8-2cc9f6db6c01 + Mesh: ! cf044647-787d-4060-835c-e324061093c6 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 2334f12f-471a-423d-a5e9-7171d9ea387e + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableManipulation + Enabled: true + ScriptAsset: ! 701e5d18-6a44-49ba-9cf8-a20c366c1439 + ScriptInputsDefault: + minimumScaleFactor: true + maximumScaleFactor: true + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: true + zStretchFactorMin: true + zStretchFactorMax: true + useFilter: true + showFilterProperties: true + minCutoff: true + beta: true + dcutoff: true + showTranslationProperties: true + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: true + _rotationAxis: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + manipulateRootSceneObject: ! 534ffe64-3597-48e9-9351-7e4d144ca467 + minimumScaleFactor: 0.250000 + maximumScaleFactor: ! 20.000000 + enableTranslation: true + enableRotation: true + enableScale: true + enableStretchZ: true + showStretchZProperties: false + zStretchFactorMin: ! 1.000000 + zStretchFactorMax: ! 12.000000 + useFilter: true + showFilterProperties: false + minCutoff: ! 2.000000 + beta: 0.015000 + dcutoff: ! 1.000000 + showTranslationProperties: false + _enableXTranslation: true + _enableYTranslation: true + _enableZTranslation: true + showRotationProperties: false + _rotationAxis: All + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 9 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: "Flight Path : A" + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 60 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.035000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: root + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ea663ae3-6aea-4488-939e-a2791f10e5ac + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.672431 + right: 1.000000 + top: 0.931538 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 4.600000, y: 2.000000, z: 2.200000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 7b48f510-7cfb-4b62-b3ad-2db8eb879a10 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ExtendableCapsuleExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -17.000000, z: -60.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.250000, y: 1.250000, z: 1.250000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4de9e5d2-cf1d-492f-8077-a8730c9c8ea7 + - ! a0775d85-6e22-479f-a021-d36685c05fda + - ! 436eccd9-9a65-4e60-9f53-8acb0a5d0c2d + - ! 53c01a08-fd29-4f5d-a2c6-30e0825d3871 + - ! f373af33-29fc-4ac4-a507-514a4d13fd0b + - ! d3aeaf20-7d6e-4c9d-964d-ac4abd507d6c + - ! c7aaa05c-fd71-4bcb-93e1-24177777bfba + - ! efd9a13f-a9e9-4507-9a8a-1d89d7715a59 +- ! + PrefabRemaps: + [] + Name: piece_0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 5.097826, z: -0.064316} + rotation: {x: -90.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 44295d20-c33c-4c89-85e3-bd064d17a272 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: true + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.100000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: false + Anchor: + left: -0.200000 + bottom: -1.000000 + right: 0.200000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Title + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e80f3472-cd56-42fb-b0f8-71282549f1e4 + - ! 08d0670c-5afe-4fc8-a397-e96cdf6513e4 +- ! + PrefabRemaps: + [] + Name: Text + Enabled: true + RenderOrder: 1 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Container Frame + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 74 + Font: ! 709203b6-8b83-40d7-8dda-e5adc4fd2875 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Size: {x: 2.500000, y: 2.500000, z: 2.500000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: ShowPlatformToggleButton + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 5.850000, y: -7.000000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.150000, y: 1.150000, z: 1.150000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3f2631ee-7671-4e09-a3da-2d3ebbc3e058 + - ! ce3cbfd7-71d6-484d-8f35-3c75c58cf0ed + - ! 1bf0d431-ce81-4485-891a-20241a415173 + - ! a5db8618-2b74-418a-953b-7777d3350c20 + - ! 33c17ba3-4fa4-4800-b90b-2e137397ed6c + - ! 88cab6a3-2bd9-4c63-81b0-834619c56f23 +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 0b4c9b86-170b-4692-ac74-668e4aa1af4e + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ScrollView + Enabled: true + ScriptAsset: ! 6ad8e076-1f73-4dde-9236-fd993752a829 + ScriptInputsDefault: + _debugDrawEnabled: true + enableHorizontalScroll: true + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: true + scrollAreaBounds: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _debugDrawEnabled: false + enableHorizontalScroll: false + enableVerticalScroll: true + _enableScrollInertia: true + enableScrollLimit: true + _scrollLimit: 0.300000 + scrollAreaBounds: ! {x: 1.000000, y: 1.000000} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RocketPartSelector + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -35.000000, y: -1.927469, z: -100.000000} + rotation: {x: 0.000000, y: 10.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8d20fcb2-bd25-4e36-8620-574d46a2754e + Components: + - ! 03de1672-8771-436d-ad08-860688095af9 +- ! + PrefabRemaps: + [] + Name: Physics Collider + Enabled: true + Shape: ! + FitVisual: true + Size: {x: 15.000000, y: 15.000000, z: 15.000000} + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 7f82b210-b438-4633-853e-6f804c2638bb + Mesh: ! 7ba378bf-39c6-4345-acbf-9e09fff8deaa + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 8 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67ebae44-f78a-4d09-ba37-4911855541a1 + Mesh: ! 084cd363-7eda-4d8c-a4cd-f08105c18984 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b1410ec4-1d45-43b9-8dc9-9027901a3bd5 + - ! 1018440c-8f94-44fb-936d-d3befedcd3fc +- ! + PrefabRemaps: + [] + Name: ToggleButtonSphereExample Mid Bottom Right + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 5.000000, y: 9.500000, z: 1.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! d6147361-2c77-4fe6-a50d-f93f102ff8cf + - ! c04b809b-503c-4926-a3b3-683d2c33fb45 + - ! 4cc16ea5-a57f-4b78-aea8-b1d8a6575258 + Components: + - ! 8471a6fe-c53f-44a1-8594-e59723f7f791 + - ! b45458ed-16e0-4676-9a61-c95e97dbecbe + - ! 9bf42b2b-6ad0-4f72-979e-462c4e6bf2a8 + - ! a7faad0d-e773-40af-8b1c-7c1f6db8641d + - ! 80c25d73-8dcb-450a-b4ea-4876884a8f18 + - ! f58d51ba-2ebf-4b6d-8212-d489883774b5 + - ! 3ebadc52-4e51-426c-9207-d316088eed91 + - ! 4aa50c1c-12d3-4209-8c41-cb8e10a4e21a + - ! 36320a1d-a3bc-4369-89d6-94eb05b980a7 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 15 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 00000000-0000-0000-0000-000000000000 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Slider Minimum + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a8e1633c-034f-4321-ae13-3127dc221fc6 + Components: + - ! fd07b3c9-6479-4e2d-981d-fc304c8cf9f6 + - ! 2b0ff021-3975-49b2-ba2f-6d5f47c5495d +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3c034048-9ae5-4710-b56c-d1ce02634454 + - ! 309e36bc-4a5b-438f-9ff8-e634a660edda +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Slider Track + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5bea567e-d091-4432-a0cd-f4e27f84743a + - ! 996ebe32-603c-49b8-beb7-8a0f594c90fe +- ! + PrefabRemaps: + [] + Name: Canvas + Enabled: true + UnitType: World + SortingType: Hierarchy + WorldSpaceRect: + left: -15.000000 + bottom: -20.000000 + right: 15.000000 + top: 20.000000 +- ! + PrefabRemaps: + [] + Name: Toggle On Icon + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 11fc4951-34f8-4c41-842a-127c6450b3f9 + - ! 46d205c4-d6ea-40bf-a73d-98260489d19b +- ! + PrefabRemaps: + [] + Name: Satellite + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 47.675831, y: 19.865082, z: 33.071331} + scale: {x: 0.222222, y: 0.222222, z: 0.222222} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0fba4b93-4ed1-4ad0-9e9a-7abd2ea2040e + - ! 3b7b90e8-b154-4678-aec6-b4644aad37a4 + - ! 43e187b9-6cfe-4f55-9c0d-da5aef53b9ab + - ! 4e312a81-ccf8-4ca9-8d22-3e4f8e3bc25e +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.500000 + top: 0.500000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ToggleFeedback + Enabled: true + ScriptAsset: ! 2a951ea9-9d48-4b80-88aa-457e5d826516 + ScriptInputsDefault: + toggledOffMaterial: true + toggledOffSelectMaterial: true + toggledOnMaterial: true + toggledOnSelectMaterial: true + disabledMaterial: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + toggledOffMaterial: ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + toggledOffSelectMaterial: ! 67ebae44-f78a-4d09-ba37-4911855541a1 + toggledOnMaterial: ! 424e8534-6958-4a67-a5c2-79ab7d39005b + toggledOnSelectMaterial: ! bc768d68-834d-4e21-a648-0c00a0e6bdd3 + disabledMaterial: ! 2934a39f-046b-4ced-afd2-555a4f234041 + meshVisuals: ! + - ! 72813d4c-5965-40fc-b436-27385ed100d2 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ea3121f8-4072-4c09-8bcd-a0eda9ba29be + Mesh: ! e49fb15a-e6cc-4d74-b1e5-d4e8b026b301 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + Pinch: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -10.581100, y: 0.000000, z: 0.034996} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.979416 + bottom: -1.000000 + right: 4.109260 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Slider Track BG + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -0.005000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c6f10311-98a6-43ed-9283-246fb934cdb2 + - ! a257dcec-8901-4c41-ba70-2c6456e0d5b3 +- ! + PrefabRemaps: + [] + Name: SliderExample + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: -2.750000, z: 2.500000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.500000, y: 1.500000, z: 1.500000} + hasSegmentScaleCompensation: false + Children: + - ! f282803d-4936-45a6-aeb9-14b960645fc0 + - ! 1bba24ec-27b6-4fbc-a60d-6f067f323d12 + - ! 4ad86e01-dbe5-4c10-9a56-6ba3e17a1a58 + - ! c0ae321c-1bce-4215-b082-0c564cc5bba0 + Components: + - ! 72abb230-9be4-415d-b507-59d1bcb25c1b + - ! c5e4e2f6-6a4c-4c04-bfea-f04b7efc0e39 + - ! 9afb0850-51a3-4658-b088-ffccf333bffb + - ! 051cecd2-baa5-478d-b025-7ec93d56ceba +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 67275e46-74cf-4d9e-a2fe-63594c108a55 + Mesh: ! 19b05bf9-336a-4446-8bae-3900ec681e19 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: -4.000000, y: 0.000000, z: 0.827240} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: -0.600000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! a04a5387-e7e1-4fa0-b1c7-0a9b381d84da + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! b4b364af-ee41-4c86-a1ba-a055da762816 + Mesh: ! eb9c4a4a-8795-4ce9-9f28-3fa5870debeb + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ContainerFrameUI + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 55.000000, y: -5.000000, z: -65.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a0e7f2a8-9e75-4c79-a159-f2a6711c1a42 + Components: + - ! 18911d85-b9bb-4de4-bdde-3459199d23ff +- ! + PrefabRemaps: + [] + Name: ButtonFeedback + Enabled: true + ScriptAsset: ! c160a957-4b35-4342-9927-7fd2766d231d + ScriptInputsDefault: + buttonType: true + useGlowMesh: true + glowRenderMeshVisual: true + maxBlendShapeWeight: true + meshBlendShapeName: true + glowBlendShapeName: true + glowIdleMaterial: true + glowHoverMaterial: true + glowPinchedMaterial: true + meshToggledPinchedMaterial: true + meshToggledHoverMaterial: true + meshToggledIdleMaterial: true + meshStatePinchedMaterial: true + meshStateHoverMaterial: true + meshStateIdleMaterial: true + persistentPinchedState: true + defaultIcon: true + onIcon: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + buttonType: 0 + renderMeshVisual: ! aad54900-794a-41ae-adbc-4d8e74af4626 + useGlowMesh: false + glowRenderMeshVisual: ! 00000000-0000-0000-0000-000000000000 + maxBlendShapeWeight: ! 1.000000 + meshBlendShapeName: Pinch + meshIdleMaterial: ! bf23557f-e639-48f1-aff2-aafc4d92fe11 + meshHoverMaterial: ! 386f728b-6a31-4633-b176-f92cd5bc60ce + meshPinchedMaterial: ! 92c09c9d-bf66-4313-9fbd-9c191887a5d4 + glowBlendShapeName: Pinch + glowIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + glowHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + glowPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledPinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshToggledIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStatePinchedMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateHoverMaterial: ! 00000000-0000-0000-0000-000000000000 + meshStateIdleMaterial: ! 00000000-0000-0000-0000-000000000000 + persistentPinchedState: false + defaultIcon: ! 00000000-0000-0000-0000-000000000000 + onIcon: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/ScrollViewListItem.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/ScrollViewListItem.prefab new file mode 100644 index 00000000..ff475b46 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/ScrollViewListItem.prefab @@ -0,0 +1,721 @@ +- ! + PackagePath: "" + objects: + - ! d9458e70-e7da-4fd2-b255-9600abd6c8e8 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: ContactName + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! aed271ca-fdcc-4482-99e2-bb97eecefd80 + - ! 2a33923e-ffa7-48bc-bffe-9579f9595a8c +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 16 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ef3a3d48-a46b-4cc9-a244-eaaf4e812941 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d30d55d4-56d8-4c80-87a1-8bea52789b04 + Components: + - ! 36ca1216-3ea2-432a-b0ae-c73a2bd49b37 + - ! fb8ed0b0-44c3-4910-b742-6eb1c1240b0c + - ! f060b6e1-03a1-4513-a02b-49b921a2cbb8 + - ! ff7bd9f1-8bed-4a35-aae2-85cf07766a20 + - ! c3062ad4-fda5-44f0-a70b-6c6f9ebb3b15 + - ! 2bdef6c8-aa9b-4e4b-95f3-1f5a34f788cd + - ! b49ea6f7-46eb-4328-9feb-b8cebe4166fa + - ! da7a487d-10e8-4266-9382-f6b3fd5406a3 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 13 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Jaz Powderman + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 2e1d3187-b3ed-478a-93ad-7f99744f2d66 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 17 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Radius: 1.500000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 15 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + Size: + x: ! 1.000000 + y: ! 1.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: ContactDetails + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 0d38bdbf-7c0d-4282-87af-a9cf62c4fda8 + - ! b47d63cf-4961-4e51-9eb0-3a2352e16a21 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 14 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Details if they exist + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4d2eb700-988c-4db5-a297-57f5777dac34 + - ! c7ee0d5a-1eb2-482f-af79-2e732d73c445 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! d30d55d4-56d8-4c80-87a1-8bea52789b04 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Pinch Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2e1d3187-b3ed-478a-93ad-7f99744f2d66 + - ! 05937f73-c87a-4785-879e-653f4bd7cbfe +- ! + PrefabRemaps: + [] + Name: Bitmoji + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 06286a0e-f039-41b9-aad5-4779d25d17f6 + - ! ec6ef17a-d9cf-4fc4-8eac-a2c5df087885 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0298794c-91a1-412f-93ae-ed4e1a98f07a + - ! 54435327-784f-4c7d-a49d-383204494866 + - ! ba03df6e-9941-463b-a602-23d926335075 + - ! d640c5ee-7cc3-44d4-8cb8-4f03f530099f + - ! 1bbf856a-0fc3-4fb7-8047-00850d0ab14f + Components: + - ! 51d51986-29bd-43bf-afdc-e00a0c5dcfa4 +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 2e1d3187-b3ed-478a-93ad-7f99744f2d66 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/ScrollViewListItem.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/ScrollViewListItem.prefab.meta new file mode 100644 index 00000000..1da4708b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/ScrollViewListItem.prefab.meta @@ -0,0 +1,766 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + ObjectPrefab: ! 642b5216-980f-4be9-9593-16aa50bc54ca + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 642b5216-980f-4be9-9593-16aa50bc54ca + PackageType: NotAPackage + AssetDataMap: + ObjectPrefab: ! f7c39d58-4db7-45ce-b0a6-7e54d85e0216 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.000000 + right: -1.000000 + top: 0.000000 + Offset: + left: 1.750000 + bottom: -2.000000 + right: 5.750000 + top: 2.000000 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 16 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! ef3a3d48-a46b-4cc9-a244-eaaf4e812941 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: ScrollViewListItem + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a5a17b66-0352-4cd0-8db6-4a19558d1f65 + - ! b15b40bb-4bfe-40e9-b170-640c210be3b9 + - ! 75688e1f-ee30-409d-a238-e99316f8b63b + - ! c2432ec6-f4ce-4924-a80b-44792c41696c + - ! fb1c8aa6-664c-4574-9e3b-086b0e52f1c4 + Components: + - ! c12576c1-e8ae-4a38-a66f-2d6013c99f7a +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 17 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 780a1cd7-1fdc-450e-954a-caf4fe4374f3 + Mesh: ! 16e2a3b8-4952-40bf-b1bb-0f2b6d31fc5c + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 15 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 409f5a96-3322-429c-8a4b-43d6f203c994 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + Size: + x: ! 1.000000 + y: ! 1.000000 + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: -0.500000 + right: 0.665100 + top: -0.500000 + Offset: + left: -0.000000 + bottom: -0.750000 + right: 0.000000 + top: 0.750000 +- ! + PrefabRemaps: + [] + Name: InteractableSquishFeedback + Enabled: true + ScriptAsset: ! 3397d147-77b8-4570-ba3f-80c4d9229ef5 + ScriptInputsDefault: + horizontalSquish: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + squishObject: ! de1ff498-3ad5-4da0-b388-f068a431e7f4 + verticalSquish: 0.600000 + horizontalSquish: ! 1.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: InteractableAudioFeedback + Enabled: true + ScriptAsset: ! c57fd4b4-b5d5-4eae-b45c-2f62c57e2bc3 + ScriptInputsDefault: + hoverAudioTrack: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + hoverAudioTrack: ! 00000000-0000-0000-0000-000000000000 + triggerStartAudioTrack: ! d531ff43-b8df-4401-839c-645878c5bd2e + triggerEndAudioTrack: ! 7b58983a-a4ca-417f-8171-2a074e30c6d1 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -0.500000 + bottom: 0.200000 + right: 0.665100 + top: 0.200000 + Offset: + left: -0.000000 + bottom: -1.000000 + right: 0.000000 + top: 1.000000 +- ! + PrefabRemaps: + [] + Name: Interactable + Enabled: true + ScriptAsset: ! c973d211-281b-4016-ae39-e12f3317bcae + ScriptInputsDefault: + targetingMode: true + enableInstantDrag: true + allowMultipleInteractors: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetingMode: ! 3.000000 + enableInstantDrag: false + allowMultipleInteractors: true + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 14 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Details if they exist + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! a04f6bc5-fd7c-4ce5-9d5c-6d16a6218a25 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.600000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + ScriptAsset: ! e66e07b4-5f11-478e-be75-73f3c76bdd61 + ScriptInputsDefault: + editEventCallbacks: true + customFunctionForOnButtonPinched: true + onButtonPinchedFunctionNames: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + editEventCallbacks: false + customFunctionForOnButtonPinched: ! 00000000-0000-0000-0000-000000000000 + onButtonPinchedFunctionNames: ! + [] + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Background + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 30d01c2e-fd3f-4372-9b7c-86dae41f1cae + - ! 256510ad-6649-43c6-b3e6-3bccdf51b0a0 +- ! + PrefabRemaps: + [] + Name: InteractableColorFeedback + Enabled: true + ScriptAsset: ! 2f5f1a79-ca6d-4d74-a865-d21c3820e03e + ScriptInputsDefault: + defaultColor: true + hoverColor: true + pinchedColor: true + disabledColor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + defaultColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + hoverColor: ! {x: 0.280000, y: 0.280000, z: 0.280000, w: 1.000000} + pinchedColor: ! {x: 0.460000, y: 0.460000, z: 0.460000, w: 1.000000} + disabledColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.000000} + meshVisuals: ! + - ! 2efeab76-adda-45bb-b34e-108760c834b8 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Physics Body + Enabled: true + Shape: ! + FitVisual: false + Radius: 1.500000 + Matter: ! 00000000-0000-0000-0000-000000000000 + Filter: ! 00000000-0000-0000-0000-000000000000 + OverlapFilter: ! 00000000-0000-0000-0000-000000000000 + WorldSettings: ! 00000000-0000-0000-0000-000000000000 + EnableSmoothing: false + PositionTension: 30.000000 + RotationTension: 30.000000 + ForceCompound: false + Intangible: false + ShowCollider: false + Dynamic: false + BodySetting: Density + BodySettingValue: 1.000000 + Damping: 0.000000 + AngularDamping: 0.000000 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: -1.000000 + right: 1.000000 + top: 1.000000 + Offset: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 +- ! + PrefabRemaps: + [] + Name: ContactName + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4acd99a5-8351-4139-a7fa-8650af0ceb0c + - ! c9ba6605-7418-4903-a73d-987975ce35ad +- ! + PrefabRemaps: + [] + Name: InteractableOutlineFeedback + Enabled: true + ScriptAsset: ! c2e90e99-2305-4b10-a778-d72bf9b9adbd + ScriptInputsDefault: + hoveringColor: true + activatingColor: true + outlineWeight: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + targetOutlineMaterial: ! e9a54599-e28b-4cfe-b14c-2ec3256020aa + hoveringColor: ! {x: 1.000000, y: 1.000000, z: 0.040000, w: 1.000000} + activatingColor: ! {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + outlineWeight: -0.250000 + meshVisuals: ! + - ! 2efeab76-adda-45bb-b34e-108760c834b8 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ContactDetails + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 35b7977b-cde5-402a-9afa-06a31d48b9c7 + - ! 4bd803c7-abe4-42f1-938f-900fb70ab213 +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.000000, y: 0.300000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: -1.000000 + bottom: 0.300000 + right: 1.000000 + top: 0.300000 + Offset: + left: 0.000001 + bottom: -2.500000 + right: -0.000001 + top: 2.500000 +- ! + PrefabRemaps: + [] + Name: Bitmoji + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1eadb729-2b00-4795-93a5-c665c974956f + - ! 05fd22d7-8475-4776-a7e2-ba01cd4feea4 +- ! + PrefabRemaps: + [] + Name: Text 2 + Enabled: true + RenderOrder: 13 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Left + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Text: Jaz Powderman + Editable: false + ShowEditingPreview: true + TouchHandler: ! 00000000-0000-0000-0000-000000000000 + SizeToFit: false + FontSize: 48 + Font: ! 711473f0-eaf8-4cdb-8d22-e1d2e07c6345 + LayoutRect: + left: -7.500000 + bottom: -2.250000 + right: 7.500000 + top: 2.250000 + OverflowVertical: Overflow + OverflowHorizontal: Overflow + Fill: ! + Mode: Solid + Color: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Outline: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Size: 0.250000 + Dropshadow: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + OffsetX: 0.250000 + OffsetY: 0.250000 + Background: ! + Enabled: false + Fill: ! + Mode: Solid + Color: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000} + Texture: ! 00000000-0000-0000-0000-000000000000 + TileCount: 5.000000 + TileZone: Rect + TextureStretch: FitWidth + Margins: + left: 0.000000 + bottom: 0.000000 + right: 0.000000 + top: 0.000000 + CornerRadius: 0.000000 + AdvancedLayout: ! + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 + LetterSpacing: 0.000000 + LineSpacing: 1.000000 + CapitalizationOverride: None + CapitilizationOverride: None + DepthTest: false + TwoSided: false +- ! + PrefabRemaps: + [] + Name: Screen Transform + Enabled: true + IsAdvanced: false + Constraints: + pinToLeft: false + pinToTop: false + pinToRight: false + pinToBottom: false + fixedWidth: false + fixedHeight: false + deactivatedFixedSprite: false + deactivatedFixedPivot: false + Pivot: {x: 0.000000, y: 0.000000} + Transform: + position: {x: 0.825276, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + RawMode: true + ForceBasic: true + Anchor: + left: 0.825276 + bottom: 0.000000 + right: 0.825276 + top: 0.000000 + Offset: + left: -1.500000 + bottom: -1.500000 + right: 1.500000 + top: 1.500000 +- ! + PrefabRemaps: + [] + Name: Pinch Button Mesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2efeab76-adda-45bb-b34e-108760c834b8 + - ! 9cae1319-ad3d-4b2a-88a3-f6d11dba5500 +- ! + PackagePath: "" + objects: + - ! 220a6bf5-2e25-4959-86cd-7e772e9a6969 + LazyLoading: false + RetainAssets: true +- ! + SourceRemaps: + - 0298794c-91a1-412f-93ae-ed4e1a98f07a: a5a17b66-0352-4cd0-8db6-4a19558d1f65 + - 05937f73-c87a-4785-879e-653f4bd7cbfe: 9cae1319-ad3d-4b2a-88a3-f6d11dba5500 + - 06286a0e-f039-41b9-aad5-4779d25d17f6: 1eadb729-2b00-4795-93a5-c665c974956f + - 0d38bdbf-7c0d-4282-87af-a9cf62c4fda8: 35b7977b-cde5-402a-9afa-06a31d48b9c7 + - 1bbf856a-0fc3-4fb7-8047-00850d0ab14f: fb1c8aa6-664c-4574-9e3b-086b0e52f1c4 + - 2a33923e-ffa7-48bc-bffe-9579f9595a8c: c9ba6605-7418-4903-a73d-987975ce35ad + - 2bdef6c8-aa9b-4e4b-95f3-1f5a34f788cd: a91ca22b-d38a-4155-b997-d369e7fb5002 + - 2e1d3187-b3ed-478a-93ad-7f99744f2d66: 2efeab76-adda-45bb-b34e-108760c834b8 + - 36ca1216-3ea2-432a-b0ae-c73a2bd49b37: 78215fc2-6bb1-443e-a189-e1d979d431ec + - 4d2eb700-988c-4db5-a297-57f5777dac34: 30d01c2e-fd3f-4372-9b7c-86dae41f1cae + - 51d51986-29bd-43bf-afdc-e00a0c5dcfa4: c12576c1-e8ae-4a38-a66f-2d6013c99f7a + - 54435327-784f-4c7d-a49d-383204494866: b15b40bb-4bfe-40e9-b170-640c210be3b9 + - aed271ca-fdcc-4482-99e2-bb97eecefd80: 4acd99a5-8351-4139-a7fa-8650af0ceb0c + - b47d63cf-4961-4e51-9eb0-3a2352e16a21: 4bd803c7-abe4-42f1-938f-900fb70ab213 + - b49ea6f7-46eb-4328-9feb-b8cebe4166fa: 40a42640-9261-425a-8fc5-c5634e928ffa + - ba03df6e-9941-463b-a602-23d926335075: 75688e1f-ee30-409d-a238-e99316f8b63b + - c3062ad4-fda5-44f0-a70b-6c6f9ebb3b15: 40a15cea-1692-4652-b69a-56e9566a567d + - c7ee0d5a-1eb2-482f-af79-2e732d73c445: 256510ad-6649-43c6-b3e6-3bccdf51b0a0 + - d30d55d4-56d8-4c80-87a1-8bea52789b04: de1ff498-3ad5-4da0-b388-f068a431e7f4 + - d640c5ee-7cc3-44d4-8cb8-4f03f530099f: c2432ec6-f4ce-4924-a80b-44792c41696c + - d9458e70-e7da-4fd2-b255-9600abd6c8e8: 220a6bf5-2e25-4959-86cd-7e772e9a6969 + - da7a487d-10e8-4266-9382-f6b3fd5406a3: 77807171-1768-4e47-984f-c671099015f9 + - ec6ef17a-d9cf-4fc4-8eac-a2c5df087885: 05fd22d7-8475-4776-a7e2-ba01cd4feea4 + - f060b6e1-03a1-4513-a02b-49b921a2cbb8: 5c2510fa-8fcd-417b-962e-4fb66c74fe1f + - fb8ed0b0-44c3-4910-b742-6eb1c1240b0c: d9133170-c4dc-4b5f-974f-52f73b397c3c + - ff7bd9f1-8bed-4a35-aae2-85cf07766a20: 4b379607-0bf2-41df-a871-014a17ccba4b + SourceState: ! e33a9aaa-e5ca-4095-8947-923c75b294dc +- ! + PrefabRemaps: + [] + Name: PinchButton + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.825276, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! de1ff498-3ad5-4da0-b388-f068a431e7f4 + Components: + - ! 78215fc2-6bb1-443e-a189-e1d979d431ec + - ! d9133170-c4dc-4b5f-974f-52f73b397c3c + - ! 5c2510fa-8fcd-417b-962e-4fb66c74fe1f + - ! 4b379607-0bf2-41df-a871-014a17ccba4b + - ! 40a15cea-1692-4652-b69a-56e9566a567d + - ! a91ca22b-d38a-4155-b997-d369e7fb5002 + - ! 40a42640-9261-425a-8fc5-c5634e928ffa + - ! 77807171-1768-4e47-984f-c671099015f9 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/SpectaclesInteractionKit.prefab b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/SpectaclesInteractionKit.prefab new file mode 100644 index 00000000..5b8cad5b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/SpectaclesInteractionKit.prefab @@ -0,0 +1,2274 @@ +- ! + PackagePath: "" + objects: + - ! 481aca89-f9bf-4ce1-a3a8-d75fc0ff915b + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: mid-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000002} + rotation: {x: -0.000207, y: -0.000205, z: -0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e0925a50-c8a1-4759-9d26-eac6079b1fdb + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.054705, y: 3.957050, z: -0.004463} + rotation: {x: -2.614390, y: -0.009460, z: -0.205101} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 50cf7888-914f-493a-8fcd-16a430ffe91e + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218170, z: 0.000000} + rotation: {x: 0.000050, y: -0.000056, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 04ac8134-d110-4511-b25a-891f2f66584b + Components: + [] +- ! + PrefabRemaps: + [] + Name: HandVisual + Enabled: true + ScriptAsset: ! 27fb63e0-f430-409f-b812-20bc1f008d3c + ScriptInputsDefault: + selectVisual: true + autoJointMapping: true + wrist: true + thumbToWrist: true + thumbBaseJoint: true + thumbKnuckle: true + thumbMidJoint: true + thumbTip: true + indexToWrist: true + indexKnuckle: true + indexMidJoint: true + indexUpperJoint: true + indexTip: true + middleToWrist: true + middleKnuckle: true + middleMidJoint: true + middleUpperJoint: true + middleTip: true + ringToWrist: true + ringKnuckle: true + ringMidJoint: true + ringUpperJoint: true + ringTip: true + pinkyToWrist: true + pinkyKnuckle: true + pinkyMidJoint: true + pinkyUpperJoint: true + pinkyTip: true + occluderEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + handType: right + selectVisual: Default + handInteractor: ! d6371ebf-1d3b-4bfa-bdd8-c0a7fabf8f39 + handMesh: ! 1907c2c5-2d81-47ce-96c9-eeb579299134 + root: ! 46a5e549-6a60-40d7-99e2-3d9ea7f5a6fa + autoJointMapping: true + wrist: ! 00000000-0000-0000-0000-000000000000 + thumbToWrist: ! 00000000-0000-0000-0000-000000000000 + thumbBaseJoint: ! 00000000-0000-0000-0000-000000000000 + thumbKnuckle: ! 00000000-0000-0000-0000-000000000000 + thumbMidJoint: ! 00000000-0000-0000-0000-000000000000 + thumbTip: ! 00000000-0000-0000-0000-000000000000 + indexToWrist: ! 00000000-0000-0000-0000-000000000000 + indexKnuckle: ! 00000000-0000-0000-0000-000000000000 + indexMidJoint: ! 00000000-0000-0000-0000-000000000000 + indexUpperJoint: ! 00000000-0000-0000-0000-000000000000 + indexTip: ! 00000000-0000-0000-0000-000000000000 + middleToWrist: ! 00000000-0000-0000-0000-000000000000 + middleKnuckle: ! 00000000-0000-0000-0000-000000000000 + middleMidJoint: ! 00000000-0000-0000-0000-000000000000 + middleUpperJoint: ! 00000000-0000-0000-0000-000000000000 + middleTip: ! 00000000-0000-0000-0000-000000000000 + ringToWrist: ! 00000000-0000-0000-0000-000000000000 + ringKnuckle: ! 00000000-0000-0000-0000-000000000000 + ringMidJoint: ! 00000000-0000-0000-0000-000000000000 + ringUpperJoint: ! 00000000-0000-0000-0000-000000000000 + ringTip: ! 00000000-0000-0000-0000-000000000000 + pinkyToWrist: ! 00000000-0000-0000-0000-000000000000 + pinkyKnuckle: ! 00000000-0000-0000-0000-000000000000 + pinkyMidJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyUpperJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyTip: ! 00000000-0000-0000-0000-000000000000 + shouldThumbPokeGlow: true + unitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + tipGlowMaterial: ! ea08fbd2-4db1-40d5-855b-ca5307409d64 + idleColor: ! {x: 1.000000, y: 0.686275, z: 0.000000, w: 1.000000} + pinchDownColor: ! {x: 0.968627, y: 0.827451, z: 0.000000, w: 1.000000} + tapProximityThreshold: ! 8.000000 + pinchTexture: ! e0a110ae-6b49-431f-9924-e602351e9a0c + tapTexture: ! f5355afd-bcbc-4434-bcf9-9ff4c341eb87 + occluderEnabled: false + occluderUnitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + radialGradientOcclusionMaterial: ! ab926f89-771c-45e0-a44c-ba4f9f57cafb + handOutlineMaterial: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + handOccluderMaterial: ! 7c9de503-f8ed-4070-be89-238d9e1c76df + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 3.549810, z: -0.000001} + rotation: {x: -0.000000, y: 0.176026, z: -0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a92fd0a3-ee3a-4273-a91b-d625d14ce8d2 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000000} + rotation: {x: -0.000148, y: 0.000148, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7e835154-746f-4b08-a586-447595fc19a1 + Components: + [] +- ! + PrefabRemaps: + [] + Name: MouseInteractor + Enabled: true + ScriptAsset: ! 52a65860-24de-431c-b6b7-7a6585a77d3c + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + mouseTargetingMode: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 3.000000 + mouseTargetingMode: ! 2.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.067615, y: 3.518870, z: 0.000095} + rotation: {x: 14.081600, y: -0.000034, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 81d57b7d-0209-4404-a775-f7ef13ad4f97 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.001204, y: 3.309390, z: 0.000044} + rotation: {x: 0.145073, y: -0.000050, z: -0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 94200c52-425a-43b6-8893-512b230a7726 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.005385, y: 2.681950, z: -0.000095} + rotation: {x: -5.666190, y: -0.004601, z: -0.046291} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5ce67bb0-6c08-472c-b67f-77bde9454993 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703710, z: 0.000001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 72e54688-1bc6-48fc-89bb-5fc41b166ae0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.009104, y: 2.837160, z: -0.000745} + rotation: {x: -88.447800, y: 0.630570, z: -5.443090} + scale: {x: 1.000000, y: 1.000000, z: 0.999998} + hasSegmentScaleCompensation: false + Children: + - ! 66b39338-c86b-4347-b964-852a182ec082 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 11.824800, z: -0.000000} + rotation: {x: -2.274930, y: -6.337840, z: -8.604530} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7f240caf-60c7-4d5e-b716-5090899a20ce + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002904, y: 3.650310, z: -0.000110} + rotation: {x: -2.676430, y: -0.000566, z: -0.015133} + scale: {x: 0.999999, y: 0.999999, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1d87de05-c879-4ac1-8782-eaceafb0ab7c + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 9999 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 03d33697-6495-4e15-9a2d-646411a514a9 + Mesh: ! 735f7248-824f-40d5-8573-c0cfbbd03abf + Skin: ! e3a7a944-c642-433e-b640-41b775d7e247 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: mid-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.013406, y: 3.861870, z: 0.000154} + rotation: {x: -4.535300, y: 0.000290, z: 0.000017} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8d2fc7e4-0fe6-43d2-b837-fbe1aa318543 + Components: + [] +- ! + PrefabRemaps: + [] + Name: LeftHandModel + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 64c3ab11-f5ff-4e18-91b8-c697a26228bd + - ! aff70df1-490d-4236-bfe7-1c9fcd1a028a + Components: + - ! 1f7bf313-445c-40f6-92ad-a40a50dea575 +- ! + PrefabRemaps: + [] + Name: mid-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.010479, y: 3.166700, z: 0.000210} + rotation: {x: -87.477303, y: 5.565590, z: -5.001890} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ad14db46-53e1-460c-a8bf-8c26bd57f37c + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218160, z: 0.000000} + rotation: {x: -0.000051, y: -0.000000, z: 0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5fb8a5cc-ee0c-4abd-bff7-cb1d3aa2a5bc + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + skinBones: + mid-3_end_end_end_end: ! cb9bed1c-7640-4b13-9103-67d3e3ae7401 + LeftHandRig: ! 64c3ab11-f5ff-4e18-91b8-c697a26228bd + ring-2: ! 24d6dc84-ed70-4a53-a3c4-9224488ec60a + LeftHandModel: ! 1d1c8de5-b019-4d0a-adc6-1ad389890762 + pinky-1: ! 93d669d1-3439-4d61-ab72-99f1c6f76a81 + pinky-3_end_end_end: ! 1e231994-34a6-48c1-94ee-339987f113c7 + ring-1: ! 822c9dec-583d-4588-bf8f-9e76769d9791 + index-3: ! 12ba946a-1a8e-4e95-87e5-087ec0b249cc + wrist_to_ring: ! e8f1e2a0-17f6-445d-ad3b-100743436988 + index-1: ! 32b9372e-60ad-430c-87fe-a43f6258b4e5 + pinky-2: ! 0f43b8a1-5f63-44c3-9ba0-32318363dc57 + index-0: ! 42c8f113-929e-4b03-b3c0-1e0908941234 + LeftHandMesh: ! aff70df1-490d-4236-bfe7-1c9fcd1a028a + wrist_to_pinky: ! 24d70dc1-4597-48e0-9370-c6e9293594d4 + wrist_to_thumb: ! 37803923-6d4a-4268-aba1-ef5d1d23cd46 + index-3_end_end_end: ! c224f6fa-05b2-43d9-b45b-0050539a4688 + mid-3: ! 1d87de05-c879-4ac1-8782-eaceafb0ab7c + index-3_end: ! 66b39338-c86b-4347-b964-852a182ec082 + index-3_end_end: ! c609db94-d0da-4230-a62a-7f71134c5356 + pinky-0: ! 2a62abd3-948e-4fb7-bacd-e846fe772fc8 + pinky-3: ! 5ce67bb0-6c08-472c-b67f-77bde9454993 + mid-1: ! 951124b2-906c-4f4f-8422-a881e9d98b4a + thumb-3_end_end_end: ! 0473b266-866f-4f68-af21-9d3530e1914f + mid-3_end: ! ad14db46-53e1-460c-a8bf-8c26bd57f37c + mid-3_end_end: ! 95f1c1ea-6b70-4e98-80bd-216ce18becb4 + ring-0: ! 9c6e9559-53cb-4842-afc9-a9cf725bce0a + pinky-3_end: ! 28b286b8-7e97-4ed0-bbce-b813966137ff + wrist_to_index: ! fd649b68-8f72-465f-baa6-ceef905acca1 + thumb-3_end_end: ! e3a03ad7-eb65-485e-86e0-cd9f0e93e442 + mid-0: ! 2536fae3-02cb-4aa5-8c55-952afc929db0 + ring-3_end_end_end_end: ! 72e54688-1bc6-48fc-89bb-5fc41b166ae0 + ring-3_end: ! edd67c66-78f4-4deb-a3bf-c7b0b07504f3 + pinky-3_end_end_end_end: ! 5fb8a5cc-ee0c-4abd-bff7-cb1d3aa2a5bc + mid-3_end_end_end: ! 4b527cf4-3e27-4559-b291-0a0b985b4717 + thumb-2: ! 009892ac-73e5-4967-bd85-efc71c49f0a7 + ring-3: ! 2878109d-8f26-4010-b916-efdc9fecbdf8 + ring-3_end_end: ! a0534ec9-6292-40ec-b6cd-859f7738f85f + thumb-0: ! 3ab55c9b-dd82-4532-943e-d1df8f009177 + thumb-3_end: ! ea14478c-a162-45e4-a7a7-af2ac18b7d4c + thumb-1: ! e417673c-029b-4df2-b240-55edb111620f + wrist: ! 33423227-0e0f-43a6-a69d-a713b9653e99 + thumb-3: ! 50cf7888-914f-493a-8fcd-16a430ffe91e + mid-2: ! 15d70faf-f504-434b-bc7b-bb474fac2980 + wrist_to_mid: ! 4ca9e76a-f818-4a4f-954e-2777667c610a + index-3_end_end_end_end: ! 7976d725-6d53-4c31-a2c3-f96d25c2b921 + index-2: ! db9cf02a-a38c-47aa-b059-2faab8f74c75 + ring-3_end_end_end: ! 12549dba-74cb-48d3-a50f-73daa0d64196 + thumb-3_end_end_end_end: ! a92fd0a3-ee3a-4273-a91b-d625d14ce8d2 + pinky-3_end_end: ! 4756a1da-6124-4cbb-af0c-1631649652f6 +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000000} + rotation: {x: 0.000104, y: 0.000103, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 59d49307-84ec-4eb8-aa0f-22f915eb8a4f + Components: + [] +- ! + PrefabRemaps: + [] + Name: LeftHandVisual + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1d1c8de5-b019-4d0a-adc6-1ad389890762 + Components: + - ! 5aee8ecc-3bc7-4fd4-a5bc-c0eaa693a469 +- ! + PrefabRemaps: + [] + Name: Configuration + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ca642efc-944a-4dac-beb4-508163707dd4 + - ! 63d95309-a416-46c0-a21b-462bd3335750 +- ! + PrefabRemaps: + [] + Name: ring-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.001204, y: 3.309410, z: 0.000061} + rotation: {x: 0.145060, y: 0.000496, z: 0.002001} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2878109d-8f26-4010-b916-efdc9fecbdf8 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_pinky + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 0.905911, y: 15.703600, z: -17.047701} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2a62abd3-948e-4fb7-bacd-e846fe772fc8 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 11.483000, z: -0.000001} + rotation: {x: 1.265800, y: 6.113890, z: -3.274570} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 951124b2-906c-4f4f-8422-a881e9d98b4a + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 11.483100, z: -0.000001} + rotation: {x: 1.935390, y: 5.930260, z: 3.282900} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1abd5650-e4e3-4218-9dfe-2d518a0b161b + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.001444, y: 2.703710, z: 0.000020} + rotation: {x: 88.973000, y: 4.975880, z: 4.973150} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! edd67c66-78f4-4deb-a3bf-c7b0b07504f3 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218160, z: 0.000000} + rotation: {x: 0.000000, y: -0.000011, z: -0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4756a1da-6124-4cbb-af0c-1631649652f6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000004, y: 11.453500, z: 0.000011} + rotation: {x: -10.793700, y: -13.884800, z: 21.429600} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 93d669d1-3439-4d61-ab72-99f1c6f76a81 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.017407, y: 3.481390, z: 0.001771} + rotation: {x: -8.084740, y: -0.103266, z: -0.728726} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! db9cf02a-a38c-47aa-b059-2faab8f74c75 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000006, y: -0.000002, z: -0.000000} + rotation: {x: 157.399994, y: -83.865097, z: 115.817001} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 37803923-6d4a-4268-aba1-ef5d1d23cd46 + - ! fd649b68-8f72-465f-baa6-ceef905acca1 + - ! 4ca9e76a-f818-4a4f-954e-2777667c610a + - ! e8f1e2a0-17f6-445d-ad3b-100743436988 + - ! 24d70dc1-4597-48e0-9370-c6e9293594d4 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: -0.519322, y: -5.969350, z: -5.521840} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 283ab8bc-80c5-48db-8f22-6b4ab6e6cffe + Components: + [] +- ! + PrefabRemaps: + [] + Name: RightHandInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! d6371ebf-1d3b-4bfa-bdd8-c0a7fabf8f39 +- ! + PrefabRemaps: + [] + Name: InteractorLineVisual + Enabled: true + ScriptAsset: ! a6105daf-0f11-45a0-8684-102e44534dbb + ScriptInputsDefault: + _beginColor: true + _endColor: true + lineWidth: true + lineLength: true + lineStyle: true + shouldStick: true + _interactor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + lineMaterial: ! 9fc7f9a1-6d20-4e6a-9c4a-268d15228b42 + _beginColor: ! {x: 1.000000, y: 1.000000, z: 0.000000} + _endColor: ! {x: 1.000000, y: 1.000000, z: 0.000000} + lineWidth: 0.500000 + lineLength: ! 160.000000 + lineStyle: ! 2.000000 + shouldStick: true + _interactor: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: wrist_to_thumb + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 26.024099, y: -37.686901, z: 24.403400} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3ab55c9b-dd82-4532-943e-d1df8f009177 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000005, y: 4.399180, z: -0.000010} + rotation: {x: -1.007350, y: 44.900501, z: -1.551620} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e417673c-029b-4df2-b240-55edb111620f + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000001} + rotation: {x: 0.000101, y: -0.000115, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 02d483b7-4973-456a-94a1-5973d02ed09f + Components: + [] +- ! + PrefabRemaps: + [] + Name: "[OPTIONAL] Visuals" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 94f70a69-9105-4332-988c-b375881b7bd9 + - ! b3bcf351-f103-47df-a4e8-fd46dbd2a734 + - ! edcde6ca-b40c-4768-a7d2-dd31da71277a + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.009134, y: 2.837150, z: 0.000078} + rotation: {x: -87.845497, y: -5.462180, z: -5.671890} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 95dea6d2-2c8c-477b-a1f3-e372e02e6a0b + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 11.787900, z: -0.000005} + rotation: {x: 0.059034, y: 19.848200, z: -15.906400} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 32b9372e-60ad-430c-87fe-a43f6258b4e5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: RightHandModel + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! fb7196a9-d764-4f20-bf77-8d5722266d27 + - ! efcdb1e4-82aa-48d7-adff-ea83aadec8f0 + Components: + - ! e3a7a944-c642-433e-b640-41b775d7e247 +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218160, z: -0.000003} + rotation: {x: 0.000050, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1e231994-34a6-48c1-94ee-339987f113c7 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000006, y: -0.000000, z: -0.000002} + rotation: {x: -176.654007, y: -5.519800, z: -92.680099} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a227f4f5-bb8b-4083-8ff3-76b300794afe + - ! 96aa9a5e-354d-415a-ac80-5442481fec05 + - ! 341ee23b-b82c-4f55-b23d-193c0df5c016 + - ! 7ca6c509-63a2-4a25-877e-e28ae50f4f4f + - ! 6f03f0b2-6d81-4bc9-a49b-6d387e0245ff + Components: + [] +- ! + PrefabRemaps: + [] + Name: SpectaclesInteractionKit + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c4bd0335-b377-414d-8521-c473e35c5774 + - ! 3b885064-9472-4754-9b78-42ff961487b9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166710, z: -0.000003} + rotation: {x: -180.000000, y: -0.000000, z: -180.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cb9bed1c-7640-4b13-9103-67d3e3ae7401 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: -0.519104, y: -5.758140, z: 5.627940} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2536fae3-02cb-4aa5-8c55-952afc929db0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000009, y: 4.399180, z: 0.000004} + rotation: {x: 1.097870, y: 44.900902, z: 1.556590} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0b203467-22aa-4c6c-a7de-22b8f87e0ad6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.122141, y: 3.547710, z: 0.009542} + rotation: {x: -59.788200, y: 5.800900, z: 165.218002} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ea14478c-a162-45e4-a7a7-af2ac18b7d4c + Components: + [] +- ! + PrefabRemaps: + [] + Name: CursorController + Enabled: true + ScriptAsset: ! b1bd344a-41d1-4a26-bbbb-6c15ab434046 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166730, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.010478, y: 3.166710, z: 0.000270} + rotation: {x: -86.458298, y: -5.335180, z: -5.675670} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0003afb6-e082-42ab-b89f-d22eb256f228 + Components: + [] +- ! + PrefabRemaps: + [] + Name: HandVisual + Enabled: true + ScriptAsset: ! 27fb63e0-f430-409f-b812-20bc1f008d3c + ScriptInputsDefault: + selectVisual: true + autoJointMapping: true + wrist: true + thumbToWrist: true + thumbBaseJoint: true + thumbKnuckle: true + thumbMidJoint: true + thumbTip: true + indexToWrist: true + indexKnuckle: true + indexMidJoint: true + indexUpperJoint: true + indexTip: true + middleToWrist: true + middleKnuckle: true + middleMidJoint: true + middleUpperJoint: true + middleTip: true + ringToWrist: true + ringKnuckle: true + ringMidJoint: true + ringUpperJoint: true + ringTip: true + pinkyToWrist: true + pinkyKnuckle: true + pinkyMidJoint: true + pinkyUpperJoint: true + pinkyTip: true + occluderEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + handType: left + selectVisual: Default + handInteractor: ! b935b9b7-3c38-42b9-8045-c6609e019a8f + handMesh: ! eb708bc5-ef13-451c-b7b2-46398c05d999 + root: ! 1d1c8de5-b019-4d0a-adc6-1ad389890762 + autoJointMapping: true + wrist: ! 00000000-0000-0000-0000-000000000000 + thumbToWrist: ! 00000000-0000-0000-0000-000000000000 + thumbBaseJoint: ! 00000000-0000-0000-0000-000000000000 + thumbKnuckle: ! 00000000-0000-0000-0000-000000000000 + thumbMidJoint: ! 00000000-0000-0000-0000-000000000000 + thumbTip: ! 00000000-0000-0000-0000-000000000000 + indexToWrist: ! 00000000-0000-0000-0000-000000000000 + indexKnuckle: ! 00000000-0000-0000-0000-000000000000 + indexMidJoint: ! 00000000-0000-0000-0000-000000000000 + indexUpperJoint: ! 00000000-0000-0000-0000-000000000000 + indexTip: ! 00000000-0000-0000-0000-000000000000 + middleToWrist: ! 00000000-0000-0000-0000-000000000000 + middleKnuckle: ! 00000000-0000-0000-0000-000000000000 + middleMidJoint: ! 00000000-0000-0000-0000-000000000000 + middleUpperJoint: ! 00000000-0000-0000-0000-000000000000 + middleTip: ! 00000000-0000-0000-0000-000000000000 + ringToWrist: ! 00000000-0000-0000-0000-000000000000 + ringKnuckle: ! 00000000-0000-0000-0000-000000000000 + ringMidJoint: ! 00000000-0000-0000-0000-000000000000 + ringUpperJoint: ! 00000000-0000-0000-0000-000000000000 + ringTip: ! 00000000-0000-0000-0000-000000000000 + pinkyToWrist: ! 00000000-0000-0000-0000-000000000000 + pinkyKnuckle: ! 00000000-0000-0000-0000-000000000000 + pinkyMidJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyUpperJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyTip: ! 00000000-0000-0000-0000-000000000000 + shouldThumbPokeGlow: true + unitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + tipGlowMaterial: ! ea08fbd2-4db1-40d5-855b-ca5307409d64 + idleColor: ! {x: 1.000000, y: 0.686275, z: 0.000000, w: 1.000000} + pinchDownColor: ! {x: 0.968627, y: 0.827451, z: 0.000000, w: 1.000000} + tapProximityThreshold: ! 8.000000 + pinchTexture: ! e0a110ae-6b49-431f-9924-e602351e9a0c + tapTexture: ! f5355afd-bcbc-4434-bcf9-9ff4c341eb87 + occluderEnabled: false + occluderUnitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + radialGradientOcclusionMaterial: ! ab926f89-771c-45e0-a44c-ba4f9f57cafb + handOutlineMaterial: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + handOccluderMaterial: ! f5326505-501a-4c5e-8979-15bb3dadfa0b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703720, z: -0.000000} + rotation: {x: 0.000283, y: 0.000276, z: 0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d0f8de20-470a-4599-b195-7ae175fbfc78 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.008175, y: 2.218150, z: 0.000011} + rotation: {x: 83.677002, y: -4.512030, z: -172.722000} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 28b286b8-7e97-4ed0-bbce-b813966137ff + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218160, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.017495, y: 3.481400, z: 0.000180} + rotation: {x: -8.118590, y: -0.000575, z: 0.000047} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ce6d11c6-be32-4e32-b7b8-6c199feef4ea + Components: + [] +- ! + PrefabRemaps: + [] + Name: SIKLogLevelConfiguration + Enabled: true + ScriptAsset: ! d957e0e4-3046-4a85-bc12-52fe1927d9c9 + ScriptInputsDefault: + _debugModeEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + logLevelFilter: 3 + _debugModeEnabled: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: LeftHandRig + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: 0.000000, z: 0.000000} + scale: {x: 0.999999, y: 0.999999, z: 0.999999} + hasSegmentScaleCompensation: false + Children: + - ! 33423227-0e0f-43a6-a69d-a713b9653e99 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837170, z: 0.000001} + rotation: {x: -0.000113, y: -0.000000, z: -0.000031} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c609db94-d0da-4230-a62a-7f71134c5356 + Components: + [] +- ! + PrefabRemaps: + [] + Name: MouseInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 055525b2-7c1a-4f70-9358-23e0d7d156b8 +- ! + PrefabRemaps: + [] + Name: pinky-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000007, y: 11.453500, z: 0.000008} + rotation: {x: 1.584790, y: -17.344000, z: -21.859100} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cfce736c-a49b-4a3e-947a-32a8e98a4961 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_pinky + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 0.918454, y: 18.264400, z: 17.580700} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6b721f55-2fde-4515-8a98-e0623db0c62c + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837170, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_ring + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 0.192403, y: 6.380900, z: 6.216870} + scale: {x: 1.000000, y: 0.999999, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1573681c-afad-4710-bf30-13ab306587e0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002705, y: 3.534420, z: 0.000029} + rotation: {x: 1.238160, y: -0.000262, z: -0.000026} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0d34b376-2158-453b-931e-0189d0cf2dfa + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.054883, y: 3.957040, z: -0.000166} + rotation: {x: -2.622440, y: -0.000180, z: -0.000073} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f4788f9e-4139-4eef-90bc-771177044cd8 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002705, y: 3.534420, z: -0.000008} + rotation: {x: 1.238040, y: -0.000494, z: 0.017060} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 24d6dc84-ed70-4a53-a3c4-9224488ec60a + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837150, z: -0.000001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8f5b51cb-131a-42fa-9ea7-67cee50d6af2 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703720, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002905, y: 3.650320, z: -0.000094} + rotation: {x: -2.676470, y: 0.000075, z: -0.000412} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5a63eead-ba79-4ecd-b8cd-509fbea8a4f2 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837150, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002793, y: 3.304380, z: 0.000052} + rotation: {x: 1.238250, y: -0.000460, z: 0.010196} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0f43b8a1-5f63-44c3-9ba0-32318363dc57 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.001444, y: 2.703720, z: 0.000001} + rotation: {x: 88.027298, y: -5.497920, z: 5.333360} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c6e2a5f7-ab1a-4d18-a9d6-a0cd79b37fa7 + Components: + [] +- ! + PrefabRemaps: + [] + Name: HandVisuals + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 22806c77-18d4-41eb-81b3-b85d1228c059 + - ! b0e47302-1cbb-4346-a62f-8e341c73f7b5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.013405, y: 3.861870, z: 0.000233} + rotation: {x: -4.535240, y: -0.003456, z: -0.026343} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 15d70faf-f504-434b-bc7b-bb474fac2980 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837150, z: -0.000002} + rotation: {x: -0.000039, y: -0.000040, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! faaefd86-d1ae-4d56-a280-766a06b98cf6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166710, z: -0.000003} + rotation: {x: 0.000035, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4b527cf4-3e27-4559-b291-0a0b985b4717 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_index + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: -0.143142, y: -18.425200, z: -17.556000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cb2a32d4-1a84-411d-aa42-bf42bfa144e4 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 11.824800, z: 0.000000} + rotation: {x: -4.158420, y: -5.389360, z: 8.544330} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 822c9dec-583d-4588-bf8f-9e76769d9791 + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractorLineVisual + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 34e94d3a-2900-4f04-bbdd-8be35309a24f +- ! + PrefabRemaps: + [] + Name: ring-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000025} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 12549dba-74cb-48d3-a50f-73daa0d64196 + Components: + [] +- ! + PrefabRemaps: + [] + Name: MobileInteractor + Enabled: true + ScriptAsset: ! d81defaa-c407-472a-8de6-a4a6cc16eeb1 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + initializePositionAndRotationFilter: true + _touchpadScrollSpeed: true + touchpadDragThreshold: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + spherecastDistanceThresholds: ! + - 0.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 3.000000 + initializePositionAndRotationFilter: true + _touchpadScrollSpeed: ! 250.000000 + touchpadDragThreshold: 0.050000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: wrist_to_thumb + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 27.434401, y: -41.097198, z: -59.864601} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 4f009679-ee66-4a0c-8747-6163b9934265 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 3.166710, z: 0.000002} + rotation: {x: 0.000000, y: 0.000019, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 95f1c1ea-6b70-4e98-80bd-216ce18becb4 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549800, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: LeftHandMesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000001, z: -0.000001} + rotation: {x: -90.000000, y: -0.000000, z: -0.000000} + scale: {x: 0.999999, y: 0.999999, z: 0.999999} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! eb708bc5-ef13-451c-b7b2-46398c05d999 +- ! + PrefabRemaps: + [] + Name: RightHandVisual + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 46a5e549-6a60-40d7-99e2-3d9ea7f5a6fa + Components: + - ! 0465eda0-f2a8-46a0-89bf-aec9d8b8da01 +- ! + PrefabRemaps: + [] + Name: InteractorCursors + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 5197ee39-b38d-42eb-8c32-d9938bfefb40 +- ! + PrefabRemaps: + [] + Name: HandInteractor + Enabled: true + ScriptAsset: ! b5f70408-5d57-4afd-996b-8f26ae0ddcb2 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + raycastAlgorithm: true + forcePokeOnNonDominantPalmProximity: true + directColliderEnterRadius: true + directColliderExitRadius: true + directDragThreshold: true + filterBasedOnIntent: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 40.000000 + handType: left + raycastAlgorithm: Proxy + forcePokeOnNonDominantPalmProximity: false + directColliderEnterRadius: ! 1.000000 + directColliderExitRadius: 1.500000 + directDragThreshold: ! 3.000000 + filterBasedOnIntent: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.005382, y: 2.681950, z: -0.000140} + rotation: {x: -5.666390, y: -0.000025, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! db24ae45-9fd3-4bac-a406-0cad45a3f045 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549800, z: -0.000002} + rotation: {x: 0.000000, y: 0.000028, z: 0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ae4a9bad-4c46-4bf3-8553-28e8b9416cce + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837170, z: 0.000002} + rotation: {x: -0.000076, y: -0.000000, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7976d725-6d53-4c31-a2c3-f96d25c2b921 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.549800, z: -0.000001} + rotation: {x: 0.000059, y: -0.000014, z: -0.000073} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! bf692fb0-1af3-476e-97cd-092308e529f6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: "[REQUIRED] Core" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 24b98cd7-d5a4-4872-b17b-a6bea152b437 + - ! d1349dfb-66e5-406a-bab7-cbedc09f0583 + - ! 345fde54-ce8d-467e-bc01-3c54e0129ca0 + - ! 682266ba-13a1-48d4-92fd-608428328dfc + - ! f08c52f6-14c2-4ded-be77-3a2b3f47c577 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837170, z: 0.000001} + rotation: {x: 0.000189, y: -0.000000, z: 0.000044} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c224f6fa-05b2-43d9-b45b-0050539a4688 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703730, z: -0.000002} + rotation: {x: -0.000202, y: -0.000189, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5cc46581-44dd-43e4-a2c1-e2bd294a97e6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ConfigurationValidator + Enabled: true + ScriptAsset: ! 287c2824-8220-4e9e-8ac8-18a7e8a5aad0 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: index-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000003, y: 11.787900, z: -0.000003} + rotation: {x: 9.215320, y: 17.707500, z: 16.168699} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 633241a4-412e-4a33-acb2-8487ae2291c9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.008392, y: 3.222930, z: -0.000121} + rotation: {x: -0.204897, y: -0.651952, z: -2.287250} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3c0c8d96-d019-421b-8641-2f6c4fef657f + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002791, y: 3.304380, z: 0.000029} + rotation: {x: 1.238300, y: 0.000079, z: -0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! bb7fd053-b7b8-4148-9784-7a4ecfe99c2b + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703730, z: -0.000001} + rotation: {x: -0.000081, y: -0.000080, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 87b21f5e-7b4d-4754-af21-4925af99ffb4 + Components: + [] +- ! + PrefabRemaps: + [] + Name: LeftHandInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b935b9b7-3c38-42b9-8045-c6609e019a8f +- ! + PrefabRemaps: + [] + Name: HandInteractor + Enabled: true + ScriptAsset: ! b5f70408-5d57-4afd-996b-8f26ae0ddcb2 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + handType: true + raycastAlgorithm: true + forcePokeOnNonDominantPalmProximity: true + directColliderEnterRadius: true + directColliderExitRadius: true + directDragThreshold: true + filterBasedOnIntent: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 40.000000 + handType: right + raycastAlgorithm: Proxy + forcePokeOnNonDominantPalmProximity: false + directColliderEnterRadius: ! 1.000000 + directColliderExitRadius: 1.500000 + directDragThreshold: ! 3.000000 + filterBasedOnIntent: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.008174, y: 2.218150, z: 0.000077} + rotation: {x: 84.965103, y: 6.336930, z: -173.675003} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3b52e609-bccb-4474-8396-af04afb47613 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.008350, y: 3.222920, z: -0.000875} + rotation: {x: -0.656684, y: 0.000193, z: -0.059364} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 12ba946a-1a8e-4e95-87e5-087ec0b249cc + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000001} + rotation: {x: 0.000103, y: 0.000102, z: 0.000010} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 224e1b84-2cd6-40dc-8b4d-39e26681bfd1 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.549810, z: -0.000001} + rotation: {x: 0.000118, y: -23.667299, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0473b266-866f-4f68-af21-9d3530e1914f + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + skinBones: + ring-2: ! 0d34b376-2158-453b-931e-0189d0cf2dfa + pinky-1: ! cfce736c-a49b-4a3e-947a-32a8e98a4961 + pinky-3_end_end_end: ! 04ac8134-d110-4511-b25a-891f2f66584b + ring-1: ! 7f240caf-60c7-4d5e-b716-5090899a20ce + RightHandModel: ! 46a5e549-6a60-40d7-99e2-3d9ea7f5a6fa + index-3: ! 3c0c8d96-d019-421b-8641-2f6c4fef657f + wrist_to_ring: ! 7ca6c509-63a2-4a25-877e-e28ae50f4f4f + index-1: ! 633241a4-412e-4a33-acb2-8487ae2291c9 + pinky-2: ! bb7fd053-b7b8-4148-9784-7a4ecfe99c2b + index-0: ! cb2a32d4-1a84-411d-aa42-bf42bfa144e4 + ring-3_end_end_end: ! d0f8de20-470a-4599-b195-7ae175fbfc78 + RightHandMesh: ! efcdb1e4-82aa-48d7-adff-ea83aadec8f0 + wrist_to_thumb: ! a227f4f5-bb8b-4083-8ff3-76b300794afe + index-3_end_end_end: ! 861c2385-029b-4a3f-bb80-aad4ce6de18d + mid-3: ! 5a63eead-ba79-4ecd-b8cd-509fbea8a4f2 + index-3_end: ! 95dea6d2-2c8c-477b-a1f3-e372e02e6a0b + index-3_end_end: ! faaefd86-d1ae-4d56-a280-766a06b98cf6 + pinky-0: ! 6b721f55-2fde-4515-8a98-e0623db0c62c + pinky-3: ! db24ae45-9fd3-4bac-a406-0cad45a3f045 + mid-1: ! 1abd5650-e4e3-4218-9dfe-2d518a0b161b + mid-3_end: ! 0003afb6-e082-42ab-b89f-d22eb256f228 + thumb-3_end_end_end: ! bf692fb0-1af3-476e-97cd-092308e529f6 + ring-0: ! 1573681c-afad-4710-bf30-13ab306587e0 + mid-3_end_end: ! e0925a50-c8a1-4759-9d26-eac6079b1fdb + mid-3_end_end_end: ! 224e1b84-2cd6-40dc-8b4d-39e26681bfd1 + RightHandRig: ! fb7196a9-d764-4f20-bf77-8d5722266d27 + mid-3_end_end_end_end: ! 59d49307-84ec-4eb8-aa0f-22f915eb8a4f + pinky-3_end: ! 3b52e609-bccb-4474-8396-af04afb47613 + wrist_to_index: ! 96aa9a5e-354d-415a-ac80-5442481fec05 + thumb-3_end_end: ! c3c87762-eca6-4731-87a2-f7596e7c0479 + pinky-3_end_end_end_end: ! 7e835154-746f-4b08-a586-447595fc19a1 + ring-3_end: ! c6e2a5f7-ab1a-4d18-a9d6-a0cd79b37fa7 + mid-0: ! 283ab8bc-80c5-48db-8f22-6b4ab6e6cffe + ring-3_end_end_end_end: ! 87b21f5e-7b4d-4754-af21-4925af99ffb4 + ring-3_end_end: ! 5cc46581-44dd-43e4-a2c1-e2bd294a97e6 + thumb-0: ! 4f009679-ee66-4a0c-8747-6163b9934265 + thumb-3_end: ! eafdc1ea-a52b-486f-af4a-13a4f947b89f + thumb-1: ! 0b203467-22aa-4c6c-a7de-22b8f87e0ad6 + ring-3: ! 94200c52-425a-43b6-8893-512b230a7726 + thumb-2: ! 81d57b7d-0209-4404-a775-f7ef13ad4f97 + wrist: ! 47ceb1fa-65b6-498e-af35-6f5af78c2618 + thumb-3: ! f4788f9e-4139-4eef-90bc-771177044cd8 + mid-2: ! 8d2fc7e4-0fe6-43d2-b837-fbe1aa318543 + wrist_to_mid: ! 341ee23b-b82c-4f55-b23d-193c0df5c016 + pinky-3_end_end: ! 02d483b7-4973-456a-94a1-5973d02ed09f + index-3_end_end_end_end: ! 8f5b51cb-131a-42fa-9ea7-67cee50d6af2 + index-2: ! ce6d11c6-be32-4e32-b7b8-6c199feef4ea + thumb-3_end_end_end_end: ! ae4a9bad-4c46-4bf3-8553-28e8b9416cce + wrist_to_pinky: ! 6f03f0b2-6d81-4bc9-a49b-6d387e0245ff +- ! + PrefabRemaps: + [] + Name: thumb-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.067402, y: 3.518870, z: -0.005366} + rotation: {x: 14.034800, y: -0.274095, z: 1.092330} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 009892ac-73e5-4967-bd85-efc71c49f0a7 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_ring + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 0.192331, y: 6.274080, z: -6.174470} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9c6e9559-53cb-4842-afc9-a9cf725bce0a + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: -0.000001} + rotation: {x: -0.000121, y: 23.491301, z: -0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e3a03ad7-eb65-485e-86e0-cd9f0e93e442 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: 0.000001} + rotation: {x: -0.000096, y: -0.000037, z: 0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c3c87762-eca6-4731-87a2-f7596e7c0479 + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 9999 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 4254844d-aef9-45e9-87f1-d6ab7d608c4f + Mesh: ! b2d2360c-44b0-4f99-a5ad-3651706e0e4b + Skin: ! 1f7bf313-445c-40f6-92ad-a40a50dea575 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: "[LEGACY] InteractorLineVisual" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9f23857f-0354-4c96-a54d-0a74653401b0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703710, z: 0.000002} + rotation: {x: 0.000000, y: 0.000000, z: -0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a0534ec9-6292-40ec-b6cd-859f7738f85f + Components: + [] +- ! + PrefabRemaps: + [] + Name: RightHandMesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1907c2c5-2d81-47ce-96c9-eeb579299134 +- ! + PrefabRemaps: + [] + Name: MobileInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a216ab78-0022-4fc2-96cf-862ffa9f0371 +- ! + PrefabRemaps: + [] + Name: thumb-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.122509, y: 3.547690, z: -0.000037} + rotation: {x: -119.537003, y: -11.132400, z: -6.501390} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! eafdc1ea-a52b-486f-af4a-13a4f947b89f + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837150, z: -0.000000} + rotation: {x: 0.000038, y: 0.000042, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 861c2385-029b-4a3f-bb80-aad4ce6de18d + Components: + [] +- ! + PrefabRemaps: + [] + Name: RightHandRig + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 47ceb1fa-65b6-498e-af35-6f5af78c2618 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_index + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: -0.140613, y: -15.148800, z: 17.637899} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 42c8f113-929e-4b03-b3c0-1e0908941234 + Components: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/SpectaclesInteractionKit.prefab.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/SpectaclesInteractionKit.prefab.meta new file mode 100644 index 00000000..8c6c5829 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Prefabs/SpectaclesInteractionKit.prefab.meta @@ -0,0 +1,2420 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! f8de076e-14c5-4869-815e-97dfb35529e7 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! f8de076e-14c5-4869-815e-97dfb35529e7 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + ObjectPrefab: ! d6b19b5c-56aa-439c-a1e7-b42fc1dd6fe0 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + PrefabRemaps: + [] + Name: wrist_to_ring + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 0.192331, y: 6.274080, z: -6.174470} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5f20ec08-c7cd-4675-a48d-dd74968ec4d7 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166730, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: SpectaclesInteractionKit + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 93827cc5-a953-4861-9d1e-712b132f6619 + - ! eb56a3b1-17bf-4627-b5ef-a29c12868072 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.009104, y: 2.837160, z: -0.000745} + rotation: {x: -88.447800, y: 0.630570, z: -5.443090} + scale: {x: 1.000000, y: 1.000000, z: 0.999998} + hasSegmentScaleCompensation: false + Children: + - ! d9b7ee8e-a9c5-40d6-8279-4eec31980ab9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.549800, z: -0.000001} + rotation: {x: 0.000059, y: -0.000014, z: -0.000073} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d891d276-efe1-4c8f-8b7e-95cd79b35364 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703730, z: -0.000002} + rotation: {x: -0.000202, y: -0.000189, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b91c0fb4-d739-4f27-beea-85ae77c565ea + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 11.483000, z: -0.000001} + rotation: {x: 1.265800, y: 6.113890, z: -3.274570} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1ec73053-c75c-4fcc-b889-08cc253455e4 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837150, z: -0.000002} + rotation: {x: -0.000039, y: -0.000040, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e83abff0-fe19-4f02-b359-a06ae14818f4 + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 9999 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 03d33697-6495-4e15-9a2d-646411a514a9 + Mesh: ! 735f7248-824f-40d5-8573-c0cfbbd03abf + Skin: ! ad116ad3-df03-44cd-be5b-a808d805a902 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: ring-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002705, y: 3.534420, z: -0.000008} + rotation: {x: 1.238040, y: -0.000494, z: 0.017060} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e70fca4c-df37-4119-a16b-8ca809738fca + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002793, y: 3.304380, z: 0.000052} + rotation: {x: 1.238250, y: -0.000460, z: 0.010196} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! bc738d9f-a07b-4015-9609-391efdb5b21c + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.013405, y: 3.861870, z: 0.000233} + rotation: {x: -4.535240, y: -0.003456, z: -0.026343} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f36adf2b-cb0d-4d17-8032-92a357188727 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_pinky + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 0.905911, y: 15.703600, z: -17.047701} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2114ca63-5b0d-4f5a-bb57-2480824e7ee3 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000004, y: 11.453500, z: 0.000011} + rotation: {x: -10.793700, y: -13.884800, z: 21.429600} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1da287aa-43af-4c07-9327-03ba984fc4d0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837150, z: -0.000001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b9163dbc-0b8d-4ce5-88ac-0c2eb657f98e + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractorLineVisual + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4a011e45-fd0b-400a-b2fa-4170f9c1f62c +- ! + PrefabRemaps: + [] + Name: thumb-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.122509, y: 3.547690, z: -0.000037} + rotation: {x: -119.537003, y: -11.132400, z: -6.501390} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 834269e4-4713-4a65-a39f-f1dc8474fa26 + Components: + [] +- ! + PrefabRemaps: + [] + Name: LeftHandRig + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: 0.000000, z: 0.000000} + scale: {x: 0.999999, y: 0.999999, z: 0.999999} + hasSegmentScaleCompensation: false + Children: + - ! f950caaf-d491-4bf6-968e-01dfa516e7f2 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_pinky + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 0.918454, y: 18.264400, z: 17.580700} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b98ed8aa-adb8-4a90-8497-82f509e93c49 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000025} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 482e497b-046d-4e69-8fde-d6c9753e7b46 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ConfigurationValidator + Enabled: true + ScriptAsset: ! 287c2824-8220-4e9e-8ac8-18a7e8a5aad0 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: HandInteractor + Enabled: true + ScriptAsset: ! b5f70408-5d57-4afd-996b-8f26ae0ddcb2 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + raycastAlgorithm: true + forcePokeOnNonDominantPalmProximity: true + directColliderEnterRadius: true + directColliderExitRadius: true + directDragThreshold: true + filterBasedOnIntent: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 40.000000 + handType: left + raycastAlgorithm: Proxy + forcePokeOnNonDominantPalmProximity: false + directColliderEnterRadius: ! 1.000000 + directColliderExitRadius: 1.500000 + directDragThreshold: ! 3.000000 + filterBasedOnIntent: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: ring-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002705, y: 3.534420, z: 0.000029} + rotation: {x: 1.238160, y: -0.000262, z: -0.000026} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b520cb8c-f8f6-4edd-bdf6-03f955679e98 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.067402, y: 3.518870, z: -0.005366} + rotation: {x: 14.034800, y: -0.274095, z: 1.092330} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b0a52483-9a6e-49d0-8a06-c12f4b9e24a6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_thumb + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: 26.024099, y: -37.686901, z: 24.403400} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6326ecaf-c4e6-470d-b024-42b0245d8718 + Components: + [] +- ! + PrefabRemaps: + [] + Name: LeftHandMesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000001, z: -0.000001} + rotation: {x: -90.000000, y: -0.000000, z: -0.000000} + scale: {x: 0.999999, y: 0.999999, z: 0.999999} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 640f142e-9401-4452-a70a-6b84ee9fdeb7 +- ! + PrefabRemaps: + [] + Name: thumb-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.122141, y: 3.547710, z: 0.009542} + rotation: {x: -59.788200, y: 5.800900, z: 165.218002} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3ecb5e79-4d94-4343-bc62-2002be78d9f0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703710, z: 0.000002} + rotation: {x: 0.000000, y: 0.000000, z: -0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2d4fb431-a418-4924-89f2-c32b3b520ede + Components: + [] +- ! + PrefabRemaps: + [] + Name: HandInteractor + Enabled: true + ScriptAsset: ! b5f70408-5d57-4afd-996b-8f26ae0ddcb2 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + handType: true + raycastAlgorithm: true + forcePokeOnNonDominantPalmProximity: true + directColliderEnterRadius: true + directColliderExitRadius: true + directDragThreshold: true + filterBasedOnIntent: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 40.000000 + handType: right + raycastAlgorithm: Proxy + forcePokeOnNonDominantPalmProximity: false + directColliderEnterRadius: ! 1.000000 + directColliderExitRadius: 1.500000 + directDragThreshold: ! 3.000000 + filterBasedOnIntent: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002791, y: 3.304380, z: 0.000029} + rotation: {x: 1.238300, y: 0.000079, z: -0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3f6c1960-0f45-4a3a-9e7e-a67447b2d019 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: -0.000001} + rotation: {x: -0.000121, y: 23.491301, z: -0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b9d4f202-03f8-460c-b0af-61fc4c356c5c + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.005382, y: 2.681950, z: -0.000140} + rotation: {x: -5.666390, y: -0.000025, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 47b62922-d592-4f29-b3bd-8031ea360e98 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218160, z: 0.000000} + rotation: {x: -0.000051, y: -0.000000, z: 0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e3926e34-9003-408a-9cf0-f6ab2750b97f + Components: + [] +- ! + PrefabRemaps: + [] + Name: CursorController + Enabled: true + ScriptAsset: ! b1bd344a-41d1-4a26-bbbb-6c15ab434046 + ScriptInputsDefault: + {} + ScriptTypesDefault: + {} + ScriptInputs: + "": + {} + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: RightHandRig + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! eaf6d31c-4150-47c2-a9f3-16b26fdf82eb + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_thumb + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 27.434401, y: -41.097198, z: -59.864601} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! fd7e7c10-1fde-45fb-b4ae-1b29c7fc3a28 + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + skinBones: + mid-3_end_end_end_end: ! d866260d-fbe6-4b19-ba62-96567884b87d + LeftHandRig: ! 2404fd9a-4d48-458a-af02-94d4fd666077 + ring-2: ! e70fca4c-df37-4119-a16b-8ca809738fca + LeftHandModel: ! f0d6b0fb-62e3-448a-87ee-f6527258390d + pinky-1: ! 1da287aa-43af-4c07-9327-03ba984fc4d0 + pinky-3_end_end_end: ! 410e0d34-e8a4-4dc0-875a-e2893f97702d + ring-1: ! 183f5ed1-ec6e-49c9-8603-fdb5efd6790c + index-3: ! 060bda29-936e-409f-9291-aa232716f91b + wrist_to_ring: ! 0062ad6f-4a1a-4cdc-8fc1-ab49a2f34df9 + index-1: ! 93bed319-009f-450a-b7e0-e1e8b1830ea6 + pinky-2: ! bc738d9f-a07b-4015-9609-391efdb5b21c + index-0: ! 8212a3e5-e939-4eae-81e1-3fbc741c95ae + LeftHandMesh: ! 331cbff3-d65c-4a7d-9b14-0e424d4354ef + wrist_to_pinky: ! 1fd76f2b-2db3-411e-b7ee-c216f1a543a5 + wrist_to_thumb: ! 31bbb94e-8380-4021-ad81-85aa0a52da17 + index-3_end_end_end: ! 47c9a311-024f-4ffb-9021-cd1ee3bf81f7 + mid-3: ! ee338c45-02a9-4b91-b1db-f0f2e7f0c561 + index-3_end: ! d9b7ee8e-a9c5-40d6-8279-4eec31980ab9 + index-3_end_end: ! de60f119-8912-4dec-a8ee-714862f51e6b + pinky-0: ! 2114ca63-5b0d-4f5a-bb57-2480824e7ee3 + pinky-3: ! a34eb85f-5004-458c-a961-3569f71c96f6 + mid-1: ! 1ec73053-c75c-4fcc-b889-08cc253455e4 + thumb-3_end_end_end: ! 682c3de5-d653-44f1-b50a-3da29b927a87 + mid-3_end: ! c3ee4ba4-011e-4330-afeb-24e145dd5116 + mid-3_end_end: ! a5231166-3231-4b80-90b0-d0d576f4a0b7 + ring-0: ! 5f20ec08-c7cd-4675-a48d-dd74968ec4d7 + pinky-3_end: ! 7e8d8d02-2e8a-4b6d-a022-e1d1e34c395f + wrist_to_index: ! b824f2d7-9d96-4eb6-9f78-10dc5c2cbce4 + thumb-3_end_end: ! b9d4f202-03f8-460c-b0af-61fc4c356c5c + mid-0: ! 0c0b7cf8-63f8-4e52-a7a1-931f010669dc + ring-3_end_end_end_end: ! d13c9101-7032-4b19-86a3-4b69f740e46e + ring-3_end: ! 369309c5-6526-47d6-bb4a-a525ea0fc08e + pinky-3_end_end_end_end: ! e3926e34-9003-408a-9cf0-f6ab2750b97f + mid-3_end_end_end: ! 78aa1ef6-c348-457f-93f6-e7c23310e27a + thumb-2: ! b0a52483-9a6e-49d0-8a06-c12f4b9e24a6 + ring-3: ! a598f236-79f6-4635-a26a-b69122522a2a + ring-3_end_end: ! 2d4fb431-a418-4924-89f2-c32b3b520ede + thumb-0: ! 6326ecaf-c4e6-470d-b024-42b0245d8718 + thumb-3_end: ! 3ecb5e79-4d94-4343-bc62-2002be78d9f0 + thumb-1: ! 308dd5bc-51d0-4738-a645-c4c3ff302414 + wrist: ! f950caaf-d491-4bf6-968e-01dfa516e7f2 + thumb-3: ! 35da746a-ca69-4900-aec8-7bea24f0d256 + mid-2: ! f36adf2b-cb0d-4d17-8032-92a357188727 + wrist_to_mid: ! b42d213a-f443-416e-89e7-cf0148cd7acd + index-3_end_end_end_end: ! 870d7e36-4128-4081-829f-ddb761dc5018 + index-2: ! 9fa8beeb-7a11-4fe0-93bf-e98462f57da9 + ring-3_end_end_end: ! 482e497b-046d-4e69-8fde-d6c9753e7b46 + thumb-3_end_end_end_end: ! c5073def-68b1-4a34-9dd4-e6699cd79ffc + pinky-3_end_end: ! e5233629-fb2f-40a0-a5fd-8ecd69f340b9 +- ! + PrefabRemaps: + [] + Name: pinky-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.008174, y: 2.218150, z: 0.000077} + rotation: {x: 84.965103, y: 6.336930, z: -173.675003} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b587f0ee-51b5-4976-acc9-551774f7d888 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837170, z: 0.000002} + rotation: {x: -0.000076, y: -0.000000, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 870d7e36-4128-4081-829f-ddb761dc5018 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703710, z: 0.000001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d13c9101-7032-4b19-86a3-4b69f740e46e + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractorLineVisual + Enabled: true + ScriptAsset: ! a6105daf-0f11-45a0-8684-102e44534dbb + ScriptInputsDefault: + _beginColor: true + _endColor: true + lineWidth: true + lineLength: true + lineStyle: true + shouldStick: true + _interactor: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + lineMaterial: ! 9fc7f9a1-6d20-4e6a-9c4a-268d15228b42 + _beginColor: ! {x: 1.000000, y: 1.000000, z: 0.000000} + _endColor: ! {x: 1.000000, y: 1.000000, z: 0.000000} + lineWidth: 0.500000 + lineLength: ! 160.000000 + lineStyle: ! 2.000000 + shouldStick: true + _interactor: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: wrist_to_mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: -0.519322, y: -5.969350, z: -5.521840} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5a579b8e-b19b-4633-b158-c901f25d5736 + Components: + [] +- ! + PrefabRemaps: + [] + Name: RightHandInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 38e72372-f5c5-4c5e-888e-003531bd745b +- ! + PrefabRemaps: + [] + Name: thumb-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.054883, y: 3.957040, z: -0.000166} + rotation: {x: -2.622440, y: -0.000180, z: -0.000073} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2272f138-1ad5-43dc-916b-fd4c339c5fe2 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.067615, y: 3.518870, z: 0.000095} + rotation: {x: 14.081600, y: -0.000034, z: -0.000013} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 54b6d990-d4c4-44c0-ba50-408f293488c5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: HandVisual + Enabled: true + ScriptAsset: ! 27fb63e0-f430-409f-b812-20bc1f008d3c + ScriptInputsDefault: + selectVisual: true + autoJointMapping: true + wrist: true + thumbToWrist: true + thumbBaseJoint: true + thumbKnuckle: true + thumbMidJoint: true + thumbTip: true + indexToWrist: true + indexKnuckle: true + indexMidJoint: true + indexUpperJoint: true + indexTip: true + middleToWrist: true + middleKnuckle: true + middleMidJoint: true + middleUpperJoint: true + middleTip: true + ringToWrist: true + ringKnuckle: true + ringMidJoint: true + ringUpperJoint: true + ringTip: true + pinkyToWrist: true + pinkyKnuckle: true + pinkyMidJoint: true + pinkyUpperJoint: true + pinkyTip: true + occluderEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + handType: right + selectVisual: Default + handInteractor: ! 38e72372-f5c5-4c5e-888e-003531bd745b + handMesh: ! 15198c7d-b87d-41f2-8a03-ebb1e502aa85 + root: ! feac871f-6262-41f8-97ba-c15238ce8cc6 + autoJointMapping: true + wrist: ! 00000000-0000-0000-0000-000000000000 + thumbToWrist: ! 00000000-0000-0000-0000-000000000000 + thumbBaseJoint: ! 00000000-0000-0000-0000-000000000000 + thumbKnuckle: ! 00000000-0000-0000-0000-000000000000 + thumbMidJoint: ! 00000000-0000-0000-0000-000000000000 + thumbTip: ! 00000000-0000-0000-0000-000000000000 + indexToWrist: ! 00000000-0000-0000-0000-000000000000 + indexKnuckle: ! 00000000-0000-0000-0000-000000000000 + indexMidJoint: ! 00000000-0000-0000-0000-000000000000 + indexUpperJoint: ! 00000000-0000-0000-0000-000000000000 + indexTip: ! 00000000-0000-0000-0000-000000000000 + middleToWrist: ! 00000000-0000-0000-0000-000000000000 + middleKnuckle: ! 00000000-0000-0000-0000-000000000000 + middleMidJoint: ! 00000000-0000-0000-0000-000000000000 + middleUpperJoint: ! 00000000-0000-0000-0000-000000000000 + middleTip: ! 00000000-0000-0000-0000-000000000000 + ringToWrist: ! 00000000-0000-0000-0000-000000000000 + ringKnuckle: ! 00000000-0000-0000-0000-000000000000 + ringMidJoint: ! 00000000-0000-0000-0000-000000000000 + ringUpperJoint: ! 00000000-0000-0000-0000-000000000000 + ringTip: ! 00000000-0000-0000-0000-000000000000 + pinkyToWrist: ! 00000000-0000-0000-0000-000000000000 + pinkyKnuckle: ! 00000000-0000-0000-0000-000000000000 + pinkyMidJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyUpperJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyTip: ! 00000000-0000-0000-0000-000000000000 + shouldThumbPokeGlow: true + unitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + tipGlowMaterial: ! ea08fbd2-4db1-40d5-855b-ca5307409d64 + idleColor: ! {x: 1.000000, y: 0.686275, z: 0.000000, w: 1.000000} + pinchDownColor: ! {x: 0.968627, y: 0.827451, z: 0.000000, w: 1.000000} + tapProximityThreshold: ! 8.000000 + pinchTexture: ! e0a110ae-6b49-431f-9924-e602351e9a0c + tapTexture: ! f5355afd-bcbc-4434-bcf9-9ff4c341eb87 + occluderEnabled: false + occluderUnitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + radialGradientOcclusionMaterial: ! ab926f89-771c-45e0-a44c-ba4f9f57cafb + handOutlineMaterial: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + handOccluderMaterial: ! 7c9de503-f8ed-4070-be89-238d9e1c76df + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: mid-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 11.483100, z: -0.000001} + rotation: {x: 1.935390, y: 5.930260, z: 3.282900} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9b6e6700-d085-4c9b-bf53-01d5d03c2dc0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000002} + rotation: {x: -0.000207, y: -0.000205, z: -0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 94e3e569-4319-4c8c-9bd5-650348544f8f + Components: + [] +- ! + PrefabRemaps: + [] + Name: RightHandVisual + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! feac871f-6262-41f8-97ba-c15238ce8cc6 + Components: + - ! 59d61410-e6bd-447d-b83d-7b0c75236471 +- ! + PrefabRemaps: + [] + Name: ring-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 11.824800, z: 0.000000} + rotation: {x: -4.158420, y: -5.389360, z: 8.544330} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 183f5ed1-ec6e-49c9-8603-fdb5efd6790c + Components: + [] +- ! + PrefabRemaps: + [] + Name: LeftHandVisual + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f0d6b0fb-62e3-448a-87ee-f6527258390d + Components: + - ! bb815606-a6d2-4f9a-b9fa-94569776ccab +- ! + PrefabRemaps: + [] + Name: MobileInteractor + Enabled: true + ScriptAsset: ! d81defaa-c407-472a-8de6-a4a6cc16eeb1 + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + initializePositionAndRotationFilter: true + _touchpadScrollSpeed: true + touchpadDragThreshold: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + spherecastDistanceThresholds: ! + - 0.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 3.000000 + initializePositionAndRotationFilter: true + _touchpadScrollSpeed: ! 250.000000 + touchpadDragThreshold: 0.050000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: thumb-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000005, y: 4.399180, z: -0.000010} + rotation: {x: -1.007350, y: 44.900501, z: -1.551620} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 308dd5bc-51d0-4738-a645-c4c3ff302414 + Components: + [] +- ! + PrefabRemaps: + [] + Name: RightHandMesh + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 15198c7d-b87d-41f2-8a03-ebb1e502aa85 +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 9999 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 4254844d-aef9-45e9-87f1-d6ab7d608c4f + Mesh: ! b2d2360c-44b0-4f99-a5ad-3651706e0e4b + Skin: ! 44036629-a264-4199-8275-e8d9e15d2c81 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000000} + rotation: {x: -0.000148, y: 0.000148, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6faee649-ed0b-4314-bed1-aacea04f483a + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 3.549810, z: -0.000001} + rotation: {x: -0.000000, y: 0.176026, z: -0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c5073def-68b1-4a34-9dd4-e6699cd79ffc + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.017495, y: 3.481400, z: 0.000180} + rotation: {x: -8.118590, y: -0.000575, z: 0.000047} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d9e9abfe-4a79-49f9-b76f-01081a3d3200 + Components: + [] +- ! + PackagePath: "" + objects: + - ! 052dbda9-c01c-4ca0-8511-db2143375eb3 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000000} + rotation: {x: 0.000104, y: 0.000103, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 031ccedd-33fb-4007-b792-10bc2e9d4087 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166710, z: -0.000003} + rotation: {x: -180.000000, y: -0.000000, z: -180.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d866260d-fbe6-4b19-ba62-96567884b87d + Components: + [] +- ! + PrefabRemaps: + [] + Name: MouseInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b9e3a6d6-0f12-4900-bd2b-35f10e31d2d8 +- ! + PrefabRemaps: + [] + Name: ring-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 11.824800, z: -0.000000} + rotation: {x: -2.274930, y: -6.337840, z: -8.604530} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2f1618ae-bd43-45d2-a41c-444eae9d5ffd + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218160, z: 0.000000} + rotation: {x: 0.000000, y: -0.000011, z: -0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! e5233629-fb2f-40a0-a5fd-8ecd69f340b9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: MobileInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 60bb00dc-b347-4567-a739-58f0acab4157 +- ! + PrefabRemaps: + [] + Name: index-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 11.787900, z: -0.000005} + rotation: {x: 0.059034, y: 19.848200, z: -15.906400} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 93bed319-009f-450a-b7e0-e1e8b1830ea6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: 0.000001} + rotation: {x: -0.000096, y: -0.000037, z: 0.000014} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 08071ebb-7cc0-4a08-a8df-ee830ef64807 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837170, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: InteractorCursors + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4125c3d2-ec27-488f-8b1d-d20de29a726b +- ! + PrefabRemaps: + [] + Name: mid-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.002905, y: 3.650320, z: -0.000094} + rotation: {x: -2.676470, y: 0.000075, z: -0.000412} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d7b16828-692e-4922-b452-d17f7883a069 + Components: + [] +- ! + PrefabRemaps: + [] + Name: "[REQUIRED] Core" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! fe279d3e-e1cc-4ae7-bde8-29ee3c3c49ba + - ! fc2d5d8d-8022-4353-9682-ff798013cc6a + - ! 5029a531-ba49-41be-b8fe-c00098aa6b63 + - ! 7d6a07d3-5dbf-430e-8c19-edba2edf9307 + - ! 816c9dd2-c308-42ea-9bdb-e858f6f8e6d8 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.017407, y: 3.481390, z: 0.001771} + rotation: {x: -8.084740, y: -0.103266, z: -0.728726} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9fa8beeb-7a11-4fe0-93bf-e98462f57da9 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.166730, z: 0.000001} + rotation: {x: 0.000103, y: 0.000102, z: 0.000010} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 777d46ee-e102-4218-8bf6-08271ca2483d + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703730, z: -0.000001} + rotation: {x: -0.000081, y: -0.000080, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! aa7644ab-25d9-4d52-8199-92caa4f5606d + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-1 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.013406, y: 3.861870, z: 0.000154} + rotation: {x: -4.535300, y: 0.000290, z: 0.000017} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 93429404-f9b4-4265-a2b0-37842d963643 + Components: + [] +- ! + PrefabRemaps: + [] + Name: HandVisuals + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6045b931-e0bd-40c1-8d57-ff06b391b012 + - ! 5c871db5-65b3-4070-85a9-3c449e044310 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_ring + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: 0.192403, y: 6.380900, z: 6.216870} + scale: {x: 1.000000, y: 0.999999, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7def0c43-f87f-40bf-8090-7d2d350c0a78 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.008350, y: 3.222920, z: -0.000875} + rotation: {x: -0.656684, y: 0.000193, z: -0.059364} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 060bda29-936e-409f-9291-aa232716f91b + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.009134, y: 2.837150, z: 0.000078} + rotation: {x: -87.845497, y: -5.462180, z: -5.671890} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1034f3ac-3b9a-4339-b10f-a0fab01464fb + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.008175, y: 2.218150, z: 0.000011} + rotation: {x: 83.677002, y: -4.512030, z: -172.722000} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 7e8d8d02-2e8a-4b6d-a022-e1d1e34c395f + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166710, z: -0.000003} + rotation: {x: 0.000035, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 78aa1ef6-c348-457f-93f6-e7c23310e27a + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.001444, y: 2.703710, z: 0.000020} + rotation: {x: 88.973000, y: 4.975880, z: 4.973150} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 369309c5-6526-47d6-bb4a-a525ea0fc08e + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_index + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: -0.000006, z: 0.000002} + rotation: {x: -0.143142, y: -18.425200, z: -17.556000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c4e3997b-1080-444c-8ac0-1fec1f541de2 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703720, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + skinBones: + ring-2: ! b520cb8c-f8f6-4edd-bdf6-03f955679e98 + pinky-1: ! 3c63b5c3-a5ad-49e0-bb20-2c8f1a634997 + pinky-3_end_end_end: ! 6729a2b6-bfa6-49d1-a1fc-8d6176f3947e + ring-1: ! 2f1618ae-bd43-45d2-a41c-444eae9d5ffd + RightHandModel: ! feac871f-6262-41f8-97ba-c15238ce8cc6 + index-3: ! a2b5e657-6fa1-4495-98e6-42bb0d87221a + wrist_to_ring: ! 9df82503-d84d-4fdb-b6ee-c00416e32ec5 + index-1: ! 73f2bd45-f861-4f03-bc1e-c5653210cb02 + pinky-2: ! 3f6c1960-0f45-4a3a-9e7e-a67447b2d019 + index-0: ! c4e3997b-1080-444c-8ac0-1fec1f541de2 + ring-3_end_end_end: ! 95982089-4063-492d-881c-0204c00e65eb + RightHandMesh: ! 63f04c53-0714-469c-94fb-2e0a291fea73 + wrist_to_thumb: ! 43180266-1424-4c20-85e8-49a4ac3fc737 + index-3_end_end_end: ! 2116c8da-6381-4d9b-a4a9-7190f8588592 + mid-3: ! d7b16828-692e-4922-b452-d17f7883a069 + index-3_end: ! 1034f3ac-3b9a-4339-b10f-a0fab01464fb + index-3_end_end: ! e83abff0-fe19-4f02-b359-a06ae14818f4 + pinky-0: ! b98ed8aa-adb8-4a90-8497-82f509e93c49 + pinky-3: ! 47b62922-d592-4f29-b3bd-8031ea360e98 + mid-1: ! 9b6e6700-d085-4c9b-bf53-01d5d03c2dc0 + mid-3_end: ! 5b23233d-9716-4fbb-941b-fdd02594cce0 + thumb-3_end_end_end: ! d891d276-efe1-4c8f-8b7e-95cd79b35364 + ring-0: ! 7def0c43-f87f-40bf-8090-7d2d350c0a78 + mid-3_end_end: ! 94e3e569-4319-4c8c-9bd5-650348544f8f + mid-3_end_end_end: ! 777d46ee-e102-4218-8bf6-08271ca2483d + RightHandRig: ! 42ddc92b-e779-412b-9f91-8457277af637 + mid-3_end_end_end_end: ! 031ccedd-33fb-4007-b792-10bc2e9d4087 + pinky-3_end: ! b587f0ee-51b5-4976-acc9-551774f7d888 + wrist_to_index: ! aa0496a3-fcdd-4c2b-9a6d-07653422d537 + thumb-3_end_end: ! 08071ebb-7cc0-4a08-a8df-ee830ef64807 + pinky-3_end_end_end_end: ! 6faee649-ed0b-4314-bed1-aacea04f483a + ring-3_end: ! 0bc06755-a077-483e-981f-6469b33b47dd + mid-0: ! 5a579b8e-b19b-4633-b158-c901f25d5736 + ring-3_end_end_end_end: ! aa7644ab-25d9-4d52-8199-92caa4f5606d + ring-3_end_end: ! b91c0fb4-d739-4f27-beea-85ae77c565ea + thumb-0: ! fd7e7c10-1fde-45fb-b4ae-1b29c7fc3a28 + thumb-3_end: ! 834269e4-4713-4a65-a39f-f1dc8474fa26 + thumb-1: ! 5839bd7b-ea83-48a8-90b5-c26708a87a21 + ring-3: ! f8dda5b9-56f1-40dd-aa1e-a5e0c5b9fc02 + thumb-2: ! 54b6d990-d4c4-44c0-ba50-408f293488c5 + wrist: ! eaf6d31c-4150-47c2-a9f3-16b26fdf82eb + thumb-3: ! 2272f138-1ad5-43dc-916b-fd4c339c5fe2 + mid-2: ! 93429404-f9b4-4265-a2b0-37842d963643 + wrist_to_mid: ! 4b3320a9-8084-477d-a740-1a3f5af9b623 + pinky-3_end_end: ! ce8d5a95-3a28-43f5-9085-d3389fadd738 + index-3_end_end_end_end: ! b9163dbc-0b8d-4ce5-88ac-0c2eb657f98e + index-2: ! d9e9abfe-4a79-49f9-b76f-01081a3d3200 + thumb-3_end_end_end_end: ! c1cacb05-b59c-439f-8718-a605d7651788 + wrist_to_pinky: ! 27b4fca1-2d9d-458d-b410-a1126e3e90fe +- ! + PrefabRemaps: + [] + Name: thumb-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.054705, y: 3.957050, z: -0.004463} + rotation: {x: -2.614390, y: -0.009460, z: -0.205101} + scale: {x: 0.999999, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 35da746a-ca69-4900-aec8-7bea24f0d256 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist_to_mid + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: -0.519104, y: -5.758140, z: 5.627940} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0c0b7cf8-63f8-4e52-a7a1-931f010669dc + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.001204, y: 3.309390, z: 0.000044} + rotation: {x: 0.145073, y: -0.000050, z: -0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! f8dda5b9-56f1-40dd-aa1e-a5e0c5b9fc02 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218170, z: 0.000001} + rotation: {x: 0.000101, y: -0.000115, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ce8d5a95-3a28-43f5-9085-d3389fadd738 + Components: + [] +- ! + PrefabRemaps: + [] + Name: SIKLogLevelConfiguration + Enabled: true + ScriptAsset: ! d957e0e4-3046-4a85-bc12-52fe1927d9c9 + ScriptInputsDefault: + _debugModeEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + logLevelFilter: 3 + _debugModeEnabled: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: wrist_to_index + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000001, y: -0.000005, z: 0.000002} + rotation: {x: -0.140613, y: -15.148800, z: 17.637899} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8212a3e5-e939-4eae-81e1-3fbc741c95ae + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.837150, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.703720, z: -0.000000} + rotation: {x: 0.000283, y: 0.000276, z: 0.000012} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 95982089-4063-492d-881c-0204c00e65eb + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000007, y: 11.453500, z: 0.000008} + rotation: {x: 1.584790, y: -17.344000, z: -21.859100} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 3c63b5c3-a5ad-49e0-bb20-2c8f1a634997 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 3.549810, z: -0.000001} + rotation: {x: 0.000118, y: -23.667299, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 682c3de5-d653-44f1-b50a-3da29b927a87 + Components: + [] +- ! + PrefabRemaps: + [] + Name: MouseInteractor + Enabled: true + ScriptAsset: ! 52a65860-24de-431c-b6b7-7a6585a77d3c + ScriptInputsDefault: + _drawDebug: true + sphereCastEnabled: true + spherecastRadii: true + spherecastDistanceThresholds: true + _maxRaycastDistance: true + indirectTargetingVolumeMultiplier: true + indirectDragThreshold: true + mouseTargetingMode: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + _drawDebug: false + sphereCastEnabled: false + spherecastRadii: ! + - 0.500000 + - 2.000000 + - 4.000000 + spherecastDistanceThresholds: ! + - 0.000000 + - 12.000000 + - 30.000000 + _maxRaycastDistance: ! 500.000000 + indirectTargetingVolumeMultiplier: ! 1.000000 + indirectDragThreshold: ! 3.000000 + mouseTargetingMode: ! 2.000000 + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: HandVisual + Enabled: true + ScriptAsset: ! 27fb63e0-f430-409f-b812-20bc1f008d3c + ScriptInputsDefault: + selectVisual: true + autoJointMapping: true + wrist: true + thumbToWrist: true + thumbBaseJoint: true + thumbKnuckle: true + thumbMidJoint: true + thumbTip: true + indexToWrist: true + indexKnuckle: true + indexMidJoint: true + indexUpperJoint: true + indexTip: true + middleToWrist: true + middleKnuckle: true + middleMidJoint: true + middleUpperJoint: true + middleTip: true + ringToWrist: true + ringKnuckle: true + ringMidJoint: true + ringUpperJoint: true + ringTip: true + pinkyToWrist: true + pinkyKnuckle: true + pinkyMidJoint: true + pinkyUpperJoint: true + pinkyTip: true + occluderEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + handType: left + selectVisual: Default + handInteractor: ! 2ec89c90-23ef-4d6e-8079-acecd4d75c1d + handMesh: ! 640f142e-9401-4452-a70a-6b84ee9fdeb7 + root: ! f0d6b0fb-62e3-448a-87ee-f6527258390d + autoJointMapping: true + wrist: ! 00000000-0000-0000-0000-000000000000 + thumbToWrist: ! 00000000-0000-0000-0000-000000000000 + thumbBaseJoint: ! 00000000-0000-0000-0000-000000000000 + thumbKnuckle: ! 00000000-0000-0000-0000-000000000000 + thumbMidJoint: ! 00000000-0000-0000-0000-000000000000 + thumbTip: ! 00000000-0000-0000-0000-000000000000 + indexToWrist: ! 00000000-0000-0000-0000-000000000000 + indexKnuckle: ! 00000000-0000-0000-0000-000000000000 + indexMidJoint: ! 00000000-0000-0000-0000-000000000000 + indexUpperJoint: ! 00000000-0000-0000-0000-000000000000 + indexTip: ! 00000000-0000-0000-0000-000000000000 + middleToWrist: ! 00000000-0000-0000-0000-000000000000 + middleKnuckle: ! 00000000-0000-0000-0000-000000000000 + middleMidJoint: ! 00000000-0000-0000-0000-000000000000 + middleUpperJoint: ! 00000000-0000-0000-0000-000000000000 + middleTip: ! 00000000-0000-0000-0000-000000000000 + ringToWrist: ! 00000000-0000-0000-0000-000000000000 + ringKnuckle: ! 00000000-0000-0000-0000-000000000000 + ringMidJoint: ! 00000000-0000-0000-0000-000000000000 + ringUpperJoint: ! 00000000-0000-0000-0000-000000000000 + ringTip: ! 00000000-0000-0000-0000-000000000000 + pinkyToWrist: ! 00000000-0000-0000-0000-000000000000 + pinkyKnuckle: ! 00000000-0000-0000-0000-000000000000 + pinkyMidJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyUpperJoint: ! 00000000-0000-0000-0000-000000000000 + pinkyTip: ! 00000000-0000-0000-0000-000000000000 + shouldThumbPokeGlow: true + unitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + tipGlowMaterial: ! ea08fbd2-4db1-40d5-855b-ca5307409d64 + idleColor: ! {x: 1.000000, y: 0.686275, z: 0.000000, w: 1.000000} + pinchDownColor: ! {x: 0.968627, y: 0.827451, z: 0.000000, w: 1.000000} + tapProximityThreshold: ! 8.000000 + pinchTexture: ! e0a110ae-6b49-431f-9924-e602351e9a0c + tapTexture: ! f5355afd-bcbc-4434-bcf9-9ff4c341eb87 + occluderEnabled: false + occluderUnitPlaneMesh: ! 198d4c8c-c021-43ce-a954-a22f1f606ca2 + radialGradientOcclusionMaterial: ! ab926f89-771c-45e0-a44c-ba4f9f57cafb + handOutlineMaterial: ! ae367e71-ee3a-45a1-8095-d0d2321b902e + handOccluderMaterial: ! f5326505-501a-4c5e-8979-15bb3dadfa0b + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: pinky-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.005385, y: 2.681950, z: -0.000095} + rotation: {x: -5.666190, y: -0.004601, z: -0.046291} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a34eb85f-5004-458c-a961-3569f71c96f6 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549800, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000001, y: 3.166710, z: 0.000002} + rotation: {x: 0.000000, y: 0.000019, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a5231166-3231-4b80-90b0-d0d576f4a0b7 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000003, y: 11.787900, z: -0.000003} + rotation: {x: 9.215320, y: 17.707500, z: 16.168699} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 73f2bd45-f861-4f03-bc1e-c5653210cb02 + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549810, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.218170, z: 0.000000} + rotation: {x: 0.000050, y: -0.000056, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 6729a2b6-bfa6-49d1-a1fc-8d6176f3947e + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.703710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + SourceRemaps: + - 0003afb6-e082-42ab-b89f-d22eb256f228: 5b23233d-9716-4fbb-941b-fdd02594cce0 + - 009892ac-73e5-4967-bd85-efc71c49f0a7: b0a52483-9a6e-49d0-8a06-c12f4b9e24a6 + - 02d483b7-4973-456a-94a1-5973d02ed09f: ce8d5a95-3a28-43f5-9085-d3389fadd738 + - 0465eda0-f2a8-46a0-89bf-aec9d8b8da01: 59d61410-e6bd-447d-b83d-7b0c75236471 + - 0473b266-866f-4f68-af21-9d3530e1914f: 682c3de5-d653-44f1-b50a-3da29b927a87 + - 04ac8134-d110-4511-b25a-891f2f66584b: 6729a2b6-bfa6-49d1-a1fc-8d6176f3947e + - 055525b2-7c1a-4f70-9358-23e0d7d156b8: b9e3a6d6-0f12-4900-bd2b-35f10e31d2d8 + - 0b203467-22aa-4c6c-a7de-22b8f87e0ad6: 5839bd7b-ea83-48a8-90b5-c26708a87a21 + - 0d34b376-2158-453b-931e-0189d0cf2dfa: b520cb8c-f8f6-4edd-bdf6-03f955679e98 + - 0f43b8a1-5f63-44c3-9ba0-32318363dc57: bc738d9f-a07b-4015-9609-391efdb5b21c + - 12549dba-74cb-48d3-a50f-73daa0d64196: 482e497b-046d-4e69-8fde-d6c9753e7b46 + - 12ba946a-1a8e-4e95-87e5-087ec0b249cc: 060bda29-936e-409f-9291-aa232716f91b + - 1573681c-afad-4710-bf30-13ab306587e0: 7def0c43-f87f-40bf-8090-7d2d350c0a78 + - 15d70faf-f504-434b-bc7b-bb474fac2980: f36adf2b-cb0d-4d17-8032-92a357188727 + - 1907c2c5-2d81-47ce-96c9-eeb579299134: 15198c7d-b87d-41f2-8a03-ebb1e502aa85 + - 1abd5650-e4e3-4218-9dfe-2d518a0b161b: 9b6e6700-d085-4c9b-bf53-01d5d03c2dc0 + - 1d1c8de5-b019-4d0a-adc6-1ad389890762: f0d6b0fb-62e3-448a-87ee-f6527258390d + - 1d87de05-c879-4ac1-8782-eaceafb0ab7c: ee338c45-02a9-4b91-b1db-f0f2e7f0c561 + - 1e231994-34a6-48c1-94ee-339987f113c7: 410e0d34-e8a4-4dc0-875a-e2893f97702d + - 1f7bf313-445c-40f6-92ad-a40a50dea575: 44036629-a264-4199-8275-e8d9e15d2c81 + - 224e1b84-2cd6-40dc-8b4d-39e26681bfd1: 777d46ee-e102-4218-8bf6-08271ca2483d + - 22806c77-18d4-41eb-81b3-b85d1228c059: 6045b931-e0bd-40c1-8d57-ff06b391b012 + - 24b98cd7-d5a4-4872-b17b-a6bea152b437: fe279d3e-e1cc-4ae7-bde8-29ee3c3c49ba + - 24d6dc84-ed70-4a53-a3c4-9224488ec60a: e70fca4c-df37-4119-a16b-8ca809738fca + - 24d70dc1-4597-48e0-9370-c6e9293594d4: 1fd76f2b-2db3-411e-b7ee-c216f1a543a5 + - 2536fae3-02cb-4aa5-8c55-952afc929db0: 0c0b7cf8-63f8-4e52-a7a1-931f010669dc + - 283ab8bc-80c5-48db-8f22-6b4ab6e6cffe: 5a579b8e-b19b-4633-b158-c901f25d5736 + - 2878109d-8f26-4010-b916-efdc9fecbdf8: a598f236-79f6-4635-a26a-b69122522a2a + - 28b286b8-7e97-4ed0-bbce-b813966137ff: 7e8d8d02-2e8a-4b6d-a022-e1d1e34c395f + - 2a62abd3-948e-4fb7-bacd-e846fe772fc8: 2114ca63-5b0d-4f5a-bb57-2480824e7ee3 + - 32b9372e-60ad-430c-87fe-a43f6258b4e5: 93bed319-009f-450a-b7e0-e1e8b1830ea6 + - 33423227-0e0f-43a6-a69d-a713b9653e99: f950caaf-d491-4bf6-968e-01dfa516e7f2 + - 341ee23b-b82c-4f55-b23d-193c0df5c016: 4b3320a9-8084-477d-a740-1a3f5af9b623 + - 345fde54-ce8d-467e-bc01-3c54e0129ca0: 5029a531-ba49-41be-b8fe-c00098aa6b63 + - 34e94d3a-2900-4f04-bbdd-8be35309a24f: 4a011e45-fd0b-400a-b2fa-4170f9c1f62c + - 37803923-6d4a-4268-aba1-ef5d1d23cd46: 31bbb94e-8380-4021-ad81-85aa0a52da17 + - 3ab55c9b-dd82-4532-943e-d1df8f009177: 6326ecaf-c4e6-470d-b024-42b0245d8718 + - 3b52e609-bccb-4474-8396-af04afb47613: b587f0ee-51b5-4976-acc9-551774f7d888 + - 3b885064-9472-4754-9b78-42ff961487b9: eb56a3b1-17bf-4627-b5ef-a29c12868072 + - 3c0c8d96-d019-421b-8641-2f6c4fef657f: a2b5e657-6fa1-4495-98e6-42bb0d87221a + - 42c8f113-929e-4b03-b3c0-1e0908941234: 8212a3e5-e939-4eae-81e1-3fbc741c95ae + - 46a5e549-6a60-40d7-99e2-3d9ea7f5a6fa: feac871f-6262-41f8-97ba-c15238ce8cc6 + - 4756a1da-6124-4cbb-af0c-1631649652f6: e5233629-fb2f-40a0-a5fd-8ecd69f340b9 + - 47ceb1fa-65b6-498e-af35-6f5af78c2618: eaf6d31c-4150-47c2-a9f3-16b26fdf82eb + - 481aca89-f9bf-4ce1-a3a8-d75fc0ff915b: 052dbda9-c01c-4ca0-8511-db2143375eb3 + - 4b527cf4-3e27-4559-b291-0a0b985b4717: 78aa1ef6-c348-457f-93f6-e7c23310e27a + - 4ca9e76a-f818-4a4f-954e-2777667c610a: b42d213a-f443-416e-89e7-cf0148cd7acd + - 4f009679-ee66-4a0c-8747-6163b9934265: fd7e7c10-1fde-45fb-b4ae-1b29c7fc3a28 + - 50cf7888-914f-493a-8fcd-16a430ffe91e: 35da746a-ca69-4900-aec8-7bea24f0d256 + - 5197ee39-b38d-42eb-8c32-d9938bfefb40: 4125c3d2-ec27-488f-8b1d-d20de29a726b + - 59d49307-84ec-4eb8-aa0f-22f915eb8a4f: 031ccedd-33fb-4007-b792-10bc2e9d4087 + - 5a63eead-ba79-4ecd-b8cd-509fbea8a4f2: d7b16828-692e-4922-b452-d17f7883a069 + - 5aee8ecc-3bc7-4fd4-a5bc-c0eaa693a469: bb815606-a6d2-4f9a-b9fa-94569776ccab + - 5cc46581-44dd-43e4-a2c1-e2bd294a97e6: b91c0fb4-d739-4f27-beea-85ae77c565ea + - 5ce67bb0-6c08-472c-b67f-77bde9454993: a34eb85f-5004-458c-a961-3569f71c96f6 + - 5fb8a5cc-ee0c-4abd-bff7-cb1d3aa2a5bc: e3926e34-9003-408a-9cf0-f6ab2750b97f + - 633241a4-412e-4a33-acb2-8487ae2291c9: 73f2bd45-f861-4f03-bc1e-c5653210cb02 + - 63d95309-a416-46c0-a21b-462bd3335750: b627f202-a301-4ffd-837c-d83dc923169e + - 64c3ab11-f5ff-4e18-91b8-c697a26228bd: 2404fd9a-4d48-458a-af02-94d4fd666077 + - 66b39338-c86b-4347-b964-852a182ec082: d9b7ee8e-a9c5-40d6-8279-4eec31980ab9 + - 682266ba-13a1-48d4-92fd-608428328dfc: 7d6a07d3-5dbf-430e-8c19-edba2edf9307 + - 6b721f55-2fde-4515-8a98-e0623db0c62c: b98ed8aa-adb8-4a90-8497-82f509e93c49 + - 6f03f0b2-6d81-4bc9-a49b-6d387e0245ff: 27b4fca1-2d9d-458d-b410-a1126e3e90fe + - 72e54688-1bc6-48fc-89bb-5fc41b166ae0: d13c9101-7032-4b19-86a3-4b69f740e46e + - 7976d725-6d53-4c31-a2c3-f96d25c2b921: 870d7e36-4128-4081-829f-ddb761dc5018 + - 7ca6c509-63a2-4a25-877e-e28ae50f4f4f: 9df82503-d84d-4fdb-b6ee-c00416e32ec5 + - 7e835154-746f-4b08-a586-447595fc19a1: 6faee649-ed0b-4314-bed1-aacea04f483a + - 7f240caf-60c7-4d5e-b716-5090899a20ce: 2f1618ae-bd43-45d2-a41c-444eae9d5ffd + - 81d57b7d-0209-4404-a775-f7ef13ad4f97: 54b6d990-d4c4-44c0-ba50-408f293488c5 + - 822c9dec-583d-4588-bf8f-9e76769d9791: 183f5ed1-ec6e-49c9-8603-fdb5efd6790c + - 861c2385-029b-4a3f-bb80-aad4ce6de18d: 2116c8da-6381-4d9b-a4a9-7190f8588592 + - 87b21f5e-7b4d-4754-af21-4925af99ffb4: aa7644ab-25d9-4d52-8199-92caa4f5606d + - 8d2fc7e4-0fe6-43d2-b837-fbe1aa318543: 93429404-f9b4-4265-a2b0-37842d963643 + - 8f5b51cb-131a-42fa-9ea7-67cee50d6af2: b9163dbc-0b8d-4ce5-88ac-0c2eb657f98e + - 93d669d1-3439-4d61-ab72-99f1c6f76a81: 1da287aa-43af-4c07-9327-03ba984fc4d0 + - 94200c52-425a-43b6-8893-512b230a7726: f8dda5b9-56f1-40dd-aa1e-a5e0c5b9fc02 + - 94f70a69-9105-4332-988c-b375881b7bd9: 9d1b7d54-4ef3-4308-a432-33350e1575c2 + - 951124b2-906c-4f4f-8422-a881e9d98b4a: 1ec73053-c75c-4fcc-b889-08cc253455e4 + - 95dea6d2-2c8c-477b-a1f3-e372e02e6a0b: 1034f3ac-3b9a-4339-b10f-a0fab01464fb + - 95f1c1ea-6b70-4e98-80bd-216ce18becb4: a5231166-3231-4b80-90b0-d0d576f4a0b7 + - 96aa9a5e-354d-415a-ac80-5442481fec05: aa0496a3-fcdd-4c2b-9a6d-07653422d537 + - 9c6e9559-53cb-4842-afc9-a9cf725bce0a: 5f20ec08-c7cd-4675-a48d-dd74968ec4d7 + - 9f23857f-0354-4c96-a54d-0a74653401b0: 21f27d7a-ff62-4a57-9090-43a3f5dce83a + - a0534ec9-6292-40ec-b6cd-859f7738f85f: 2d4fb431-a418-4924-89f2-c32b3b520ede + - a216ab78-0022-4fc2-96cf-862ffa9f0371: 60bb00dc-b347-4567-a739-58f0acab4157 + - a227f4f5-bb8b-4083-8ff3-76b300794afe: 43180266-1424-4c20-85e8-49a4ac3fc737 + - a92fd0a3-ee3a-4273-a91b-d625d14ce8d2: c5073def-68b1-4a34-9dd4-e6699cd79ffc + - ad14db46-53e1-460c-a8bf-8c26bd57f37c: c3ee4ba4-011e-4330-afeb-24e145dd5116 + - ae4a9bad-4c46-4bf3-8553-28e8b9416cce: c1cacb05-b59c-439f-8718-a605d7651788 + - aff70df1-490d-4236-bfe7-1c9fcd1a028a: 331cbff3-d65c-4a7d-9b14-0e424d4354ef + - b0e47302-1cbb-4346-a62f-8e341c73f7b5: 5c871db5-65b3-4070-85a9-3c449e044310 + - b3bcf351-f103-47df-a4e8-fd46dbd2a734: 8e456acc-90a0-4fcb-8e45-f200eeb1b729 + - b935b9b7-3c38-42b9-8045-c6609e019a8f: 2ec89c90-23ef-4d6e-8079-acecd4d75c1d + - bb7fd053-b7b8-4148-9784-7a4ecfe99c2b: 3f6c1960-0f45-4a3a-9e7e-a67447b2d019 + - bf692fb0-1af3-476e-97cd-092308e529f6: d891d276-efe1-4c8f-8b7e-95cd79b35364 + - c224f6fa-05b2-43d9-b45b-0050539a4688: 47c9a311-024f-4ffb-9021-cd1ee3bf81f7 + - c3c87762-eca6-4731-87a2-f7596e7c0479: 08071ebb-7cc0-4a08-a8df-ee830ef64807 + - c4bd0335-b377-414d-8521-c473e35c5774: 93827cc5-a953-4861-9d1e-712b132f6619 + - c609db94-d0da-4230-a62a-7f71134c5356: de60f119-8912-4dec-a8ee-714862f51e6b + - c6e2a5f7-ab1a-4d18-a9d6-a0cd79b37fa7: 0bc06755-a077-483e-981f-6469b33b47dd + - ca642efc-944a-4dac-beb4-508163707dd4: 2d726b1c-a359-483c-a73d-92b2a70aba6d + - cb2a32d4-1a84-411d-aa42-bf42bfa144e4: c4e3997b-1080-444c-8ac0-1fec1f541de2 + - cb9bed1c-7640-4b13-9103-67d3e3ae7401: d866260d-fbe6-4b19-ba62-96567884b87d + - ce6d11c6-be32-4e32-b7b8-6c199feef4ea: d9e9abfe-4a79-49f9-b76f-01081a3d3200 + - cfce736c-a49b-4a3e-947a-32a8e98a4961: 3c63b5c3-a5ad-49e0-bb20-2c8f1a634997 + - d0f8de20-470a-4599-b195-7ae175fbfc78: 95982089-4063-492d-881c-0204c00e65eb + - d1349dfb-66e5-406a-bab7-cbedc09f0583: fc2d5d8d-8022-4353-9682-ff798013cc6a + - d6371ebf-1d3b-4bfa-bdd8-c0a7fabf8f39: 38e72372-f5c5-4c5e-888e-003531bd745b + - db24ae45-9fd3-4bac-a406-0cad45a3f045: 47b62922-d592-4f29-b3bd-8031ea360e98 + - db9cf02a-a38c-47aa-b059-2faab8f74c75: 9fa8beeb-7a11-4fe0-93bf-e98462f57da9 + - e0925a50-c8a1-4759-9d26-eac6079b1fdb: 94e3e569-4319-4c8c-9bd5-650348544f8f + - e3a03ad7-eb65-485e-86e0-cd9f0e93e442: b9d4f202-03f8-460c-b0af-61fc4c356c5c + - e3a7a944-c642-433e-b640-41b775d7e247: ad116ad3-df03-44cd-be5b-a808d805a902 + - e417673c-029b-4df2-b240-55edb111620f: 308dd5bc-51d0-4738-a645-c4c3ff302414 + - e8f1e2a0-17f6-445d-ad3b-100743436988: 0062ad6f-4a1a-4cdc-8fc1-ab49a2f34df9 + - ea14478c-a162-45e4-a7a7-af2ac18b7d4c: 3ecb5e79-4d94-4343-bc62-2002be78d9f0 + - eafdc1ea-a52b-486f-af4a-13a4f947b89f: 834269e4-4713-4a65-a39f-f1dc8474fa26 + - eb708bc5-ef13-451c-b7b2-46398c05d999: 640f142e-9401-4452-a70a-6b84ee9fdeb7 + - edcde6ca-b40c-4768-a7d2-dd31da71277a: f0ca0d16-bb4b-45e0-b6c1-8541871a2ed8 + - edd67c66-78f4-4deb-a3bf-c7b0b07504f3: 369309c5-6526-47d6-bb4a-a525ea0fc08e + - efcdb1e4-82aa-48d7-adff-ea83aadec8f0: 63f04c53-0714-469c-94fb-2e0a291fea73 + - f08c52f6-14c2-4ded-be77-3a2b3f47c577: 816c9dd2-c308-42ea-9bdb-e858f6f8e6d8 + - f4788f9e-4139-4eef-90bc-771177044cd8: 2272f138-1ad5-43dc-916b-fd4c339c5fe2 + - f8de076e-14c5-4869-815e-97dfb35529e7: 75445c09-5a66-41e1-be22-88dad89df215 + - faaefd86-d1ae-4d56-a280-766a06b98cf6: e83abff0-fe19-4f02-b359-a06ae14818f4 + - fb7196a9-d764-4f20-bf77-8d5722266d27: 42ddc92b-e779-412b-9f91-8457277af637 + - fd649b68-8f72-465f-baa6-ceef905acca1: b824f2d7-9d96-4eb6-9f78-10dc5c2cbce4 + SourceState: ! 75445c09-5a66-41e1-be22-88dad89df215 +- ! + PrefabRemaps: + [] + Name: mid-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.010478, y: 3.166710, z: 0.000270} + rotation: {x: -86.458298, y: -5.335180, z: -5.675670} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5b23233d-9716-4fbb-941b-fdd02594cce0 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.166710, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: thumb-3_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 3.549800, z: -0.000002} + rotation: {x: 0.000000, y: 0.000028, z: 0.000033} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c1cacb05-b59c-439f-8718-a605d7651788 + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837170, z: 0.000001} + rotation: {x: -0.000113, y: -0.000000, z: -0.000031} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! de60f119-8912-4dec-a8ee-714862f51e6b + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.008392, y: 3.222930, z: -0.000121} + rotation: {x: -0.204897, y: -0.651952, z: -2.287250} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a2b5e657-6fa1-4495-98e6-42bb0d87221a + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837170, z: 0.000001} + rotation: {x: 0.000189, y: -0.000000, z: 0.000044} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 47c9a311-024f-4ffb-9021-cd1ee3bf81f7 + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218160, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: pinky-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 2.218160, z: -0.000003} + rotation: {x: 0.000050, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 410e0d34-e8a4-4dc0-875a-e2893f97702d + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.001204, y: 3.309410, z: 0.000061} + rotation: {x: 0.145060, y: 0.000496, z: 0.002001} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! a598f236-79f6-4635-a26a-b69122522a2a + Components: + [] +- ! + PrefabRemaps: + [] + Name: index-3_end_end + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000000, y: 2.837150, z: -0.000000} + rotation: {x: 0.000038, y: 0.000042, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2116c8da-6381-4d9b-a4a9-7190f8588592 + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000006, y: -0.000000, z: -0.000002} + rotation: {x: -176.654007, y: -5.519800, z: -92.680099} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 43180266-1424-4c20-85e8-49a4ac3fc737 + - ! aa0496a3-fcdd-4c2b-9a6d-07653422d537 + - ! 4b3320a9-8084-477d-a740-1a3f5af9b623 + - ! 9df82503-d84d-4fdb-b6ee-c00416e32ec5 + - ! 27b4fca1-2d9d-458d-b410-a1126e3e90fe + Components: + [] +- ! + PrefabRemaps: + [] + Name: "[OPTIONAL] Visuals" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 9d1b7d54-4ef3-4308-a432-33350e1575c2 + - ! 8e456acc-90a0-4fcb-8e45-f200eeb1b729 + - ! f0ca0d16-bb4b-45e0-b6c1-8541871a2ed8 + Components: + [] +- ! + PrefabRemaps: + [] + Name: mid-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.010479, y: 3.166700, z: 0.000210} + rotation: {x: -87.477303, y: 5.565590, z: -5.001890} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! c3ee4ba4-011e-4330-afeb-24e145dd5116 + Components: + [] +- ! + PrefabRemaps: + [] + Name: "[LEGACY] InteractorLineVisual" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 21f27d7a-ff62-4a57-9090-43a3f5dce83a + Components: + [] +- ! + PrefabRemaps: + [] + Name: LeftHandModel + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2404fd9a-4d48-458a-af02-94d4fd666077 + - ! 331cbff3-d65c-4a7d-9b14-0e424d4354ef + Components: + - ! 44036629-a264-4199-8275-e8d9e15d2c81 +- ! + PrefabRemaps: + [] + Name: mid-2 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.002904, y: 3.650310, z: -0.000110} + rotation: {x: -2.676430, y: -0.000566, z: -0.015133} + scale: {x: 0.999999, y: 0.999999, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! ee338c45-02a9-4b91-b1db-f0f2e7f0c561 + Components: + [] +- ! + PrefabRemaps: + [] + Name: ring-3 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.001444, y: 2.703720, z: 0.000001} + rotation: {x: 88.027298, y: -5.497920, z: 5.333360} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 0bc06755-a077-483e-981f-6469b33b47dd + Components: + [] +- ! + PrefabRemaps: + [] + Name: wrist + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000006, y: -0.000002, z: -0.000000} + rotation: {x: 157.399994, y: -83.865097, z: 115.817001} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 31bbb94e-8380-4021-ad81-85aa0a52da17 + - ! b824f2d7-9d96-4eb6-9f78-10dc5c2cbce4 + - ! b42d213a-f443-416e-89e7-cf0148cd7acd + - ! 0062ad6f-4a1a-4cdc-8fc1-ab49a2f34df9 + - ! 1fd76f2b-2db3-411e-b7ee-c216f1a543a5 + Components: + [] +- ! + PrefabRemaps: + [] + Name: LeftHandInteractor + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2ec89c90-23ef-4d6e-8079-acecd4d75c1d +- ! + PrefabRemaps: + [] + Name: thumb-0 + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.000009, y: 4.399180, z: 0.000004} + rotation: {x: 1.097870, y: 44.900902, z: 1.556590} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5839bd7b-ea83-48a8-90b5-c26708a87a21 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Configuration + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2d726b1c-a359-483c-a73d-92b2a70aba6d + - ! b627f202-a301-4ffd-837c-d83dc923169e +- ! + PrefabRemaps: + [] + Name: RightHandModel + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 42ddc92b-e779-412b-9f91-8457277af637 + - ! 63f04c53-0714-469c-94fb-2e0a291fea73 + Components: + - ! ad116ad3-df03-44cd-be5b-a808d805a902 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/ARCameraFinderProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/ARCameraFinderProvider.ts new file mode 100644 index 00000000..f2d6d389 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/ARCameraFinderProvider.ts @@ -0,0 +1,50 @@ +import {Singleton} from "../../Decorators/Singleton" +import {validate} from "../../Utils/validate" +import BaseCameraFinderProvider from "./BaseCameraFinderProvider" + +/** + * Holds a reference to the AR camera. + * + * @remarks + * AR camera is defined as the {@link Camera} in the scene that has a {@link deviceTrackingComponent} + * with tracking mode set to World. + */ +@Singleton +export default class ARCameraFinderProvider extends BaseCameraFinderProvider { + public static getInstance: () => ARCameraFinderProvider + + constructor() { + super() + const cameraComponent = this.lookForWorldCameraComponent() + validate(cameraComponent) + this.setCamera(cameraComponent) + } + + /** + * Augments the {@link getSameRenderTargetCamera} predicate with a check for Device + * Tracking being World. + * + * @returns A {@link Camera} setup for AR. + */ + private lookForWorldCameraComponent(): Camera | null { + const predicate = (object: SceneObject): Camera | null => { + const camera = this.getSameRenderTargetCamera(object) + + if (camera === null) { + return null + } + + const deviceTracking = object.getComponent("Component.DeviceTracking") + if ( + deviceTracking.getActualDeviceTrackingMode() === + DeviceTrackingMode.World + ) { + return camera + } else { + return null + } + } + + return this.bfsFromRoot(predicate) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/ARCameraFinderProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/ARCameraFinderProvider.ts.meta new file mode 100644 index 00000000..aefb8560 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/ARCameraFinderProvider.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! e23930eb-e1db-44b5-8dfa-5291117b6eca + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! e23930eb-e1db-44b5-8dfa-5291117b6eca + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 0613d189-aa72-417f-92d6-43562b3bd2da + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseCameraFinderProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseCameraFinderProvider.ts new file mode 100644 index 00000000..6bdea750 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseCameraFinderProvider.ts @@ -0,0 +1,75 @@ +import {bfs} from "../../Utils/algorithms" +import BaseWorldCameraProvider from "./BaseWorldCameraProvider" + +/** + * Extends {@link BaseWorldCameraProvider} by providing functionality that + * allows for searching for the {@link Camera} during construction. + */ +export default abstract class BaseCameraFinderProvider extends BaseWorldCameraProvider { + /** + * Checks the {@link SceneObject} passed if it has a {@link Camera} component + * with the right render target. + * Returns a reference to the {@link Camera} if true, null if not. + */ + protected getSameRenderTargetCamera(object: SceneObject): Camera | null { + const cameraComponent = object.getComponent("Component.Camera") + + // It is possible the liveTarget is not set, in this case we use the captureTarget + const targetRenderTarget = + global.scene.liveTarget !== null + ? global.scene.liveTarget + : global.scene.captureTarget + + if ( + object.enabled && + cameraComponent !== null && + cameraComponent.type === Camera.Type.Perspective && + cameraComponent.renderTarget.isSame(targetRenderTarget) + ) { + return cameraComponent + } else { + return null + } + } + + protected setCamera(cameraComponent: Camera): void { + if (cameraComponent === null) { + throw new Error( + "Could not find any suitable camera in the scene, make sure it is setup correctly" + ) + } + if ( + this.lookForDeviceTrackingComponent(cameraComponent.getSceneObject()) === + null + ) { + throw new Error( + "Your main camera is currently missing a 'Device Tracking Component'. Set your `Device Tracking Component` with Tracking Mode: World for spatial movement in your Lens." + ) + } + this.cameraComponent = cameraComponent + this.cameraTransform = this.cameraComponent.getTransform() + } + + private lookForDeviceTrackingComponent( + sceneObject: SceneObject + ): DeviceTracking | null { + const deviceTrackingComponent = sceneObject.getComponent( + "Component.DeviceTracking" + ) + + return deviceTrackingComponent + } + + protected bfsFromRoot( + predicate: (sceneObject: SceneObject) => Camera | null + ): Camera | null { + // Get root objects from the scene + const rootObjects = [] + const objectCount = global.scene.getRootObjectsCount() + for (let i = 0; i < objectCount; i++) { + rootObjects.push(global.scene.getRootObject(i)) + } + + return bfs(rootObjects, predicate) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseCameraFinderProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseCameraFinderProvider.ts.meta new file mode 100644 index 00000000..9d6db965 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseCameraFinderProvider.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 5e01d715-f121-4572-9b2f-a0263940996e + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 5e01d715-f121-4572-9b2f-a0263940996e + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! ef1b45aa-36b1-43e4-9277-8de3a46a238e + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseWorldCameraProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseWorldCameraProvider.ts new file mode 100644 index 00000000..5f38d8d8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseWorldCameraProvider.ts @@ -0,0 +1,131 @@ +import CameraProvider from "./CameraProvider" + +/** + * Base class that provides camera related apis + */ +export default abstract class BaseWorldCameraProvider + implements CameraProvider +{ + protected cameraTransform!: Transform + protected cameraComponent!: Camera + + /** @inheritDoc */ + attachSceneObject(sceneObject: SceneObject): void { + sceneObject.setParent(this.cameraComponent.getSceneObject()) + } + + /** @inheritDoc */ + getComponent(): Camera { + return this.cameraComponent + } + + /** @inheritDoc */ + renderLayer(): LayerSet { + return this.cameraComponent.renderLayer + } + + /** @inheritdoc */ + up(): vec3 { + return this.cameraTransform.up + } + + /** @inheritdoc */ + right(): vec3 { + return this.cameraTransform.right + } + + /** @inheritDoc */ + back(): vec3 { + return this.cameraTransform.back + } + + /** @inheritDoc */ + forward(): vec3 { + return this.cameraTransform.forward + } + + /** @inheritDoc */ + getWorldPosition(): vec3 { + return this.cameraTransform.getWorldPosition() + } + + /** @inheritDoc */ + getTransform(): Transform { + return this.cameraTransform + } + + /** @inheritDoc */ + getWorldTransform(): mat4 { + return this.cameraTransform.getWorldTransform() + } + + /** @inheritDoc */ + getLocalScale(): vec3 { + return this.cameraTransform.getLocalScale() + } + + /** @inheritDoc */ + getInvertedWorldTransform(): mat4 { + return this.cameraTransform.getInvertedWorldTransform() + } + + /** @inheritDoc */ + screenSpaceToWorldSpace(x: number, y: number, absoluteDepth: number): vec3 { + return this.cameraComponent.screenSpaceToWorldSpace( + new vec2(x, y), + absoluteDepth + ) + } + + /** @inheritDoc */ + worldSpaceToScreenSpace(x: number, y: number, z: number): vec2 { + return this.cameraComponent.worldSpaceToScreenSpace(new vec3(x, y, z)) + } + + /** @inheritDoc */ + enableClearColor(color: vec4): void { + this.cameraComponent.clearColor = color + this.cameraComponent.enableClearColor = true + } + + /** @inheritdoc */ + getClearColor(): vec4 { + return this.cameraComponent.clearColor + } + + /** @inheritdoc */ + inFoV(worldPosition: vec3): boolean { + const screenSpace = this.worldSpaceToScreenSpace( + worldPosition.x, + worldPosition.y, + worldPosition.z + ) + + return ( + screenSpace.x <= 1 && + screenSpace.x >= 0 && + screenSpace.y <= 1 && + screenSpace.y >= 0 + ) + } + + /** @inheritdoc */ + getForwardPosition(x: number, parallelToGround = false): vec3 { + let forwardDir = this.cameraComponent.getTransform().forward + + if (parallelToGround) { + forwardDir.y = 0 + forwardDir = forwardDir.normalize() + } + + return this.cameraComponent + .getTransform() + .getWorldPosition() + .add(forwardDir.uniformScale(-x)) + } + + /** @inheritdoc */ + getForwardPositionParallelToGround(x: number): vec3 { + return this.getForwardPosition(x, true) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseWorldCameraProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseWorldCameraProvider.ts.meta new file mode 100644 index 00000000..22e9885d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/BaseWorldCameraProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 337e8c70-fb48-431e-8518-cf7b7149c962 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 337e8c70-fb48-431e-8518-cf7b7149c962 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 85f0a826-7a7d-4b60-9bca-8f0570440854 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/CameraProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/CameraProvider.ts new file mode 100644 index 00000000..3f205795 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/CameraProvider.ts @@ -0,0 +1,105 @@ +/** + * Defines available camera apis + * This abstraction was added to avoid mocking CameraComponent, Transform, etc + * in other classes that are being tested + */ +export default interface CameraProvider { + /** + * Add SceneObject as a child of the camera's SceneObject + * + * @param sceneObject - SceneObject to attach + */ + attachSceneObject(sceneObject: SceneObject): void + + /** + * Returns the camera component + */ + getComponent(): Camera + + /** + * Returns the layer set to which this camera is rendering to + */ + renderLayer(): LayerSet + + /** + * Returns the up vector of the camera. + */ + up(): vec3 + + /** + * Returns the right vector of the camera. + */ + right(): vec3 + + /** + * Returns the back vector of the camera. This is actually the front vector because the camera is reversed in Lens Studio. + */ + back(): vec3 + + /** + * Returns the forward vector of the camera. This is actually the back vector because the camera is reversed in Lens Studio. + */ + forward(): vec3 + + /** + * Returns the camera's world position + */ + getWorldPosition(): vec3 + + /** + * Returns the camera's transform + */ + getTransform(): Transform + + /** + * Returns the camera's world transform + */ + getWorldTransform(): mat4 + + /** + * Returns the camera's local scale + */ + getLocalScale(): vec3 + + /** + * Returns the camera's world position projected from screen space coordinates at a given z depth + * + * @param x + * @param y + * @param absoluteDepth + */ + screenSpaceToWorldSpace(x: number, y: number, absoluteDepth: number): vec3 + + worldSpaceToScreenSpace(x: number, y: number, z: number): vec2 + + /** + * Clears the renderTarget with the provided color before drawing to it + * + * @param color the color to clear the renderTarget with + */ + enableClearColor(color: vec4): void + + /** + * Returns the clear color applied to the camera + */ + getClearColor(): vec4 + + /** + * @returns whether a position is in camera FoV or not + * @param worldPosition - vec3 representing the position in world space + */ + inFoV(worldPosition: vec3): boolean + + /** + * @returns a position in world space in front of the camera by x units + * @param x - the magnitude to multiply the camera's forward direction by + * @param parallelToGround - if the camera's forward direction should be projected to be parallel to ground + */ + getForwardPosition(x: number, parallelToGround: false): vec3 + + /** + * @returns a position in world space in front of the camera (parallel to ground) + * @param x - the magnitude to multiply the camera's forward direction by + */ + getForwardPositionParallelToGround(x: number): vec3 +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/CameraProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/CameraProvider.ts.meta new file mode 100644 index 00000000..be85849a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/CameraProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 532dcdea-2e30-4972-bc13-9c561df74ff3 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 532dcdea-2e30-4972-bc13-9c561df74ff3 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 38a4001b-1630-4820-a431-397f2e869bad + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/WorldCameraFinderProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/WorldCameraFinderProvider.ts new file mode 100644 index 00000000..64d6107d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/WorldCameraFinderProvider.ts @@ -0,0 +1,23 @@ +import {Singleton} from "../../Decorators/Singleton" +import BaseCameraFinderProvider from "./BaseCameraFinderProvider" + +/** + * Holds a reference to the world camera. + */ +@Singleton +export default class WorldCameraFinderProvider extends BaseCameraFinderProvider { + public static getInstance: () => WorldCameraFinderProvider + + constructor() { + super() + const cameraComponent = this.lookForCameraComponent() + + if (!isNull(cameraComponent)) { + this.setCamera(cameraComponent!) + } + } + + private lookForCameraComponent(): Camera | null { + return this.bfsFromRoot(this.getSameRenderTargetCamera) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/WorldCameraFinderProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/WorldCameraFinderProvider.ts.meta new file mode 100644 index 00000000..a4413986 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CameraProvider/WorldCameraFinderProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 510bcb3f-7816-404d-a5d1-afbbccbef1a7 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 510bcb3f-7816-404d-a5d1-afbbccbef1a7 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 0ece7f0c-2827-4769-ad6b-5c5492422be8 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CursorControllerProvider/CursorControllerProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CursorControllerProvider/CursorControllerProvider.ts new file mode 100644 index 00000000..4a5fabdc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CursorControllerProvider/CursorControllerProvider.ts @@ -0,0 +1,80 @@ +import {Interactor, InteractorInputType} from "../../Core/Interactor/Interactor" + +import {InteractorCursor} from "../../Components/Interaction/InteractorCursor/InteractorCursor" +import {Singleton} from "../../Decorators/Singleton" +import {validate} from "../../Utils/validate" + +/** + * This singleton class manages the registration and retrieval of InteractorCursor instances. It ensures that each Interactor has a unique cursor and provides methods to get cursors by their associated Interactor. + * + */ +@Singleton +export class CursorControllerProvider { + public static getInstance: () => CursorControllerProvider + + private cursors = new Map() + + registerCursor(cursor: InteractorCursor): void { + validate( + cursor.interactor, + "InteractorCursor must have a set Interactor before registering to SIK.CursorController.", + ) + + if (this.cursors.has(cursor.interactor)) { + throw Error( + `Multiple cursors for a single Interactor have been registered.\nThe CursorController and InteractorCursor components cannot both be present in the scene hierarchy before runtime, use one or the other.`, + ) + } + + this.cursors.set(cursor.interactor, cursor) + } + + /** + * @deprecated in favor of getCursorByInteractor + * Gets the InteractorCursor for a specified interactor + * @param interactor The interactor to get the cursor for + * @returns the InteractorCursor for the requested interactor, or null if it doesn't exist + */ + getCursor(interactor: Interactor): InteractorCursor | null { + return this.getCursorByInteractor(interactor) + } + + /** + * Gets the InteractorCursor for a specified interactor + * @param interactor The interactor to get the cursor for + * @returns the InteractorCursor for the requested interactor, or null if it doesn't exist + */ + getCursorByInteractor(interactor: Interactor): InteractorCursor | null { + return this.cursors.get(interactor) ?? null + } + + /** + * Gets the InteractorCursor for a specified input type + * @param inputType The InteractorInputType to get the cursor for + * @returns the InteractorCursor for the requested InteractorInputType, or null if it doesn't exist + */ + getCursorByInputType( + inputType: InteractorInputType, + ): InteractorCursor | null { + let interactor: Interactor | undefined + + for (const mapInteractor of this.cursors.keys()) { + if (mapInteractor.inputType === inputType) { + interactor = mapInteractor + break + } + } + + return interactor !== undefined + ? this.getCursorByInteractor(interactor) + : null + } + + /** + * Gets all InteractorCursors within the scene + * @returns a list of InteractorCursors + */ + getAllCursors(): InteractorCursor[] { + return Array.from(this.cursors.values()) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CursorControllerProvider/CursorControllerProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CursorControllerProvider/CursorControllerProvider.ts.meta new file mode 100644 index 00000000..1d48fd76 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/CursorControllerProvider/CursorControllerProvider.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! e293f435-5599-4d0a-b17c-f91a1f1f1f63 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! e293f435-5599-4d0a-b17c-f91a1f1f1f63 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 94d2e47a-f531-4c96-86d9-16163e8d8c51 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/BaseHand.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/BaseHand.ts new file mode 100644 index 00000000..98dcf7a0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/BaseHand.ts @@ -0,0 +1,437 @@ +import {PublicApi} from "../../Utils/Event" +import {TargetingData} from "../TargetProvider/TargetingData" +import {PalmTapDetectionEvent} from "./GestureProvider/PalmTapDetectionEvent" +import {HandType} from "./HandType" +import {HandVisuals} from "./HandVisuals" +import {Keypoint} from "./Keypoint" + +/** + * Describes the API for the BaseHand, which is part of the API accessible by + * external developers. + */ +export interface BaseHand { + /** + * Event called when the hand is found by the system + */ + readonly onHandFound: PublicApi + + /** + * Event called when the hand is lost by the system + */ + readonly onHandLost: PublicApi + + /** + * Event called when this hand gets enabled or disabled + */ + readonly onEnabledChanged: PublicApi + + /** + * Event called when the user has successfully pinched down. + */ + readonly onPinchDown: PublicApi + + /** + * Event called when the user has released pinching after they + * have successfully pinched down. + */ + readonly onPinchUp: PublicApi + + /** + * Event called when the user's pinch is canceled by the system. + */ + readonly onPinchCancel: PublicApi + + /** + * The Keypoint of the wrist joint + */ + readonly wrist: Keypoint + + /** + * The Keypoint of the thumbProximal joint, will be @deprecated soon in favor of thumbToWrist. + */ + readonly thumbProximal: Keypoint + + /** + * The Keypoint of the thumbToWrist joint (Wrist Joint) + */ + readonly thumbToWrist: Keypoint + + /** + * The Keypoint of the thumbIntermediate joint, will be @deprecated soon in favor of thumbBaseJoint. + */ + readonly thumbIntermediate: Keypoint + + /** + * The Keypoint of the thumbBaseJoint joint (Thumb Carpometacarpal (CMC) Joint) + */ + readonly thumbBaseJoint: Keypoint + + /** + * The Keypoint of the thumbDistal joint, will soon be @deprecated for thumbKnuckle + */ + readonly thumbDistal: Keypoint + + /** + * The Keypoint of the thumbKnuckle joint (Thumb Metacarpophalangeal (MCP) Joint) + */ + readonly thumbKnuckle: Keypoint + + /** + * The Keypoint of the thumbPad joint, will soon be @deprecated for thumbMidJoint + */ + readonly thumbPad: Keypoint + + /** + * The Keypoint of the thumbMidJoint joint (Thumb Interphalangeal (IP) Joint) + */ + readonly thumbMidJoint: Keypoint + + /** + * The Keypoint of the thumbTip joint (Thumb Tip Joint) + */ + readonly thumbTip: Keypoint + + /** + * The Keypoint of the indexProximal joint, will be @deprecated soon in favor of indexToWrist. + */ + readonly indexProximal: Keypoint + + /** + * The Keypoint of the indexToWrist joint (Wrist Joint) + */ + readonly indexToWrist: Keypoint + + /** + * The Keypoint of the indexIntermediate joint, will be @deprecated soon in favor of indexKnuckle. + */ + readonly indexIntermediate: Keypoint + + /** + * The Keypoint of the indexKnuckle joint (Index Metacarpophalangeal (MCP) Joint) + */ + readonly indexKnuckle: Keypoint + + /** + * The Keypoint of the indexDistal joint, will soon be @deprecated for indexMidJoint + */ + readonly indexDistal: Keypoint + + /** + * The Keypoint of the indexMidJoint joint (Index Proximal Interphalangeal (PIP) Joint) + */ + readonly indexMidJoint: Keypoint + + /** + * The Keypoint of the indexPad joint, will soon be @deprecated for indexUpperJoint + */ + readonly indexPad: Keypoint + + /** + * The Keypoint of the indexUpperJoint joint (Index Distal Interphalangeal (DIP) Joint) + */ + readonly indexUpperJoint: Keypoint + + /** + * The Keypoint of the indexTip joint (Index Tip Joint) + */ + readonly indexTip: Keypoint + + /** + * The Keypoint of the middleProximal joint, will be @deprecated soon in favor of middleToWrist. + */ + readonly middleProximal: Keypoint + + /** + * The Keypoint of the middleToWrist joint (Wrist Joint) + */ + readonly middleToWrist: Keypoint + + /** + * The Keypoint of the middleIntermediate joint, will be @deprecated soon in favor of middleKnuckle. + */ + readonly middleIntermediate: Keypoint + + /** + * The Keypoint of the middleKnuckle joint (Middle Metacarpophalangeal (MCP) Joint) + */ + readonly middleKnuckle: Keypoint + + /** + * The Keypoint of the middleDistal joint, will soon be @deprecated for middleMidJoint + */ + readonly middleDistal: Keypoint + + /** + * The Keypoint of the middleMidJoint joint (Middle Proximal Interphalangeal (PIP) Joint) + */ + readonly middleMidJoint: Keypoint + + /** + * The Keypoint of the middlePad joint, will soon be @deprecated for middleUpperJoint + */ + readonly middlePad: Keypoint + + /** + * The Keypoint of the middleUpperJoint joint (Middle Distal Interphalangeal (DIP) Joint) + */ + readonly middleUpperJoint: Keypoint + + /** + * The Keypoint of the middleTip joint (Middle Tip Joint) + */ + readonly middleTip: Keypoint + + /** + * The Keypoint of the ringProximal joint, will be @deprecated soon in favor of ringToWrist. + */ + readonly ringProximal: Keypoint + + /** + * The Keypoint of the ringToWrist joint (Wrist Joint) + */ + readonly ringToWrist: Keypoint + + /** + * The Keypoint of the ringIntermediate joint, will be @deprecated soon in favor of ringKnuckle. + */ + readonly ringIntermediate: Keypoint + + /** + * The Keypoint of the ringKnuckle joint (Ring Metacarpophalangeal (MCP) Joint) + */ + readonly ringKnuckle: Keypoint + + /** + * The Keypoint of the ringDistal joint, will soon be @deprecated for ringMidJoint + */ + readonly ringDistal: Keypoint + + /** + * The Keypoint of the ringMidJoint joint (Ring Proximal Interphalangeal (PIP) Joint) + */ + readonly ringMidJoint: Keypoint + + /** + * The Keypoint of the ringPad joint, will soon be @deprecated for ringUpperJoint + */ + readonly ringPad: Keypoint + + /** + * The Keypoint of the ringUpperJoint joint (Ring Distal Interphalangeal (DIP) Joint) + */ + readonly ringUpperJoint: Keypoint + + /** + * The Keypoint of the ringTip joint (Ring Tip Joint) + */ + readonly ringTip: Keypoint + + /** + * The Keypoint of the pinkyProximal joint, will be @deprecated soon in favor of pinkyToWrist. + */ + readonly pinkyProximal: Keypoint + + /** + * The Keypoint of the pinkyToWrist joint (Wrist Joint) + */ + readonly pinkyToWrist: Keypoint + + /** + * The Keypoint of the pinkyIntermediate joint, will be @deprecated soon in favor of pinkyKnuckle. + */ + readonly pinkyIntermediate: Keypoint + + /** + * The Keypoint of the pinkyKnuckle joint (Pinky Metacarpophalangeal (MCP) Joint) + */ + readonly pinkyKnuckle: Keypoint + + /** + * The Keypoint of the pinkyDistal joint, will soon be @deprecated for pinkyMidJoint + */ + readonly pinkyDistal: Keypoint + + /** + * The Keypoint of the pinkyMidJoint joint (Pinky Proximal Interphalangeal (PIP) Joint) + */ + readonly pinkyMidJoint: Keypoint + + /** + * The Keypoint of the pinkyPad joint, will soon be @deprecated for pinkyUpperJoint + */ + readonly pinkyPad: Keypoint + + /** + * The Keypoint of the pinkyUpperJoint joint (Pinky Distal Interphalangeal (DIP) Joint) + */ + readonly pinkyUpperJoint: Keypoint + + /** + * The Keypoint of the pinkyTip joint (Pinky Tip Joint) + */ + readonly pinkyTip: Keypoint + + /** + * The Keypoints of the Thumb finger + */ + readonly thumbFinger: Keypoint[] + + /** + * The Keypoints of the Index finger + */ + readonly indexFinger: Keypoint[] + + /** + * The Keypoints of the Middle finger + */ + readonly middleFinger: Keypoint[] + + /** + * The Keypoints of the Ring finger + */ + readonly ringFinger: Keypoint[] + + /** + * The Keypoints of the Pinky finger + */ + readonly pinkyFinger: Keypoint[] + + /** + * The Keypoints of the entire Hand + */ + readonly points: Keypoint[] + + /** + * Returns the enabled state of the hand. + */ + readonly enabled: boolean + + /** + * Returns true if the hand is the dominant hand assigned by the system + */ + readonly isDominantHand: boolean + + /** + * Determines if the hand is the left or right hand + */ + readonly handType: HandType + + /** + * {@link ObjectTracking3D} associated with this base hand + */ + readonly objectTracking3D: ObjectTracking3D + + /** + * Returns the normalized direction and origin point of the targeting ray in world coordinate system + * It can return null if the data has not been received from LensCore's GestureModule API. + */ + readonly targetingData: TargetingData | null + + /** + * Sets the enabled state of the hand. + * Events will not be called if isEnabled is set to false. + */ + setEnabled(isEnabled: boolean): void + + /** + * Determines if the system is able to track + * the BaseHand + */ + isTracked(): boolean + + /** + * Sets isDominantHand. This is used from HandInputData + * based on Lens Tweak value, and shouldn't be accessible + * by external developers. + * + * @param {Boolean} isDominantHand - describes if this hand is the dominant one or not + */ + setIsDominantHand(isDominantHand: boolean): void + + /** + * Determines if the hand's palm is facing the user + */ + isFacingCamera(): boolean + + /** + * Determines if the hand is aiming towards objects in the scene + */ + isInTargetingPose(): boolean + + /** + * Determines if the user is pinching + */ + isPinching(): boolean + + /** + * @returns whether the user is tapping their hand + */ + isTapping(): PalmTapDetectionEvent + + /** + * Returns owner scene object associated with the hand + */ + getSceneObject(): SceneObject + + /** + * Returns a normalized value from 0-1, where 0 is the distance + * from a finger tip to the thumb tip in resting/neutral hand pose. + * 1 is when a finger tip to thumb tip are touching/pinching. + * Returns null if the hand is not tracked + */ + getPinchStrength(): number | null + + /** + * Returns a direction quaternion based on a plane derived + * from a forward direction (between your thumb knuckle to thumb tip) + * and a right direction (between your thumb knuckle to index knuckle) + */ + getPinchDirection(): quat | null + + /** + * Returns the roll rotation of the hand in degrees. + * This is the result of the dot product from a right vector, + * created by the index and middle knuckle, and the camera's right vector + * to determine if the palm if facing the user. + * + * A value less than 30 is facing towards the user. + * A value greater than 30 is facing away from the user. + * + * Returns null if the hand is not being tracked. + */ + getFacingCameraAngle(): number | null + + /** + * Returns the pitch rotation of the hand in degrees. + * This is the result of the dot product from a forward vector, + * created by the middle knuckle and wrist, and the camera's forward vector. + * + * A value greater than 0 is pointing up. + * A value less than 0 is pointing down. + * + * Returns null if the hand is not being tracked. + */ + getPalmPitchAngle(): number | null + + /** + * Approximates the center of the palm, as we currently do not have a center palm landmark. + * Used to determine whether hands are overlapping + * @returns the calculated center or null if any of the landmarks don't exist + */ + getPalmCenter(): vec3 | null + + /** + * @returns attached {@link HandVisuals} or null if none is attached. + */ + getHandVisuals(): HandVisuals | null + + /** + * Attaches {@link HandVisuals} to the tracked hand + */ + attachHandVisuals(handVisuals: HandVisuals): void + + /** + * Detaches {@link HandVisuals} to the tracked hand + */ + detachHandVisuals(handVisuals: HandVisuals): void +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/BaseHand.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/BaseHand.ts.meta new file mode 100644 index 00000000..354755e6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/BaseHand.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 7e4e2a89-8b4a-4d72-a21f-7eb5bfc1e4fa + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 7e4e2a89-8b4a-4d72-a21f-7eb5bfc1e4fa + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 80817cab-feb7-41da-9adb-3634224f4137 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/DefaultHandTrackingAssetProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/DefaultHandTrackingAssetProvider.ts new file mode 100644 index 00000000..ba5bb4f0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/DefaultHandTrackingAssetProvider.ts @@ -0,0 +1,30 @@ +import {Singleton} from "../../Decorators/Singleton" +import HandTrackingAssetProvider from "./HandTrackingAssetProvider" +import {HandType} from "./HandType" + +const LEFT_HAND_ASSET = requireAsset("./LeftHandAsset.handTracking3D") +const RIGHT_HAND_ASSET = requireAsset("./RightHandAsset.handTracking3D") + +/** + * Implementation of the default hand tracking asset provider which is the default + * asset from Lens Studio + */ +@Singleton +export default class DefaultHandTrackingAssetProvider + implements HandTrackingAssetProvider +{ + public static getInstance: () => DefaultHandTrackingAssetProvider + + private leftHandAsset: HandTracking3DAsset + private rightHandAsset: HandTracking3DAsset + + constructor() { + this.leftHandAsset = LEFT_HAND_ASSET as HandTracking3DAsset + this.rightHandAsset = RIGHT_HAND_ASSET as HandTracking3DAsset + } + + /** @inheritdoc */ + get(handType: HandType): Asset { + return handType === "left" ? this.leftHandAsset : this.rightHandAsset + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/DefaultHandTrackingAssetProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/DefaultHandTrackingAssetProvider.ts.meta new file mode 100644 index 00000000..241f461e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/DefaultHandTrackingAssetProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 7ee104f2-686a-4e02-a5de-e94e247eea97 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 7ee104f2-686a-4e02-a5de-e94e247eea97 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 0f13960d-028b-45e5-ade7-728b179428bc + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/GestureModuleProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/GestureModuleProvider.ts new file mode 100644 index 00000000..141bd5bd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/GestureModuleProvider.ts @@ -0,0 +1,41 @@ +import {Singleton} from "../../../Decorators/Singleton" +import NativeLogger from "../../../Utils/NativeLogger" + +/** + * Provides gesture related APIs. + */ +@Singleton +export default class GestureModuleProvider { + public static getInstance: () => GestureModuleProvider + private readonly log: NativeLogger + private loadedModule: GestureModule | undefined + + constructor() { + this.log = new NativeLogger("GestureModuleProvider") + } + + /** + * Tries to create an ScriptObject.GestureModule using {@link ModuleLoader}. + * Stores and returns the created object if it can be successfully created. + * Returns undefined if error happens during creation. + * + * @returns the created {@link GestureModule} or undefined if it cannot be created. + */ + getModule(): GestureModule | undefined { + if (this.loadedModule !== undefined) { + return this.loadedModule + } + + if (GestureModule.HandType === undefined) { + return undefined + } + + try { + this.loadedModule = require("LensStudio:GestureModule") as GestureModule + return this.loadedModule + } catch (error) { + this.log.e(`Error creating module: ${error}`) + return undefined + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/GestureModuleProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/GestureModuleProvider.ts.meta new file mode 100644 index 00000000..5955e4be --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/GestureModuleProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 22e1ef0f-e860-4e8d-b8ea-f9cb204d3637 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 22e1ef0f-e860-4e8d-b8ea-f9cb204d3637 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 6bb48623-39a3-4a51-8db6-173a93f575de + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/MotionControllerProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/MotionControllerProvider.ts new file mode 100644 index 00000000..cd8c4151 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/MotionControllerProvider.ts @@ -0,0 +1,43 @@ +import {Singleton} from "../../../Decorators/Singleton" +import NativeLogger from "../../../Utils/NativeLogger" + +/** + * Provides motion related APIs + */ +@Singleton +export default class MotionControllerProvider { + public static getInstance: () => MotionControllerProvider + private readonly log: NativeLogger + private loadedModule: MotionControllerModule | undefined + + constructor() { + this.log = new NativeLogger("MotionControllerProvider") + } + + /** + * Tries to create an ScriptObject.MotionControllerModule using {@link ModuleLoader}. + * Stores and returns the created object if it can be successfully created. + * Returns undefined if error happens during creation. + * + * @returns the created {@link MotionControllerModule} or undefined if it cannot be + * created. + */ + getModule(): MotionControllerModule | undefined { + if (this.loadedModule !== undefined) { + return this.loadedModule + } + + if (MotionController.MotionType === undefined) { + return undefined + } + + try { + this.loadedModule = + require("LensStudio:MotionControllerModule") as MotionControllerModule + return this.loadedModule + } catch (error) { + this.log.e(`Error creating module: ${error}`) + return undefined + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/MotionControllerProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/MotionControllerProvider.ts.meta new file mode 100644 index 00000000..70235c7c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/MotionControllerProvider.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 0e5df912-3ca5-43f0-9133-2c8ca028d919 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 0e5df912-3ca5-43f0-9133-2c8ca028d919 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! fd6f444a-8124-4b25-8946-b184ad30b3e5 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetector.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetector.ts new file mode 100644 index 00000000..e41837d8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetector.ts @@ -0,0 +1,55 @@ +import NativeLogger from "../../../../Utils/NativeLogger" +import GestureModuleProvider from "../../GestureProvider/GestureModuleProvider" +import {PalmTapEventType} from "../PalmTapEvent" +import PalmTapDetectorStateMachine from "./PalmTapDetectorStateMachine" + +const TAG = "PalmTapDetector" +/** + * Handles PalmTap API events with StateMachine + */ +export default class PalmTapDetector { + private gestureModule: GestureModule = (() => { + const gestureModuleProvider: GestureModuleProvider = + GestureModuleProvider.getInstance() + const gestureModule = gestureModuleProvider.getModule() + if (gestureModule === undefined) { + throw new Error("GestureModule is undefined in PalmTapDetector") + } + return gestureModule + })() + + private palmTapDetectorStateMachine: PalmTapDetectorStateMachine = + new PalmTapDetectorStateMachine() + + private log = new NativeLogger(TAG) + + constructor(gestureHandType: GestureModule.HandType) { + this.setupPalmTapApi(gestureHandType) + } + + /** + * returns true if the user is currently tapping + */ + get isTapping(): boolean { + return this.palmTapDetectorStateMachine.isTapping() + } + + private setupPalmTapApi(gestureHandType: GestureModule.HandType) { + this.log.d("Setting up palm tap api") + + try { + this.gestureModule.getPalmTapDownEvent(gestureHandType).add(() => { + this.log.v("Palm tap down event from GestureModule") + this.palmTapDetectorStateMachine.notifyPalmTapEvent( + PalmTapEventType.Down + ) + }) + this.gestureModule.getPalmTapUpEvent(gestureHandType).add(() => { + this.log.v("Palm tap up event from GestureModule") + this.palmTapDetectorStateMachine.notifyPalmTapEvent(PalmTapEventType.Up) + }) + } catch (error) { + throw new Error(`Error setting up palmTap subscriptions ${error}`) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetector.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetector.ts.meta new file mode 100644 index 00000000..ee791040 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetector.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 4072cb3d-97a2-42ab-92d6-7ed88274b998 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 4072cb3d-97a2-42ab-92d6-7ed88274b998 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 728ce951-66c3-424f-bac4-50c21ebef3d1 + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetectorStateMachine.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetectorStateMachine.ts new file mode 100644 index 00000000..3d35a70c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetectorStateMachine.ts @@ -0,0 +1,80 @@ +import Event from "../../../../Utils/Event" +import StateMachine from "../../../../Utils/StateMachine" +import {InteractionConfigurationProvider} from "../../../InteractionConfigurationProvider/InteractionConfigurationProvider" +import {PalmTapEventType} from "../PalmTapEvent" + +const TAG = "PalmTapDetectorStateMachine" + +export enum PalmTapDetectorState { + Idle = "Idle", + Tap = "Tap", +} + +/** + * Tracks states and transitions of palm tapping + */ +export default class PalmTapDetectorStateMachine { + private interactionConfigurationProvider: InteractionConfigurationProvider = + InteractionConfigurationProvider.getInstance() + + private stateMachine = new StateMachine("PalmTapDetectorStateMachine") + + private onPalmTapDownEvent = new Event() + readonly onPalmTapDown = this.onPalmTapDownEvent.publicApi() + + private onPalmTapUpEvent = new Event() + readonly onPalmTapUp = this.onPalmTapUpEvent.publicApi() + + constructor() { + this.setupStateMachine() + } + + /** + * @returns whether the user is tapping + */ + public isTapping(): boolean { + return this.stateMachine.currentState?.name === PalmTapDetectorState.Tap + } + + /** + * Notifies that a palm tap event has been detected + * @param palmTapEventType The type of event that was detected + */ + public notifyPalmTapEvent(palmTapEventType: PalmTapEventType): void { + this.stateMachine.sendSignal(palmTapEventType) + } + + private setupStateMachine() { + this.stateMachine.addState({ + name: PalmTapDetectorState.Idle, + onEnter: () => {}, + transitions: [ + { + nextStateName: PalmTapDetectorState.Tap, + checkOnSignal: (signal: string) => { + return signal === PalmTapEventType.Down + }, + }, + ], + }) + + this.stateMachine.addState({ + name: PalmTapDetectorState.Tap, + onEnter: () => { + this.onPalmTapDownEvent.invoke() + }, + onExit: () => { + this.onPalmTapUpEvent.invoke() + }, + transitions: [ + { + nextStateName: PalmTapDetectorState.Idle, + checkOnSignal: (signal: string) => { + return signal === PalmTapEventType.Up + }, + }, + ], + }) + this.stateMachine.enterState(PalmTapDetectorState.Idle) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetectorStateMachine.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetectorStateMachine.ts.meta new file mode 100644 index 00000000..c8b8e3b5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetection/PalmTapDetectorStateMachine.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 6205b88a-de58-405f-b074-81ce1dae55cb + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 6205b88a-de58-405f-b074-81ce1dae55cb + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 5d7d85df-7afc-44c0-9590-fe8761e7352c + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetectionEvent.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetectionEvent.ts new file mode 100644 index 00000000..dbb73886 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetectionEvent.ts @@ -0,0 +1,11 @@ +/** + * Describes the state of Palm Tap API + */ +export type PalmTapDetectionEvent = + | { + state: "unsupported" + } + | { + state: "available" + data: {isTapping: boolean} + } diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetectionEvent.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetectionEvent.ts.meta new file mode 100644 index 00000000..7a5284a2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapDetectionEvent.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 2559d4bf-fb96-4b2d-b3c1-f88e18cc6830 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 2559d4bf-fb96-4b2d-b3c1-f88e18cc6830 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 27005ecb-ecdc-4cc8-a529-2b9eca35f95b + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapEvent.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapEvent.ts new file mode 100644 index 00000000..672e3c8d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapEvent.ts @@ -0,0 +1,7 @@ +/** + * Describes the Palm Tap event types + */ +export enum PalmTapEventType { + Down = "Down", + Up = "Up", +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapEvent.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapEvent.ts.meta new file mode 100644 index 00000000..21fa1726 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PalmTapEvent.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 972f1d3e-6e7b-431b-9a81-66a2f77563e1 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 972f1d3e-6e7b-431b-9a81-66a2f77563e1 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 06a77497-8b14-425a-aa57-a3caf182aed8 + ImporterSettings: ! + {} + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HciPinchDetectionStrategy.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HciPinchDetectionStrategy.ts new file mode 100644 index 00000000..6e504e18 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HciPinchDetectionStrategy.ts @@ -0,0 +1,80 @@ +import Event, {PublicApi} from "../../../../../Utils/Event" +import NativeLogger from "../../../../../Utils/NativeLogger" +import GestureModuleProvider from "../../../GestureProvider/GestureModuleProvider" +import {HandType} from "../../../HandType" +import {PinchEventType} from "../../PinchEventType" +import {PinchDetectionStrategy} from "./PinchDetectionStrategy" + +const TAG = "HciPinchDetection" + +export type HciPinchDetectionStrategyConfig = { + handType: HandType +} + +/** + * Class to detect pinch by calling into HCI Gesture APIs at lenscore level + */ +export default class HciPinchDetectionStrategy + implements PinchDetectionStrategy +{ + // Native Logging + private log = new NativeLogger(TAG) + + private gestureModuleProvider: GestureModuleProvider = + GestureModuleProvider.getInstance() + + private gestureModule: GestureModule | undefined = undefined + private _onPinchDetectedEvent = new Event() + private _onPinchDetected = this._onPinchDetectedEvent.publicApi() + + private _onPinchProximityEvent = new Event() + private _onPinchProximity = this._onPinchProximityEvent.publicApi() + + constructor(private config: HciPinchDetectionStrategyConfig) { + this.setupPinchApi() + } + + /** @inheritdoc */ + get onPinchDetected(): PublicApi { + return this._onPinchDetected + } + + /** @inheritdoc */ + get onPinchProximity(): PublicApi { + return this._onPinchProximity + } + + private get gestureHandType(): GestureModule.HandType { + return this.config.handType === "right" + ? GestureModule.HandType.Right + : GestureModule.HandType.Left + } + + private setupPinchApi() { + this.gestureModule = this.gestureModuleProvider.getModule() + if (this.gestureModule !== undefined) { + this.gestureModule.getPinchDownEvent(this.gestureHandType).add(() => { + this._onPinchDetectedEvent.invoke(PinchEventType.Down) + }) + + this.gestureModule.getPinchUpEvent(this.gestureHandType).add(() => { + this._onPinchDetectedEvent.invoke(PinchEventType.Up) + }) + + if (this.gestureModule.getPinchStrengthEvent !== undefined) { + this.gestureModule + .getPinchStrengthEvent(this.gestureHandType) + .add((args: PinchStrengthArgs) => { + const proximity = args.strength + this._onPinchProximityEvent.invoke(proximity) + this.log.v( + "PinchEvent : " + + "Pinch Strength Event" + + " : proximity : " + + proximity + ) + }) + } + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HciPinchDetectionStrategy.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HciPinchDetectionStrategy.ts.meta new file mode 100644 index 00000000..52448489 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HciPinchDetectionStrategy.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 3dd21c91-97ba-49a4-8a1d-9df2a8d18d3f + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 3dd21c91-97ba-49a4-8a1d-9df2a8d18d3f + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 01d644af-9bff-487c-a623-44242a2ae540 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HeuristicPinchDetectionStrategy.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HeuristicPinchDetectionStrategy.ts new file mode 100644 index 00000000..53fec56c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HeuristicPinchDetectionStrategy.ts @@ -0,0 +1,128 @@ +import BistableThreshold from "../../../../../Utils/BistableThreshold" +import Event, {PublicApi} from "../../../../../Utils/Event" +import {LensConfig} from "../../../../../Utils/LensConfig" +import {clamp, mapValue} from "../../../../../Utils/mathUtils" +import NativeLogger from "../../../../../Utils/NativeLogger" +import WorldCameraFinderProvider from "../../../../CameraProvider/WorldCameraFinderProvider" +import {Keypoint} from "../../../Keypoint" +import {PinchEventType} from "../../PinchEventType" +import {PinchDetectionStrategy} from "../DetectionStrategies/PinchDetectionStrategy" + +const TAG = "HeuristicPinchDetection" +const MIN_PINCH_DISTANCE = 2 +const MAX_PINCH_DISTANCE = 7 + +export type HeuristicPinchDetectionStrategyConfig = { + thumbTip: Keypoint + indexTip: Keypoint + pinchDownThreshold?: number +} + +/** + * Class to detect pinch using a bistable threshold and the distance between index and thumb tips + */ +export default class HeuristicPinchDetectionStrategy + implements PinchDetectionStrategy +{ + // Native Logging + private log = new NativeLogger(TAG) + + private worldCamera = WorldCameraFinderProvider.getInstance() + + private pinchEnterThreshold = new BistableThreshold({ + edgeActivate: this.config.pinchDownThreshold ?? 1.75, + edgeDeactivate: 3.5, + }) + private thumbProjectThreshold = new BistableThreshold({ + edgeActivate: 3.0, + edgeDeactivate: 4.5, + }) + + private currentPinchProximity = 0 + private previousPinchProximity = 0 + + private _onPinchDetectedEvent = new Event() + private _onPinchDetected = this._onPinchDetectedEvent.publicApi() + + private _onPinchProximityEvent = new Event() + private _onPinchProximity = this._onPinchProximityEvent.publicApi() + + constructor(private config: HeuristicPinchDetectionStrategyConfig) { + const lensConfig = LensConfig.getInstance() + const updateDispatcher = lensConfig.updateDispatcher + updateDispatcher + .createUpdateEvent("HeuristicPinchDetectionStrategyUpdate") + .bind(() => { + this.update() + }) + } + + /** @inheritdoc */ + get onPinchDetected(): PublicApi { + return this._onPinchDetected + } + + /** @inheritdoc */ + get onPinchProximity(): PublicApi { + return this._onPinchProximity + } + + private update() { + const adjustedThumbPosition = this.adjustThumbDepthToPointer( + this.config.thumbTip.position, + this.config.indexTip.position + ) + + const pinchDistance = adjustedThumbPosition.sub( + this.config.indexTip.position + ).lengthSquared + const thresholdResult = this.pinchEnterThreshold.update(pinchDistance) + + // thresholdResult will be null if the bistable threshold was not just crossed, false if just crossed to "deactivate" side, and true if just crossed to "activate" side + if (thresholdResult === false) { + this._onPinchDetectedEvent.invoke(PinchEventType.Up) + } else if (thresholdResult === true) { + this._onPinchDetectedEvent.invoke(PinchEventType.Down) + } + + this.updatePinchProximity() + } + + private updatePinchProximity(): void { + const distance = this.config.thumbTip.position.distance( + this.config.indexTip.position + ) + if (distance === null || distance > MAX_PINCH_DISTANCE) { + this.currentPinchProximity = 0 + } + + const mappedDistance = mapValue( + clamp(distance, MIN_PINCH_DISTANCE, MAX_PINCH_DISTANCE), + MAX_PINCH_DISTANCE, + MIN_PINCH_DISTANCE, + 1, + 0 + ) + + this.currentPinchProximity = 1 - mappedDistance + + if (this.currentPinchProximity !== this.previousPinchProximity) { + this.previousPinchProximity = this.currentPinchProximity + this._onPinchProximityEvent.invoke(this.currentPinchProximity) + } + } + + private adjustThumbDepthToPointer(thumb: vec3, pointer: vec3) { + // project the thumb onto the plane that the pointer is on + const cameraPosition = this.worldCamera.getWorldPosition() + const thumbRay = thumb.sub(cameraPosition) + const thumbDir = thumbRay.normalize() + const pointerRay = pointer.sub(cameraPosition) + const pointerDist = pointerRay.length + const adjustedThumb = cameraPosition.add(thumbDir.uniformScale(pointerDist)) + const change = adjustedThumb.sub(thumb).length + this.thumbProjectThreshold.update(change) + const closeEnough = this.thumbProjectThreshold.getState() + return closeEnough === true ? adjustedThumb : thumb + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HeuristicPinchDetectionStrategy.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HeuristicPinchDetectionStrategy.ts.meta new file mode 100644 index 00000000..9c1e09d0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/HeuristicPinchDetectionStrategy.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 9bc1ad7b-53e8-4e3d-a7af-8c2efaca6c23 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 9bc1ad7b-53e8-4e3d-a7af-8c2efaca6c23 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! cae846cd-7853-4616-ada5-1da80fa0e6ba + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/PinchDetectionStrategy.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/PinchDetectionStrategy.ts new file mode 100644 index 00000000..c44d9672 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/PinchDetectionStrategy.ts @@ -0,0 +1,21 @@ +import {PublicApi} from "../../../../../Utils/Event" +import {PinchEventType} from "../../PinchEventType" + +/** + * Interface that all methods of detecting pinch should adhere to in order to be usable in PinchDetector + */ +export interface PinchDetectionStrategy { + /** + * Event invokes when a pinch is down or up or cancelled + */ + onPinchDetected: PublicApi + + /** + * Event invoked when a pinch proximity occurs. + * Normalized value from 0-1, where: + * 0 is the distance from a finger tip to the thumb tip in + * resting/neutral hand pose. + * 1 is when a finger tip to thumb tip are touching/pinching + */ + onPinchProximity: PublicApi +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/PinchDetectionStrategy.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/PinchDetectionStrategy.ts.meta new file mode 100644 index 00000000..02b8dfdb --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/DetectionStrategies/PinchDetectionStrategy.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 2cbacef9-21a7-415d-a293-544fa86993fe + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 2cbacef9-21a7-415d-a293-544fa86993fe + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 39c0b039-eed4-4f30-ba15-b4bf9c10cdd9 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetector.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetector.ts new file mode 100644 index 00000000..3f1b90d6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetector.ts @@ -0,0 +1,120 @@ +import {PublicApi} from "../../../../Utils/Event" +import HciPinchDetectionStrategy, { + HciPinchDetectionStrategyConfig, +} from "./DetectionStrategies/HciPinchDetectionStrategy" +import HeuristicPinchDetectionStrategy, { + HeuristicPinchDetectionStrategyConfig, +} from "./DetectionStrategies/HeuristicPinchDetectionStrategy" +import {PinchDetectionStrategy} from "./DetectionStrategies/PinchDetectionStrategy" +import PinchDetectorStateMachine from "./PinchDetectorStateMachine" + +const TAG = "PinchDetector" + +export enum PinchDetectionSelection { + Heuristic = "Heuristic", + LensCoreML = "LensCore ML", + Mock = "Mock", +} + +export type PinchDetectorConfig = HciPinchDetectionStrategyConfig & + HeuristicPinchDetectionStrategyConfig & { + onHandLost: PublicApi + isTracked: () => boolean + pinchDownThreshold?: number + pinchDetectionSelection?: PinchDetectionSelection + } + +/** + * Wraps PinchDetectionStrategy inside PinchDetectorStateMachine for pinch events + */ +export class PinchDetector { + private pinchDetectionStrategy + private pinchDetectorStateMachine = new PinchDetectorStateMachine() + + private pinchStrength = 0 + + constructor(private config: PinchDetectorConfig) { + config.pinchDownThreshold ??= 1.75 + config.pinchDetectionSelection ??= PinchDetectionSelection.LensCoreML + + this.pinchDetectionStrategy = this.createPinchDetectionStrategy() + + this.setupPinchEventCallback() + } + + /** + * Event called when the user has successfully pinched down. + */ + get onPinchDown(): PublicApi { + return this.pinchDetectorStateMachine.onPinchDown + } + + /** + * Event called when the user has released pinching after they + * have successfully pinched down. + */ + get onPinchUp(): PublicApi { + return this.pinchDetectorStateMachine.onPinchUp + } + + /** + * Event called when the user's pinch is canceled by the system. + */ + get onPinchCancel(): PublicApi { + return this.pinchDetectorStateMachine.onPinchCancel + } + + /** + * Determines if the user is pinching + */ + isPinching(): boolean { + return this.pinchDetectorStateMachine.isPinching() + } + + /** + * Returns a normalized value from 0-1, where: + * 0 is the distance from a finger tip to the thumb tip in + * resting/neutral hand pose. + * 1 is when a finger tip to thumb tip are touching/pinching + */ + getPinchStrength(): number { + if (this.config.isTracked()) { + return this.pinchStrength + } + + return 0 + } + + private createPinchDetectionStrategy(): PinchDetectionStrategy { + const pinchDetection = this.config.pinchDetectionSelection + if (pinchDetection === undefined) { + throw new Error("A PinchDetectionStrategy needs to be specified.") + } + switch (pinchDetection) { + case PinchDetectionSelection.Heuristic: { + return new HeuristicPinchDetectionStrategy({ + ...this.config, + pinchDownThreshold: this.config.pinchDownThreshold, + }) + } + case PinchDetectionSelection.LensCoreML: { + return new HciPinchDetectionStrategy(this.config) + } + default: { + throw new Error( + `${TAG}: No matching PinchDetectionSelection found, could not create strategy` + ) + } + } + } + + private setupPinchEventCallback() { + this.pinchDetectionStrategy.onPinchDetected.add((pinchEvent) => { + this.pinchDetectorStateMachine.notifyPinchEvent(pinchEvent) + }) + + this.pinchDetectionStrategy.onPinchProximity.add((proximity: number) => { + this.pinchStrength = proximity + }) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetector.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetector.ts.meta new file mode 100644 index 00000000..ca89104c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetector.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 931e07c3-bb61-4c4b-b404-1a8e937326bf + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 931e07c3-bb61-4c4b-b404-1a8e937326bf + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! c0a4f367-2acc-4bae-8842-e9113bfb76a1 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetectorStateMachine.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetectorStateMachine.ts new file mode 100644 index 00000000..7fa25e50 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetectorStateMachine.ts @@ -0,0 +1,95 @@ +import Event from "../../../../Utils/Event" +import NativeLogger from "../../../../Utils/NativeLogger" +import StateMachine from "../../../../Utils/StateMachine" +import {PinchEventType} from "../PinchEventType" + +const TAG = "PinchDetectorStateMachine" + +export enum PinchDetectorState { + Idle = "Idle", + Pinching = "Pinching", +} + +/** + * Tracks states and transitions of pinching + */ +export default class PinchDetectorStateMachine { + // Native Logging + private log = new NativeLogger(TAG) + + private stateMachine = new StateMachine("PinchDetectorStateMachine") + + private onPinchDownEvent = new Event() + readonly onPinchDown = this.onPinchDownEvent.publicApi() + + private onPinchUpEvent = new Event() + readonly onPinchUp = this.onPinchUpEvent.publicApi() + + private onPinchCancelEvent = new Event() + readonly onPinchCancel = this.onPinchCancelEvent.publicApi() + + constructor() { + this.setupStateMachine() + this.stateMachine.enterState(PinchDetectorState.Idle) + } + + /** + * Determines if the user is pinching + * @returns whether the state machine is currently in the Pinching state + */ + public isPinching(): boolean { + return this.stateMachine.currentState?.name === PinchDetectorState.Pinching + } + + /** + * Notifies that a pinch event has been detected + * @param pinchEventType The type of event that was detected + */ + public notifyPinchEvent(pinchEventType: PinchEventType): void { + this.stateMachine.sendSignal(pinchEventType) + } + + private setupStateMachine() { + this.stateMachine.addState({ + name: PinchDetectorState.Idle, + onEnter: () => {}, + transitions: [ + { + nextStateName: PinchDetectorState.Pinching, + checkOnSignal: (signal: string) => { + if (signal === PinchEventType.Down) { + this.onPinchDownEvent.invoke() + this.log.v("PinchEvent : " + "Pinch Down Event") + return true + } + + return false + }, + }, + ], + }) + + this.stateMachine.addState({ + name: PinchDetectorState.Pinching, + onEnter: () => {}, + transitions: [ + { + nextStateName: PinchDetectorState.Idle, + checkOnSignal: (signal: string) => { + if (signal === PinchEventType.Up) { + this.onPinchUpEvent.invoke() + this.log.v("PinchEvent : " + "Pinch Up Event") + return true + } else if (signal === PinchEventType.Cancel) { + this.onPinchCancelEvent.invoke() + this.log.v("PinchEvent : " + "Pinch Cancel Event") + return true + } + + return false + }, + }, + ], + }) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetectorStateMachine.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetectorStateMachine.ts.meta new file mode 100644 index 00000000..bfebaf6a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchDetection/PinchDetectorStateMachine.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! d28f0346-01b7-49a1-b667-bba12b26165c + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! d28f0346-01b7-49a1-b667-bba12b26165c + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! d208f04d-d94f-4650-a7ac-56d5736286cc + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchEventType.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchEventType.ts new file mode 100644 index 00000000..7476d7f5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchEventType.ts @@ -0,0 +1,15 @@ +import {HandType} from "../HandType" + +/** + * Describes a pinch event. The finger is optional as on an exit event we don't care about the finger. + */ +export type PinchEvent = { + type: "enter" | "exit" + hand: HandType +} + +export enum PinchEventType { + Down = "Down", + Up = "Up", + Cancel = "Cancel", +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchEventType.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchEventType.ts.meta new file mode 100644 index 00000000..51202d91 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/GestureProvider/PinchEventType.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 856a15d1-46cb-4d44-a8d0-b3e4dedba930 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 856a15d1-46cb-4d44-a8d0-b3e4dedba930 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 6b4ba523-46c4-412c-8cdb-c1acd322dd05 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandInputData.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandInputData.ts new file mode 100644 index 00000000..9643f064 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandInputData.ts @@ -0,0 +1,76 @@ +import {Singleton} from "../../Decorators/Singleton" +import {HandType} from "./HandType" +import TrackedHand from "./TrackedHand" + +const TAG = "HandInputData" + +export type HandInputDataConfig = { + dominantHand: HandType +} + +/** + * Main class for the hand data provider apis. + * Available apis: + * - getHand(handType: {@link HandType}) => {@link BaseHand} returns BaseHand Object that + * represents {@link HandType} + * - getDominantHand() => {@link BaseHand} returns BaseHand Object that + * represents the dominant hand as specified in the system through a Tweak. + * - getNonDominantHand() => {@link BaseHand} returns BaseHand Object that + * represents the non dominant hand as specified in the system through a Tweak. + */ +@Singleton +export class HandInputData { + public static getInstance: () => HandInputData + + private _enabled = true + + private leftHand: TrackedHand + private rightHand: TrackedHand + private config: HandInputDataConfig + constructor() { + this.config = { + dominantHand: "right", + } + this.leftHand = this.createHand("left") + this.rightHand = this.createHand("right") + } + + /** + * Sets the enabled state of the left and right hand. + * Events will not be called if isEnabled is set to false. + */ + public set enabled(enabled: boolean) { + if (this._enabled === enabled) { + return + } + + this.leftHand.setEnabled(enabled) + this.rightHand.setEnabled(enabled) + this._enabled = enabled + } + + private createHand(handType: HandType): TrackedHand { + return new TrackedHand({ + handType: handType, + isDominantHand: handType === this.config.dominantHand, + }) + } + + public getHand(handType: HandType): TrackedHand { + return handType === "left" ? this.leftHand : this.rightHand + } + public getDominantHand(): TrackedHand { + return this.getHand(this.config.dominantHand) + } + public getNonDominantHand(): TrackedHand { + const nonDominantHandType = + this.config.dominantHand === "right" ? "left" : "right" + return this.getHand(nonDominantHandType) + } + public setDominantHand(dominant: HandType) { + this.config.dominantHand = dominant + + this.getHand("left").setIsDominantHand(dominant === "left") + this.getHand("right").setIsDominantHand(dominant === "right") + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandInputData.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandInputData.ts.meta new file mode 100644 index 00000000..15f2c388 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandInputData.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 127f453d-170d-4c9f-9a49-8318200fe04b + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 127f453d-170d-4c9f-9a49-8318200fe04b + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 88389c08-2cb7-4672-af4c-3fbdd7d95c34 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandTrackingAssetProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandTrackingAssetProvider.ts new file mode 100644 index 00000000..920bee6e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandTrackingAssetProvider.ts @@ -0,0 +1,13 @@ +import {HandType} from "./HandType" + +/** + * Interface defining apis to retrieve hand tracking assets + */ +export default interface HandTrackingAssetProvider { + /** + * Returns the associated {@link Object3DAsset} + * + * @param handType the {@link HandType} for this asset + */ + get(handType: HandType): Asset +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandTrackingAssetProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandTrackingAssetProvider.ts.meta new file mode 100644 index 00000000..bebe94b5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandTrackingAssetProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 279b76a8-0ab3-4f82-9ef1-9bf580a738f9 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 279b76a8-0ab3-4f82-9ef1-9bf580a738f9 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 074ea4f3-fccb-4e50-b706-c3022357d1f6 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandType.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandType.ts new file mode 100644 index 00000000..29cb147e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandType.ts @@ -0,0 +1,5 @@ +/** + * Describes a hand type, can be left or right + */ +export const AllHandTypes = ["left", "right"] as const +export type HandType = typeof AllHandTypes[number] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandType.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandType.ts.meta new file mode 100644 index 00000000..6826d877 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandType.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 182d99db-0f3e-4259-952f-dcdb096e91fb + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 182d99db-0f3e-4259-952f-dcdb096e91fb + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! b0d6d2b8-1058-4920-b3d5-27833ccde075 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandVisuals.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandVisuals.ts new file mode 100644 index 00000000..7067c039 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandVisuals.ts @@ -0,0 +1,154 @@ +/** + * Provides the SceneObject to be attached to the {@link BaseHand} + */ +export interface HandVisuals { + readonly handMesh: RenderMeshVisual | undefined + + /** + * The root {@link SceneObject}, parent of the hand rig and hand mesh + */ + readonly root: SceneObject | undefined + + /** + * The {@link SceneObject} of the wrist joint + */ + readonly wrist: SceneObject | undefined + + /** + * The {@link SceneObject} of the thumbToWrist joint + */ + readonly thumbToWrist: SceneObject | undefined + + /** + * The {@link SceneObject} of the thumbBaseJoint joint + */ + readonly thumbBaseJoint: SceneObject | undefined + + /** + * The {@link SceneObject} of the thumbKnuckle joint + */ + readonly thumbKnuckle: SceneObject | undefined + + /** + * The {@link SceneObject} of the thumbMidJoint joint + */ + readonly thumbMidJoint: SceneObject | undefined + + /** + * The {@link SceneObject} of the thumbTip joint + */ + readonly thumbTip: SceneObject | undefined + + /** + * The {@link SceneObject} of the indexToWrist joint + */ + readonly indexToWrist: SceneObject | undefined + + /** + * The {@link SceneObject} of the indexKnuckle joint + */ + readonly indexKnuckle: SceneObject | undefined + + /** + * The {@link SceneObject} of the indexMidJoint joint + */ + readonly indexMidJoint: SceneObject | undefined + + /** + * The {@link SceneObject} of the indexUpperJoint joint + */ + readonly indexUpperJoint: SceneObject | undefined + + /** + * The {@link SceneObject} of the indexTip joint + */ + readonly indexTip: SceneObject | undefined + + /** + * The {@link SceneObject} of the middleToWrist joint + */ + readonly middleToWrist: SceneObject | undefined + + /** + * The {@link SceneObject} of the middleKnuckle joint + */ + readonly middleKnuckle: SceneObject | undefined + + /** + * The {@link SceneObject} of the middleMidJoint joint + */ + readonly middleMidJoint: SceneObject | undefined + + /** + * The {@link SceneObject} of the middleUpperJoint joint + */ + readonly middleUpperJoint: SceneObject | undefined + + /** + * The {@link SceneObject} of the middleTip joint + */ + readonly middleTip: SceneObject | undefined + + /** + * The {@link SceneObject} of the ringToWrist joint + */ + readonly ringToWrist: SceneObject | undefined + + /** + * The {@link SceneObject} of the ringKnuckle joint + */ + readonly ringKnuckle: SceneObject | undefined + + /** + * The {@link SceneObject} of the ringMidJoint joint + */ + readonly ringMidJoint: SceneObject | undefined + + /** + * The {@link SceneObject} of the ringUpperJoint joint + */ + readonly ringUpperJoint: SceneObject | undefined + + /** + * The {@link SceneObject} of the ringTip joint + */ + readonly ringTip: SceneObject | undefined + + /** + * The {@link SceneObject} of the pinkyToWrist joint + */ + readonly pinkyToWrist: SceneObject | undefined + + /** + * The {@link SceneObject} of the pinkyKnuckle joint + */ + readonly pinkyKnuckle: SceneObject | undefined + + /** + * The {@link SceneObject} of the pinkyMidJoint joint + */ + readonly pinkyMidJoint: SceneObject | undefined + + /** + * The {@link SceneObject} of the pinkyUpperJoint joint + */ + readonly pinkyUpperJoint: SceneObject | undefined + + /** + * The {@link SceneObject} of the pinkyTip joint + */ + readonly pinkyTip: SceneObject | undefined + + /** + * True when this class is ready to use. + * + * @remarks + * {@link initialize} can be used to initialize the instance. + */ + readonly initialized: boolean + + /** + * Sets up all joint {@link Transform}s and sets {@link initialized} to true. + */ + initialize(): void +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandVisuals.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandVisuals.ts.meta new file mode 100644 index 00000000..4a403ab0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/HandVisuals.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 86bcd2ab-c44c-4f79-a8c7-e14ef1fa78be + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 86bcd2ab-c44c-4f79-a8c7-e14ef1fa78be + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! fdf1f778-d7a8-4f50-8fd3-9d5a2557538f + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Joints.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Joints.ts new file mode 100644 index 00000000..8ea0944e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Joints.ts @@ -0,0 +1,135 @@ +export type JointNode = { + name: string + children: JointNode[] +} + +export const JOINT_HIERARCHY: JointNode = { + name: "LeftHandRig", + children: [ + { + name: "wrist", + children: [ + { + name: "wrist_to_thumb", + children: [ + { + name: "thumb-0", + children: [ + { + name: "thumb-1", + children: [ + { + name: "thumb-2", + children: [ + { + name: "thumb-3", + children: [], + }, + ], + }, + ], + }, + ], + }, + ], + }, + { + name: "wrist_to_index", + children: [ + { + name: "index-0", + children: [ + { + name: "index-1", + children: [ + { + name: "index-2", + children: [ + { + name: "index-3", + children: [], + }, + ], + }, + ], + }, + ], + }, + ], + }, + { + name: "wrist_to_mid", + children: [ + { + name: "mid-0", + children: [ + { + name: "mid-1", + children: [ + { + name: "mid-2", + children: [ + { + name: "mid-3", + children: [], + }, + ], + }, + ], + }, + ], + }, + ], + }, + { + name: "wrist_to_ring", + children: [ + { + name: "ring-0", + children: [ + { + name: "ring-1", + children: [ + { + name: "ring-2", + children: [ + { + name: "ring-3", + children: [], + }, + ], + }, + ], + }, + ], + }, + ], + }, + { + name: "wrist_to_pinky", + children: [ + { + name: "pinky-0", + children: [ + { + name: "pinky-1", + children: [ + { + name: "pinky-2", + children: [ + { + name: "pinky-3", + children: [], + }, + ], + }, + ], + }, + ], + }, + ], + }, + ], + }, + ], +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Joints.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Joints.ts.meta new file mode 100644 index 00000000..774cb477 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Joints.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! f528c93e-977b-4f09-a88b-8eea5718a577 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! f528c93e-977b-4f09-a88b-8eea5718a577 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 96e5ff30-296c-4ee8-ae86-c8a605e349a7 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Keypoint.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Keypoint.ts new file mode 100644 index 00000000..c4c5433d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Keypoint.ts @@ -0,0 +1,125 @@ +import WorldCameraFinderProvider from "../CameraProvider/WorldCameraFinderProvider" +import {validate} from "../../Utils/validate" + +const TAG = "Keypoint" + +/** + * This class represents a keypoint represneting one of the many joints of a Hand in 3D space, providing methods to retrieve its world position, world rotation, and screen-space position. It uses an ObjectTracking3D component to create an attachment point and a WorldCameraFinderProvider to convert world coordinates to screen coordinates. + * + */ +export class Keypoint { + private worldCamera = WorldCameraFinderProvider.getInstance() + private transform: Transform + private attachmentPoint: SceneObject + + constructor( + readonly name: string, + private objectTracking3DComponent: ObjectTracking3D, + ) { + this.attachmentPoint = this.objectTracking3DComponent.createAttachmentPoint( + this.name, + ) + this.transform = this.attachmentPoint.getTransform() + } + + /** + * Returns the world position of this keypoint + */ + get position(): vec3 { + return this.transform.getWorldPosition() + } + + /** + * Returns the world rotation of this keypoint + */ + get rotation(): quat { + return this.transform.getWorldRotation() + } + + /** + * Returns the screen-space position of this keypoint + */ + get screenPosition(): vec2 { + return this.worldCamera.worldSpaceToScreenSpace( + this.position.x, + this.position.y, + this.position.z, + ) + } + + /** + * Returns the normalized right vector of this keypoint + */ + get right(): vec3 { + return this.transform.right + } + + /** + * Returns the normalized right vector of this keypoint + */ + get up(): vec3 { + return this.transform.up + } + + /** + * Returns the normalized right vector of this keypoint + */ + get forward(): vec3 { + return this.transform.forward + } + + /** + * Returns the normalized right vector of this keypoint + */ + get left(): vec3 { + return this.transform.left + } + + /** + * Returns the normalized right vector of this keypoint + */ + get down(): vec3 { + return this.transform.down + } + + /** + * Returns the normalized right vector of this keypoint + */ + get back(): vec3 { + return this.transform.back + } + + /** + * Get the {@link SceneObject} attached to this keypoint + * + * @returns sceneObject - object attached to this keypoint + */ + getAttachmentPoint(): SceneObject { + return this.attachmentPoint + } + + /** + * Overrides the {@link SceneObject} attached to this keypoint + * + * @param sceneObject - object to attach + */ + addAttachmentPoint(sceneObject: SceneObject | undefined): void { + validate(sceneObject) + this.objectTracking3DComponent.removeAttachmentPoint(this.attachmentPoint) + this.attachmentPoint = sceneObject + this.transform = sceneObject.getTransform() + this.objectTracking3DComponent.addAttachmentPoint(this.name, sceneObject) + } + + /** + * Sets the attachment point to the default created one. This function + * is usually called when the {@link HandVisuals} is destroyed, and we don't + * need to remove the attachment point. + */ + clearAttachmentPoint(): void { + this.attachmentPoint = this.objectTracking3DComponent.createAttachmentPoint( + this.name, + ) + this.transform = this.attachmentPoint.getTransform() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Keypoint.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Keypoint.ts.meta new file mode 100644 index 00000000..da30cfdc --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/Keypoint.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 3e38b411-9333-424e-b075-e67b30ada806 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 3e38b411-9333-424e-b075-e67b30ada806 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 225eeed7-8972-487d-872b-2aee2dc8f135 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LandmarkNames.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LandmarkNames.ts new file mode 100644 index 00000000..dccdeabb --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LandmarkNames.ts @@ -0,0 +1,147 @@ +/** + * A handy list of Landmark Names + */ +export enum LandmarkName { + INDEX_0 = "index-0", + INDEX_1 = "index-1", + INDEX_2 = "index-2", + INDEX_3 = "index-3", + + MIDDLE_0 = "mid-0", + MIDDLE_1 = "mid-1", + MIDDLE_2 = "mid-2", + MIDDLE_3 = "mid-3", + + RING_0 = "ring-0", + RING_1 = "ring-1", + RING_2 = "ring-2", + RING_3 = "ring-3", + + PINKY_0 = "pinky-0", + PINKY_1 = "pinky-1", + PINKY_2 = "pinky-2", + PINKY_3 = "pinky-3", + + THUMB_0 = "thumb-0", + THUMB_1 = "thumb-1", + THUMB_2 = "thumb-2", + THUMB_3 = "thumb-3", + + WRIST = "wrist", + + WRIST_TO_THUMB = "wrist_to_thumb", + WRIST_TO_INDEX = "wrist_to_index", + WRIST_TO_MIDDLE = "wrist_to_mid", + WRIST_TO_RING = "wrist_to_ring", + WRIST_TO_PINKY = "wrist_to_pinky", +} + +export const INDEX_BASE = LandmarkName.INDEX_0 +export const INDEX_TIP = LandmarkName.INDEX_3 + +export const MIDDLE_BASE = LandmarkName.MIDDLE_0 +export const MIDDLE_TIP = LandmarkName.MIDDLE_3 + +export const RING_BASE = LandmarkName.RING_0 +export const RING_TIP = LandmarkName.RING_3 + +export const PINKY_BASE = LandmarkName.PINKY_0 +export const PINKY_TIP = LandmarkName.PINKY_3 + +export const THUMB_BASE = LandmarkName.THUMB_0 +export const THUMB_TIP = LandmarkName.THUMB_3 + +export const wristLandmarks = [ + LandmarkName.WRIST, + LandmarkName.WRIST_TO_INDEX, + LandmarkName.WRIST_TO_MIDDLE, + LandmarkName.WRIST_TO_PINKY, + LandmarkName.WRIST_TO_RING, + LandmarkName.WRIST_TO_THUMB, +] +export const thumbLandmarks = [ + LandmarkName.THUMB_3, + LandmarkName.THUMB_2, + LandmarkName.THUMB_1, + LandmarkName.THUMB_0, +] +export const indexLandmarks = [ + LandmarkName.INDEX_3, + LandmarkName.INDEX_2, + LandmarkName.INDEX_1, + LandmarkName.INDEX_0, +] +export const midLandmarks = [ + LandmarkName.MIDDLE_3, + LandmarkName.MIDDLE_2, + LandmarkName.MIDDLE_1, + LandmarkName.MIDDLE_0, +] +export const ringLandmarks = [ + LandmarkName.RING_3, + LandmarkName.RING_2, + LandmarkName.RING_1, + LandmarkName.RING_0, +] +export const pinkyLandmarks = [ + LandmarkName.PINKY_3, + LandmarkName.PINKY_2, + LandmarkName.PINKY_1, + LandmarkName.PINKY_0, +] +export const allLandmarks = [ + thumbLandmarks, + indexLandmarks, + midLandmarks, + ringLandmarks, + pinkyLandmarks, +] + +export const stubLandmarks = [ + LandmarkName.INDEX_0, + LandmarkName.MIDDLE_0, + LandmarkName.RING_0, + LandmarkName.PINKY_0, + LandmarkName.THUMB_0, + LandmarkName.WRIST, +] + +export enum Fingers { + INDEX = "INDEX", + THUMB = "THUMB", + MIDDLE = "MIDDLE", + PINKY = "PINKY", + RING = "RING", +} + +export enum Hands { + RIGHT = "RIGHT", + LEFT = "LEFT", +} + +export const mapLandmarkToFinger: any = {} + +mapLandmarkToFinger[LandmarkName.THUMB_0] = Fingers.THUMB +mapLandmarkToFinger[LandmarkName.THUMB_1] = Fingers.THUMB +mapLandmarkToFinger[LandmarkName.THUMB_2] = Fingers.THUMB +mapLandmarkToFinger[LandmarkName.THUMB_3] = Fingers.THUMB + +mapLandmarkToFinger[LandmarkName.INDEX_0] = Fingers.INDEX +mapLandmarkToFinger[LandmarkName.INDEX_1] = Fingers.INDEX +mapLandmarkToFinger[LandmarkName.INDEX_2] = Fingers.INDEX +mapLandmarkToFinger[LandmarkName.INDEX_3] = Fingers.INDEX + +mapLandmarkToFinger[LandmarkName.MIDDLE_0] = Fingers.MIDDLE +mapLandmarkToFinger[LandmarkName.MIDDLE_1] = Fingers.MIDDLE +mapLandmarkToFinger[LandmarkName.MIDDLE_2] = Fingers.MIDDLE +mapLandmarkToFinger[LandmarkName.MIDDLE_3] = Fingers.MIDDLE + +mapLandmarkToFinger[LandmarkName.RING_0] = Fingers.RING +mapLandmarkToFinger[LandmarkName.RING_1] = Fingers.RING +mapLandmarkToFinger[LandmarkName.RING_2] = Fingers.RING +mapLandmarkToFinger[LandmarkName.RING_3] = Fingers.RING + +mapLandmarkToFinger[LandmarkName.PINKY_0] = Fingers.PINKY +mapLandmarkToFinger[LandmarkName.PINKY_1] = Fingers.PINKY +mapLandmarkToFinger[LandmarkName.PINKY_2] = Fingers.PINKY +mapLandmarkToFinger[LandmarkName.PINKY_3] = Fingers.PINKY diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LandmarkNames.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LandmarkNames.ts.meta new file mode 100644 index 00000000..9ff68480 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LandmarkNames.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 4765d1cc-b5fa-4ba1-908a-e21a86220061 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 4765d1cc-b5fa-4ba1-908a-e21a86220061 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! bfc3eaa2-f050-43aa-81e0-bcb82f488e88 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LeftHandAsset.handTracking3D b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LeftHandAsset.handTracking3D new file mode 100644 index 00000000..f36c8406 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LeftHandAsset.handTracking3D @@ -0,0 +1,57 @@ +- ! + PackagePath: "" + AttachmentPoints: + - name: wrist + parentPoint: "" + - name: wrist_to_thumb + parentPoint: wrist + - name: thumb-0 + parentPoint: wrist_to_thumb + - name: thumb-1 + parentPoint: thumb-0 + - name: thumb-2 + parentPoint: thumb-1 + - name: thumb-3 + parentPoint: thumb-2 + - name: wrist_to_index + parentPoint: wrist + - name: index-0 + parentPoint: wrist_to_index + - name: index-1 + parentPoint: index-0 + - name: index-2 + parentPoint: index-1 + - name: index-3 + parentPoint: index-2 + - name: wrist_to_mid + parentPoint: wrist + - name: mid-0 + parentPoint: wrist_to_mid + - name: mid-1 + parentPoint: mid-0 + - name: mid-2 + parentPoint: mid-1 + - name: mid-3 + parentPoint: mid-2 + - name: wrist_to_ring + parentPoint: wrist + - name: ring-0 + parentPoint: wrist_to_ring + - name: ring-1 + parentPoint: ring-0 + - name: ring-2 + parentPoint: ring-1 + - name: ring-3 + parentPoint: ring-2 + - name: wrist_to_pinky + parentPoint: wrist + - name: pinky-0 + parentPoint: wrist_to_pinky + - name: pinky-1 + parentPoint: pinky-0 + - name: pinky-2 + parentPoint: pinky-1 + - name: pinky-3 + parentPoint: pinky-2 + HandType: Left + TrackingMode: SimultaneousTwoHands diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LeftHandAsset.handTracking3D.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LeftHandAsset.handTracking3D.meta new file mode 100644 index 00000000..fed178b9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/LeftHandAsset.handTracking3D.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + HandTracking3DAsset: ! 1062714e-cbe6-455d-becf-a2c9ef9ce87d + ImporterName: HandTracking3DAssetImporter + PrimaryAsset: ! 1062714e-cbe6-455d-becf-a2c9ef9ce87d + PackageType: NotAPackage + AssetDataMap: + HandTracking3DAsset: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/RightHandAsset.handTracking3D b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/RightHandAsset.handTracking3D new file mode 100644 index 00000000..8f8b3777 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/RightHandAsset.handTracking3D @@ -0,0 +1,57 @@ +- ! + PackagePath: "" + AttachmentPoints: + - name: wrist + parentPoint: "" + - name: wrist_to_thumb + parentPoint: wrist + - name: thumb-0 + parentPoint: wrist_to_thumb + - name: thumb-1 + parentPoint: thumb-0 + - name: thumb-2 + parentPoint: thumb-1 + - name: thumb-3 + parentPoint: thumb-2 + - name: wrist_to_index + parentPoint: wrist + - name: index-0 + parentPoint: wrist_to_index + - name: index-1 + parentPoint: index-0 + - name: index-2 + parentPoint: index-1 + - name: index-3 + parentPoint: index-2 + - name: wrist_to_mid + parentPoint: wrist + - name: mid-0 + parentPoint: wrist_to_mid + - name: mid-1 + parentPoint: mid-0 + - name: mid-2 + parentPoint: mid-1 + - name: mid-3 + parentPoint: mid-2 + - name: wrist_to_ring + parentPoint: wrist + - name: ring-0 + parentPoint: wrist_to_ring + - name: ring-1 + parentPoint: ring-0 + - name: ring-2 + parentPoint: ring-1 + - name: ring-3 + parentPoint: ring-2 + - name: wrist_to_pinky + parentPoint: wrist + - name: pinky-0 + parentPoint: wrist_to_pinky + - name: pinky-1 + parentPoint: pinky-0 + - name: pinky-2 + parentPoint: pinky-1 + - name: pinky-3 + parentPoint: pinky-2 + HandType: Right + TrackingMode: SimultaneousTwoHands diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/RightHandAsset.handTracking3D.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/RightHandAsset.handTracking3D.meta new file mode 100644 index 00000000..cb50e5f2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/RightHandAsset.handTracking3D.meta @@ -0,0 +1,16 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + HandTracking3DAsset: ! 3ec4f93a-30e7-4707-9f7e-895215580cab + ImporterName: HandTracking3DAssetImporter + PrimaryAsset: ! 3ec4f93a-30e7-4707-9f7e-895215580cab + PackageType: NotAPackage + AssetDataMap: + HandTracking3DAsset: ! 00000000-0000-0000-0000-000000000000 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/TrackedHand.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/TrackedHand.ts new file mode 100644 index 00000000..cf9ecdc6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/TrackedHand.ts @@ -0,0 +1,809 @@ +import {CancelToken, setTimeout} from "../../Utils/debounce" +import Event, {PublicApi} from "../../Utils/Event" +import NativeLogger from "../../Utils/NativeLogger" +import { + PinchDetectionSelection, + PinchDetector, +} from "./GestureProvider/PinchDetection/PinchDetector" +import {JointNode, JOINT_HIERARCHY} from "./Joints" + +import {validate} from "../../Utils/validate" +import WorldCameraFinderProvider from "../CameraProvider/WorldCameraFinderProvider" +import {TargetingData} from "../TargetProvider/TargetingData" +import {BaseHand} from "./BaseHand" +import DefaultHandTrackingAssetProvider from "./DefaultHandTrackingAssetProvider" +import GestureModuleProvider from "./GestureProvider/GestureModuleProvider" +import PalmTapDetector from "./GestureProvider/PalmTapDetection/PalmTapDetector" +import {PalmTapDetectionEvent} from "./GestureProvider/PalmTapDetectionEvent" +import {HandType} from "./HandType" +import {HandVisuals} from "./HandVisuals" +import {Keypoint} from "./Keypoint" +import {LandmarkName} from "./LandmarkNames" + +export type BaseHandConfig = { + handType: HandType + isDominantHand: boolean +} + +export enum TrackingEvent { + OnTrackingStarted = "OnTrackingStarted", + OnTrackingLost = "OnTrackingLost", +} + +const TAG = "TrackedHand" +const HAND_FACING_THRESHOLD = 40.0 +const POINTING_PITCH_THRESHOLD = -60.0 + +// GestureModule can take up to 350ms to determine if a pinch has been sustained. +const OBJECT_TRACKING_3D_TIMEOUT_MS = 400 + +export type OrientationVectors = { + forward: vec3 + right: vec3 + up: vec3 + cameraForward: vec3 +} + +/** + * Manages a tracked hand, instantiates fingers and wrists. + * Also manages the {@link ObjectTracking3D} and creates + * the needed scene object hierarchy to achieve hand mesh visualization as well as landmarks tracking + */ +export default class TrackedHand implements BaseHand { + // Dependency injection + private handTrackingAssetProvider: DefaultHandTrackingAssetProvider = + DefaultHandTrackingAssetProvider.getInstance() + protected sceneObjectManager: ScriptScene = global.scene + private worldCamera: WorldCameraFinderProvider = + WorldCameraFinderProvider.getInstance() + private gestureModuleProvider: GestureModuleProvider = + GestureModuleProvider.getInstance() + + // Native Logging + private log = new NativeLogger(TAG) + + // SceneObject + private _enabled = true + private isDestroyed = false + private ownerSceneObject: SceneObject + + private cameraObject: SceneObject + + // Events + private onEnabledChangedEvent = new Event() + readonly onEnabledChanged = this.onEnabledChangedEvent.publicApi() + + private onHandFoundEvent = new Event() + readonly onHandFound = this.onHandFoundEvent.publicApi() + + private onHandLostEvent = new Event() + readonly onHandLost = this.onHandLostEvent.publicApi() + + readonly onPinchDown: PublicApi + readonly onPinchUp: PublicApi + readonly onPinchCancel: PublicApi + + // Tracking + private objectTracking3DComponent: ObjectTracking3D + + // Timeouts for temporary pinch sustain + private objectTracking3DCancelToken: CancelToken | undefined + private objectTracking3DRecentlyFound: boolean = false + + // Keypoints + private keypoints = new Map() + private handVisuals?: HandVisuals + private allPoints: Keypoint[] = [] + private thumbFingerPoints: Keypoint[] = [] + private indexFingerPoints: Keypoint[] = [] + private middleFingerPoints: Keypoint[] = [] + private ringFingerPoints: Keypoint[] = [] + private pinkyFingerPoints: Keypoint[] = [] + + // Pinch + private pinchDetector: PinchDetector + + // Palm Tap + private palmTapDetector?: PalmTapDetector + + private _isDominantHand = this.config.isDominantHand + + private _targetingData: TargetingData | null = null + + constructor(private config: BaseHandConfig) { + this.ownerSceneObject = this.sceneObjectManager.createSceneObject( + this.handType === "left" ? "LeftHandModelOwner" : "RightHandModelOwner" + ) + + this.cameraObject = this.worldCamera.getComponent().getSceneObject() + this.ownerSceneObject.setParent(this.cameraObject) + + this.objectTracking3DComponent = this.ownerSceneObject.createComponent( + "Component.ObjectTracking3D" + ) + + if (this.objectTracking3DComponent === undefined) { + throw new Error("Failed to create Component.ObjectTracking3D") + } + + const asset = this.handTrackingAssetProvider.get(this.config.handType) + if (!isNull(asset)) { + this.objectTracking3DComponent.trackingAsset = asset + } + + this.objectTracking3DComponent.objectIndex = 0 + this.objectTracking3DComponent.trackingMode = + ObjectTracking3D.TrackingMode.Attachment + + const logObjectTrackingEvent = (eventName: TrackingEvent) => { + this.log.d( + `Received event from ObjectTracking3D: handType: ${this.config.handType}, eventType: ${eventName}` + ) + } + this.objectTracking3DComponent.onTrackingStarted = () => { + this.objectTracking3DRecentlyFound = true + + logObjectTrackingEvent(TrackingEvent.OnTrackingStarted) + this.log.v("HandEvent : " + "Hand Found Event") + this.onHandFoundEvent.invoke() + + this.objectTracking3DCancelToken = setTimeout(() => { + this.objectTracking3DRecentlyFound = false + }, OBJECT_TRACKING_3D_TIMEOUT_MS) + } + this.objectTracking3DComponent.onTrackingLost = () => { + this.objectTracking3DRecentlyFound = false + + if (this.objectTracking3DCancelToken !== undefined) { + this.objectTracking3DCancelToken.cancelled = true + } + + this.objectTracking3DCancelToken = undefined + logObjectTrackingEvent(TrackingEvent.OnTrackingLost) + this.onHandLostEvent.invoke() + this.log.v("HandEvent : " + "Hand Lost Event") + } + + this.attachJoints(JOINT_HIERARCHY.children) + + this.setKeypointCollections() + + this.pinchDetector = new PinchDetector({ + handType: this.config.handType, + thumbTip: this.thumbTip, + indexTip: this.indexTip, + onHandLost: this.onHandLost, + isTracked: () => { + return this.isTracked() + }, + pinchDetectionSelection: PinchDetectionSelection.LensCoreML, + }) + this.onPinchDown = this.pinchDetector.onPinchDown + this.onPinchUp = this.pinchDetector.onPinchUp + this.onPinchCancel = this.pinchDetector.onPinchCancel + + const gestureModule = this.gestureModuleProvider.getModule() + + try { + if (gestureModule !== undefined) { + const gestureHandType = + this.handType === "right" + ? GestureModule.HandType.Right + : GestureModule.HandType.Left + gestureModule + .getTargetingDataEvent(gestureHandType) + .add((args: TargetingDataArgs) => { + const rayOriginInCameraParent: vec3 = args.rayOriginInWorld + const rayDirectionInCameraParent: vec3 = args.rayDirectionInWorld + const [rayOriginInWorld, rayDirectionInWorld] = this.rayToWorld( + rayOriginInCameraParent, + rayDirectionInCameraParent + ) + + this._targetingData = { + targetingDirectionInWorld: rayDirectionInWorld, + targetingLocusInWorld: rayOriginInWorld, + intendsToTarget: args.handIntendsToTarget, + } + this.log.v( + "HandEvent : " + + "Targeting Data Event" + + " rayOriginInWorld: " + + rayOriginInWorld + + " rayDirectionInWorld: " + + rayDirectionInWorld + ) + }) + } + } catch (error) { + this.log.e(`Error subscribing to targeting ray event: ${error}`) + } + + try { + if (this.handType === "right") { + this.palmTapDetector = new PalmTapDetector(GestureModule.HandType.Right) + } + } catch (error) { + this.log.w("PalmTapDetector is not supported") + } + } + + get enabled(): boolean { + return this._enabled + } + + setEnabled(isEnabled: boolean) { + if (this._enabled === isEnabled) { + return + } + + this._enabled = isEnabled + this.objectTracking3DComponent.enabled = this.enabled + this.onEnabledChangedEvent.invoke(this._enabled) + this.log.v( + "HandEvent : " + "Hand Enabled Changed Event" + " to " + this._enabled + ) + } + + isFacingCamera(): boolean { + if (!this.isTracked()) { + return false + } + + const facingCameraAngle = this.getFacingCameraAngle() + return Boolean( + facingCameraAngle !== null && facingCameraAngle < HAND_FACING_THRESHOLD + ) + } + + isInTargetingPose(): boolean { + if (!this.isTracked()) { + return false + } + + const pitchAngle = this.getPalmPitchAngle() + + return ( + !this.isFacingCamera() && + pitchAngle !== null && + pitchAngle > POINTING_PITCH_THRESHOLD + ) + } + + getPinchDirection(): quat | null { + if (!this.isTracked()) { + return null + } + + const thumbTipPosition = this.thumbTip.position + const thumbKnucklePosition = this.thumbKnuckle.position + const indexMidJointPosition = this.indexMidJoint.position + + const forward = thumbTipPosition.sub(thumbKnucklePosition).normalize() + const right = indexMidJointPosition.sub(thumbKnucklePosition).normalize() + const up = + this.handType === "right" ? right.cross(forward) : forward.cross(right) + + return quat.lookAt(forward, up) + } + + private getHandOrientation(): OrientationVectors { + /** + * 1. Create a right vector between the index and middle distals + * 2. Create a forward vector between the wrist and middle distal + * 3. Derive an up vector from the previous two vectors + */ + const handRightVector = this.indexMidJoint.position + .sub(this.middleMidJoint.position) + .normalize() + const handForwardVector = this.middleMidJoint.position + .sub(this.wrist.position) + .normalize() + const handUpVector = handRightVector.cross(handForwardVector) + + const handToCameraVector = this.worldCamera + .getWorldPosition() + .sub(this.wrist.position) + .normalize() + + return { + forward: handForwardVector, + right: handRightVector, + up: handUpVector, + cameraForward: handToCameraVector, + } + } + + getFacingCameraAngle(): number | null { + if (!this.isTracked()) { + return null + } + + /** + * Apply the camera to wrist direction against the derived up vector to get facing angle + */ + const handOrientationVectors = this.getHandOrientation() + const dotHandCamera = handOrientationVectors.up.dot( + handOrientationVectors.cameraForward + ) + + const angle = + MathUtils.RadToDeg * + Math.acos( + this.config.handType === "right" ? dotHandCamera : -dotHandCamera + ) + + return angle + } + + getPalmPitchAngle(): number | null { + if (!this.isTracked()) { + return null + } + + /** + * Compare the hand's forward direction to world up + */ + const handOrientationVectors = this.getHandOrientation() + const dotHandUp = handOrientationVectors.forward.dot(vec3.up()) + const angle = 90 - MathUtils.RadToDeg * Math.acos(dotHandUp) + + return angle + } + + getPalmCenter(): vec3 | null { + if (!this.isTracked()) { + return null + } + + return this.indexKnuckle.position + .add(this.pinkyKnuckle.position) + .add(this.middleToWrist.position) + .uniformScale(1.0 / 3.0) + } + + get wrist(): Keypoint { + return this.getKeypoint(LandmarkName.WRIST) + } + + get thumbProximal(): Keypoint { + return this.thumbToWrist + } + + get thumbToWrist(): Keypoint { + return this.getKeypoint(LandmarkName.WRIST_TO_THUMB) + } + + get thumbIntermediate(): Keypoint { + return this.thumbBaseJoint + } + + get thumbBaseJoint(): Keypoint { + return this.getKeypoint(LandmarkName.THUMB_0) + } + + /** @inheritdoc */ + get thumbDistal(): Keypoint { + return this.thumbKnuckle + } + + get thumbKnuckle(): Keypoint { + return this.getKeypoint(LandmarkName.THUMB_1) + } + + get thumbPad(): Keypoint { + return this.thumbMidJoint + } + + get thumbMidJoint(): Keypoint { + return this.getKeypoint(LandmarkName.THUMB_2) + } + + get thumbTip(): Keypoint { + return this.getKeypoint(LandmarkName.THUMB_3) + } + + get indexProximal(): Keypoint { + return this.indexToWrist + } + + get indexToWrist(): Keypoint { + return this.getKeypoint(LandmarkName.WRIST_TO_INDEX) + } + + get indexIntermediate(): Keypoint { + return this.indexKnuckle + } + + get indexKnuckle(): Keypoint { + return this.getKeypoint(LandmarkName.INDEX_0) + } + + get indexDistal(): Keypoint { + return this.indexMidJoint + } + + get indexMidJoint(): Keypoint { + return this.getKeypoint(LandmarkName.INDEX_1) + } + + get indexPad(): Keypoint { + return this.indexUpperJoint + } + + get indexUpperJoint(): Keypoint { + return this.getKeypoint(LandmarkName.INDEX_2) + } + + get indexTip(): Keypoint { + return this.getKeypoint(LandmarkName.INDEX_3) + } + + get middleProximal(): Keypoint { + return this.middleToWrist + } + + get middleToWrist(): Keypoint { + return this.getKeypoint(LandmarkName.WRIST_TO_MIDDLE) + } + + get middleIntermediate(): Keypoint { + return this.middleKnuckle + } + + get middleKnuckle(): Keypoint { + return this.getKeypoint(LandmarkName.MIDDLE_0) + } + + get middleDistal(): Keypoint { + return this.middleMidJoint + } + + get middleMidJoint(): Keypoint { + return this.getKeypoint(LandmarkName.MIDDLE_1) + } + + get middlePad(): Keypoint { + return this.middleUpperJoint + } + + get middleUpperJoint(): Keypoint { + return this.getKeypoint(LandmarkName.MIDDLE_2) + } + + get middleTip(): Keypoint { + return this.getKeypoint(LandmarkName.MIDDLE_3) + } + + get ringProximal(): Keypoint { + return this.ringToWrist + } + + get ringToWrist(): Keypoint { + return this.getKeypoint(LandmarkName.WRIST_TO_RING) + } + + get ringIntermediate(): Keypoint { + return this.ringKnuckle + } + + get ringKnuckle(): Keypoint { + return this.getKeypoint(LandmarkName.RING_0) + } + + get ringDistal(): Keypoint { + return this.ringMidJoint + } + + get ringMidJoint(): Keypoint { + return this.getKeypoint(LandmarkName.RING_1) + } + + get ringPad(): Keypoint { + return this.ringUpperJoint + } + + get ringUpperJoint(): Keypoint { + return this.getKeypoint(LandmarkName.RING_2) + } + + get ringTip(): Keypoint { + return this.getKeypoint(LandmarkName.RING_3) + } + + get pinkyProximal(): Keypoint { + return this.pinkyToWrist + } + + get pinkyToWrist(): Keypoint { + return this.getKeypoint(LandmarkName.WRIST_TO_PINKY) + } + + get pinkyIntermediate(): Keypoint { + return this.pinkyKnuckle + } + + get pinkyKnuckle(): Keypoint { + return this.getKeypoint(LandmarkName.PINKY_0) + } + + get pinkyDistal(): Keypoint { + return this.pinkyMidJoint + } + + get pinkyMidJoint(): Keypoint { + return this.getKeypoint(LandmarkName.PINKY_1) + } + + get pinkyPad(): Keypoint { + return this.pinkyUpperJoint + } + + get pinkyUpperJoint(): Keypoint { + return this.getKeypoint(LandmarkName.PINKY_2) + } + + get pinkyTip(): Keypoint { + return this.getKeypoint(LandmarkName.PINKY_3) + } + + get thumbFinger(): Keypoint[] { + return this.thumbFingerPoints + } + + get indexFinger(): Keypoint[] { + return this.indexFingerPoints + } + + get middleFinger(): Keypoint[] { + return this.middleFingerPoints + } + + get ringFinger(): Keypoint[] { + return this.ringFingerPoints + } + + get pinkyFinger(): Keypoint[] { + return this.pinkyFingerPoints + } + + get points(): Keypoint[] { + return this.allPoints + } + + get handType(): HandType { + return this.config.handType + } + + get isDominantHand(): boolean { + return this._isDominantHand + } + + get objectTracking3D(): ObjectTracking3D { + return this.objectTracking3DComponent + } + + get targetingData(): TargetingData | null { + return this._targetingData + } + + isTracked(): boolean { + return this.objectTracking3DComponent.isTracking() + } + + isRecentlyFound(): boolean { + return this.objectTracking3DRecentlyFound + } + + getSceneObject(): SceneObject { + return this.ownerSceneObject + } + + setIsDominantHand(isDominantHand: boolean): void { + this._isDominantHand = isDominantHand + } + + isPinching(): boolean { + return this.pinchDetector.isPinching() + } + + isTapping(): PalmTapDetectionEvent { + if (this.palmTapDetector === undefined) { + return { + state: "unsupported", + } + } else { + return { + state: "available", + data: {isTapping: this.palmTapDetector.isTapping}, + } + } + } + + getPinchStrength(): number | null { + if (!this.isTracked()) { + return null + } + + return this.pinchDetector.getPinchStrength() + } + + /** + * Sets the tracking mode for the hand. + * @param trackingMode - The new mode. + */ + setTrackingMode(trackingMode: ObjectTracking3D.TrackingMode): void { + this.objectTracking3DComponent.trackingMode = trackingMode + } + + public getHandVisuals(): HandVisuals | null { + if (this.handVisuals && !this.handVisuals.initialized) { + this.handVisuals.initialize() + } + + return this.handVisuals ?? null + } + + public attachHandVisuals(handVisuals: HandVisuals): void { + this.handVisuals = handVisuals + } + + public initHandVisuals(): void { + if (!this.handVisuals) { + throw new Error("initHandVisuals called before attachHandVisuals") + } + + this.objectTracking3DComponent.trackingMode = + ObjectTracking3D.TrackingMode.ProportionsAndPose + + validate(this.handVisuals.root) + this.handVisuals.root.setParent(this.ownerSceneObject) + + // Wrist + this.wrist.addAttachmentPoint(this.handVisuals.wrist) + + // Thumb + this.thumbToWrist.addAttachmentPoint(this.handVisuals.thumbToWrist) + this.thumbBaseJoint.addAttachmentPoint(this.handVisuals.thumbBaseJoint) + this.thumbKnuckle.addAttachmentPoint(this.handVisuals.thumbKnuckle) + this.thumbMidJoint.addAttachmentPoint(this.handVisuals.thumbMidJoint) + this.thumbTip.addAttachmentPoint(this.handVisuals.thumbTip) + + // Index + this.indexToWrist.addAttachmentPoint(this.handVisuals.indexToWrist) + this.indexKnuckle.addAttachmentPoint(this.handVisuals.indexKnuckle) + this.indexMidJoint.addAttachmentPoint(this.handVisuals.indexMidJoint) + this.indexUpperJoint.addAttachmentPoint(this.handVisuals.indexUpperJoint) + this.indexTip.addAttachmentPoint(this.handVisuals.indexTip) + + // Middle + this.middleToWrist.addAttachmentPoint(this.handVisuals.middleToWrist) + this.middleKnuckle.addAttachmentPoint(this.handVisuals.middleKnuckle) + this.middleMidJoint.addAttachmentPoint(this.handVisuals.middleMidJoint) + this.middleUpperJoint.addAttachmentPoint(this.handVisuals.middleUpperJoint) + this.middleTip.addAttachmentPoint(this.handVisuals.middleTip) + + // Ring + this.ringToWrist.addAttachmentPoint(this.handVisuals.ringToWrist) + this.ringKnuckle.addAttachmentPoint(this.handVisuals.ringKnuckle) + this.ringMidJoint.addAttachmentPoint(this.handVisuals.ringMidJoint) + this.ringUpperJoint.addAttachmentPoint(this.handVisuals.ringUpperJoint) + this.ringTip.addAttachmentPoint(this.handVisuals.ringTip) + + // Pinky + this.pinkyToWrist.addAttachmentPoint(this.handVisuals.pinkyToWrist) + this.pinkyKnuckle.addAttachmentPoint(this.handVisuals.pinkyKnuckle) + this.pinkyMidJoint.addAttachmentPoint(this.handVisuals.pinkyMidJoint) + this.pinkyUpperJoint.addAttachmentPoint(this.handVisuals.pinkyUpperJoint) + this.pinkyTip.addAttachmentPoint(this.handVisuals.pinkyTip) + } + + detachHandVisuals(handVisuals: HandVisuals): void { + if (this.handVisuals !== handVisuals) { + return + } + + this.objectTracking3DComponent.trackingMode = + ObjectTracking3D.TrackingMode.Attachment + this.keypoints.forEach((keypoint) => keypoint.clearAttachmentPoint()) + this.handVisuals = undefined + } + + /** + * Destroys the hand and associated keypoints + */ + destroy(): void { + if (this.isDestroyed) { + return + } + + this.ownerSceneObject.destroy() + this.isDestroyed = true + } + + private attachJoints(children: JointNode[]) { + for (const joint of children) { + this.keypoints.set( + joint.name, + new Keypoint(joint.name, this.objectTracking3DComponent) + ) + this.attachJoints(joint.children) + } + } + + private getKeypoint(landmarkName: LandmarkName): Keypoint { + const keypoint = this.keypoints.get(landmarkName as string) + if (!keypoint) { + throw new Error(`Keypoint ${landmarkName} is not supported.`) + } + + return keypoint + } + + private setKeypointCollections() { + this.thumbFingerPoints.push( + this.thumbToWrist, + this.thumbBaseJoint, + this.thumbKnuckle, + this.thumbMidJoint, + this.thumbTip + ) + this.indexFingerPoints.push( + this.indexToWrist, + this.indexKnuckle, + this.indexMidJoint, + this.indexUpperJoint, + this.indexTip + ) + this.middleFingerPoints.push( + this.middleToWrist, + this.middleKnuckle, + this.middleMidJoint, + this.middleUpperJoint, + this.middleTip + ) + this.ringFingerPoints.push( + this.ringToWrist, + this.ringKnuckle, + this.ringMidJoint, + this.ringUpperJoint, + this.ringTip + ) + this.pinkyFingerPoints.push( + this.pinkyToWrist, + this.pinkyKnuckle, + this.pinkyMidJoint, + this.pinkyUpperJoint, + this.pinkyTip + ) + this.allPoints.push( + this.wrist, + ...this.thumbFingerPoints, + ...this.indexFingerPoints, + ...this.middleFingerPoints, + ...this.ringFingerPoints, + ...this.pinkyFingerPoints + ) + } + + private rayToWorld( + rayOriginInCameraRootSpace: vec3, + rayDirectionInCameraRootSpace: vec3 + ): [rayOriginWorld: vec3, rayDirectionWorld: vec3] { + const cameraParent = this.cameraObject.getParent() + + if (!cameraParent) { + return [rayOriginInCameraRootSpace, rayDirectionInCameraRootSpace] + } + const cameraRoot = cameraParent.getTransform().getWorldTransform() + const rayEndPointCameraRootSpace = rayOriginInCameraRootSpace.add( + rayDirectionInCameraRootSpace + ) + const rayOriginInWorld = cameraRoot.multiplyPoint( + rayOriginInCameraRootSpace + ) + const rayEndInWorld = cameraRoot.multiplyPoint(rayEndPointCameraRootSpace) + const rayDirectionInWorld = rayEndInWorld.sub(rayOriginInWorld) + return [rayOriginInWorld, rayDirectionInWorld] + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/TrackedHand.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/TrackedHand.ts.meta new file mode 100644 index 00000000..69207e54 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/HandInputData/TrackedHand.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! b8860575-0e52-456a-92a3-9f75ce15c237 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! b8860575-0e52-456a-92a3-9f75ce15c237 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 936912d0-441d-4880-a7b5-47c184ae3a96 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/InteractionConfigurationProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/InteractionConfigurationProvider.ts new file mode 100644 index 00000000..39d2f768 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/InteractionConfigurationProvider.ts @@ -0,0 +1,86 @@ +import {Singleton} from "../../Decorators/Singleton" + +export type CustomComponentName = + | "Billboard" + | "HandInteractor" + | "HandVisual" + | "Headlock" + | "Interactable" + | "InteractableManipulation" + | "PinchButton" + | "ScrollView" + | "ScrollBar" + | "Slider" + | "ToggleButton" + | "MouseInteractor" + | "ContainerFrame" + +/** + * This singleton class provides methods to require and retrieve types of custom components based on their names. It uses a switch-case structure to map component names to their respective module paths. + * + */ +@Singleton +export class InteractionConfigurationProvider { + public static getInstance: () => InteractionConfigurationProvider + + requireType(componentName: CustomComponentName): keyof ComponentNameMap { + switch (componentName) { + case "Billboard": + return requireType( + "../../Components/Interaction/Billboard/Billboard", + ) as keyof ComponentNameMap + case "ContainerFrame": + return requireType( + "../../Components/UI/ContainerFrame/ContainerFrame", + ) as keyof ComponentNameMap + case "HandInteractor": + return requireType( + "../../Core/HandInteractor/HandInteractor", + ) as keyof ComponentNameMap + case "HandVisual": + return requireType( + "../../Components/Interaction/HandVisual/HandVisual", + ) as keyof ComponentNameMap + case "Headlock": + return requireType( + "../../Components/Interaction/Headlock/Headlock", + ) as keyof ComponentNameMap + case "Interactable": + return requireType( + "../../Components/Interaction/Interactable/Interactable", + ) as keyof ComponentNameMap + case "InteractableManipulation": + return requireType( + "../../Components/Interaction/InteractableManipulation/InteractableManipulation", + ) as keyof ComponentNameMap + case "PinchButton": + return requireType( + "../../Components/UI/PinchButton/PinchButton", + ) as keyof ComponentNameMap + case "ScrollView": + return requireType( + "../../Components/UI/ScrollView/ScrollView", + ) as keyof ComponentNameMap + case "ScrollBar": + return requireType( + "../../Components/UI/ScrollBar/ScrollBar", + ) as keyof ComponentNameMap + case "Slider": + return requireType( + "../../Components/UI/Slider/Slider", + ) as keyof ComponentNameMap + case "ToggleButton": + return requireType( + "../../Components/UI/ToggleButton/ToggleButton", + ) as keyof ComponentNameMap + case "MouseInteractor": + return requireType( + "../../Core/MouseInteractor/MouseInteractor", + ) as keyof ComponentNameMap + default: + throw new Error( + `Could not find typename for component ${componentName}`, + ) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/InteractionConfigurationProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/InteractionConfigurationProvider.ts.meta new file mode 100644 index 00000000..9686c066 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/InteractionConfigurationProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 4d66dc3c-ad43-4734-875e-219b32561f3f + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 4d66dc3c-ad43-4734-875e-219b32561f3f + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! b19bd7d0-6a6f-4675-bc78-adfdaa97588e + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/LogLevelProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/LogLevelProvider.ts new file mode 100644 index 00000000..2d2b6409 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/LogLevelProvider.ts @@ -0,0 +1,37 @@ +import {PublicApi} from "../../Utils/Event" +import {LogLevel} from "../../Utils/LogLevel" +import ReplayEvent from "../../Utils/ReplayEvent" + +/** + * Provides the level of logging that we want to allow. + * Provides properties to get and set the log level, and an event that is invoked when the log level changes. + */ +export default abstract class LogLevelProvider { + private _logLevel: LogLevel = LogLevel.Verbose + + private onLogLevelChangedEvent = new ReplayEvent(1) + + onLogLevelChanged: PublicApi = + this.onLogLevelChangedEvent.publicApi() + + /** + * Get the level of logging that we want to allow from this provider. + * @returns 3 for Error, 4 for Warning, 6 for Info, 7 for Debug, 8 for Verbose. + */ + get logLevel(): LogLevel { + return this._logLevel + } + + /** + * Set the level of logging that we want to allow from this provider. + * @param logLevel - 3 for Error, 4 for Warning, 6 for Info, 7 for Debug, 8 for Verbose. + */ + set logLevel(logLevel: LogLevel) { + if (this._logLevel === logLevel) { + return + } + + this._logLevel = logLevel + this.onLogLevelChangedEvent.invoke(this.logLevel) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/LogLevelProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/LogLevelProvider.ts.meta new file mode 100644 index 00000000..5f59e073 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/LogLevelProvider.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 2e183eed-5375-4383-879f-dd02855c30ec + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 2e183eed-5375-4383-879f-dd02855c30ec + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 88a9e168-6517-49f5-a31e-2d99322aac4f + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/SIKLogLevelProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/SIKLogLevelProvider.ts new file mode 100644 index 00000000..08a5a5e3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/SIKLogLevelProvider.ts @@ -0,0 +1,14 @@ +import {Singleton} from "../../Decorators/Singleton" +import LogLevelProvider from "./LogLevelProvider" + +/** + * Provides the level of logging that we want to allow from SIK types. + */ +@Singleton +export default class SIKLogLevelProvider extends LogLevelProvider { + public static getInstance: () => SIKLogLevelProvider + + constructor() { + super() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/SIKLogLevelProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/SIKLogLevelProvider.ts.meta new file mode 100644 index 00000000..c16af214 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/InteractionConfigurationProvider/SIKLogLevelProvider.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 5214927a-b534-4525-b8bf-4ac1cf9e2ac0 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 5214927a-b534-4525-b8bf-4ac1cf9e2ac0 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 09e8fc9e-f9f5-44b2-ab39-d87811790535 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/MobileInputData/MobileInputData.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/MobileInputData/MobileInputData.ts new file mode 100644 index 00000000..56919cb1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/MobileInputData/MobileInputData.ts @@ -0,0 +1,191 @@ +import { + OneEuroFilterConfig, + OneEuroFilterQuat, + OneEuroFilterVec3, +} from "../../Utils/OneEuroFilter" + +import {AnimationManager} from "../../Utils/animate" +import Event from "../../Utils/Event" +import MotionControllerProvider from "../HandInputData/GestureProvider/MotionControllerProvider" +import NativeLogger from "../../Utils/NativeLogger" +import {Singleton} from "../../Decorators/Singleton" + +const TAG = "MobileInputData" + +const TRANSLATE_FILTER_CONFIG: OneEuroFilterConfig = { + frequency: 60, + minCutoff: 3.5, + beta: 0.5, + dcutoff: 1, +} +const ROTATION_FILTER_CONFIG: OneEuroFilterConfig = { + frequency: 60, + minCutoff: 1, + beta: 2, + dcutoff: 1, +} + +/** + * This singleton class manages mobile input data, including motion controller state, position, and rotation. It uses filters to smooth the input data and provides events for tracking quality changes. + * + */ +@Singleton +export class MobileInputData { + public static getInstance: () => MobileInputData + + private log = new NativeLogger(TAG) + + private _motionControllerModule: MotionControllerModule | undefined + private _motionController: MotionController | undefined + + private animationManager: AnimationManager = AnimationManager.getInstance() + private translateFilter = new OneEuroFilterVec3(TRANSLATE_FILTER_CONFIG) + private rotationFilter = new OneEuroFilterQuat(ROTATION_FILTER_CONFIG) + private _position = vec3.zero() + private _rotation = quat.quatIdentity() + + private _trackingQuality: MotionController.TrackingQuality = + MotionController.TrackingQuality?.Unknown + private onTrackingQualityChangeEvent = + new Event() + + /** + * Public API to subscribe to controller state change events. + * + * @returns The public api + */ + readonly onControllerStateChange: event1 | undefined + + /** + * Public API to subscribe to tracking quality change events. + * + * @returns The public api + */ + readonly onTrackingQualityChange = + this.onTrackingQualityChangeEvent.publicApi() + + /** Enables filtering of position and rotation */ + filterPositionAndRotation: boolean = true + + constructor() { + this.initializeMotionController() + if (this._motionController === undefined) { + return + } + + this.onControllerStateChange = + this._motionController?.onControllerStateChange + + this.onControllerStateChange?.add((state) => { + this.log.d("Controller state changed to : " + state) + }) + + this.update(this.filterPositionAndRotation) + } + + private initializeMotionController(): void { + this._motionControllerModule = + MotionControllerProvider.getInstance().getModule() + + if (this._motionControllerModule === undefined) { + return + } + + let options = MotionController.Options.create() + options.motionType = MotionController.MotionType.SixDoF + + this._motionController = this._motionControllerModule.getController( + options, + ) as MotionController + + this._trackingQuality = this._motionController.getTrackingQuality() + } + + private update(useFilter: boolean = true): void { + if ( + this._motionControllerModule === undefined || + this._motionController === undefined + ) { + return + } + + if (this._motionController?.isControllerAvailable()) { + this._position = useFilter + ? this.translateFilter.filter( + this._motionController.getWorldPosition(), + getTime(), + ) + : this._motionController.getWorldPosition() + + this._rotation = useFilter + ? this.rotationFilter.filter( + this._motionController.getWorldRotation(), + getTime(), + ) + : this._motionController.getWorldRotation() + } + + if (this._trackingQuality !== this._motionController.getTrackingQuality()) { + this.onTrackingQualityChangeEvent.invoke( + this._motionController.getTrackingQuality(), + ) + this.log.v( + "Motion Controller Tracking Quality has changed to : " + + this._motionController.getTrackingQuality(), + ) + this.translateFilter.reset() + this.rotationFilter.reset() + } + + this._trackingQuality = this._motionController.getTrackingQuality() + + this.animationManager.requestAnimationFrame(() => + this.update(this.filterPositionAndRotation), + ) + } + + /** + * @returns the current Motion Controller module instance. + */ + get motionController(): MotionController | undefined { + return this._motionController + } + + /** + * @returns the current position. + */ + get position(): vec3 { + return this._position + } + + /** + * @returns the current rotation. + */ + get rotation(): quat { + return this._rotation + } + + /** + * @returns the current tracking quality or undefined is the module is not + * available. + */ + get trackingQuality(): MotionController.TrackingQuality | undefined { + if (this._motionController === undefined) { + return undefined + } + + return this._motionController.getTrackingQuality() + } + + /** + * @returns if the mobile input data provider is available, + * which means that it is receiving data. + */ + isAvailable(): boolean { + if (this._motionController === undefined) { + return false + } + + return this._motionController.isControllerAvailable() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/MobileInputData/MobileInputData.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/MobileInputData/MobileInputData.ts.meta new file mode 100644 index 00000000..eebe31c0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/MobileInputData/MobileInputData.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 50906809-74b4-408e-8104-e1352534f78c + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 50906809-74b4-408e-8104-e1352534f78c + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! c9882c18-f1be-48e9-b6ef-f69f7b23b69c + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetProvider.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetProvider.ts new file mode 100644 index 00000000..b1ba354b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetProvider.ts @@ -0,0 +1,190 @@ +import {Interactable} from "../../Components/Interaction/Interactable/Interactable" +import {InteractionManager} from "../../Core/InteractionManager/InteractionManager" +import {TargetingMode} from "../../Core/Interactor/Interactor" +import {isDescendantOf} from "../../Utils/SceneObjectUtils" +import CameraProvider from "../CameraProvider/CameraProvider" +import WorldCameraFinderProvider from "../CameraProvider/WorldCameraFinderProvider" + +export type InteractableHitInfo = { + /** + * The {@link Interactable} that was hit + */ + interactable: Interactable + /** + * The {@link vec3} representing the hit position relative to the Interactable's local space. + */ + localHitPosition: vec3 + /** + * The detected hit {@link RayCastHit} from the collision + */ + hit: RayCastHit + /** + * The {@link TargetingMode} that resulted in this collision + */ + targetMode: TargetingMode +} + +/** + * Base class for all target providers + */ +export default abstract class TargetProvider { + abstract readonly targetingMode: TargetingMode + + protected camera = WorldCameraFinderProvider.getInstance() + + protected interactionManager = InteractionManager.getInstance() + + protected _currentInteractableHitInfo: InteractableHitInfo | null = null + + /** + * @returns origin position in world space + */ + abstract get startPoint(): vec3 + + /** + * @returns end position in world space + */ + abstract get endPoint(): vec3 + + /** + * @returns the hit information {@link InteractableHitInfo} for the current interactable or null if there was no hit + */ + get currentInteractableHitInfo(): InteractableHitInfo | null { + return this._currentInteractableHitInfo + } + + /** + * Set the _currentInteractableHitInfo to null, used when an Interactable is deleted from Lens Studio, to keep state in sync + */ + clearCurrentInteractableHitInfo(): void { + this._currentInteractableHitInfo = null + } + + /** + * @returns whether the provider has found a target or not + */ + hasTarget(): boolean { + return this._currentInteractableHitInfo !== null + } + + /** + * Recomputes the target + */ + abstract update(): void + + /** Destroys the provider */ + abstract destroy(): void + + /** + * @param hits - list of {@link RayCastHit} + * @param targetingMode - targeting mode used to filter hits + * @param getInteractableByCollider - function that is used to get the interactable associated to the collider + * (to enable the method to be static) + * @param offset - offset value that defines if the raycast was offset from the start point + * @param camera - camera used to verify FoV + * @param allowOutOfFovInteraction - whether interactions that are out of the camera's field of view are allowed + * @returns the hit corresponding to the target from the list of hits + */ + static getInteractableHitFromRayCast( + hits: RayCastHit[], + targetingMode: TargetingMode, + getInteractableByCollider: ( + collider: ColliderComponent + ) => Interactable | null, + offset = 0, + camera: CameraProvider | null = null, + allowOutOfFovInteraction = true + ): InteractableHitInfo | null { + const hitInfos: InteractableHitInfo[] = [] + for (const hit of hits) { + if ( + !allowOutOfFovInteraction && + camera !== null && + !camera.inFoV(hit.position) + ) { + continue + } + + const interactable = getInteractableByCollider(hit.collider) + + if ( + interactable !== null && + (interactable.targetingMode & targetingMode) !== 0 + ) { + hit.skipRemaining = false + + hitInfos.push({ + interactable: interactable, + localHitPosition: interactable.sceneObject + .getTransform() + .getInvertedWorldTransform() + .multiplyPoint(hit.position), + hit: { + collider: hit.collider, + distance: hit.distance + offset, + normal: hit.normal, + position: hit.position, + skipRemaining: false, + t: 0, + triangle: hit.triangle, + getTypeName: hit.getTypeName, + isOfType: hit.isOfType, + isSame: hit.isSame, + }, + targetMode: targetingMode, + }) + } + } + + return TargetProvider.getNearestDeeplyNestedInteractable(hitInfos) + } + + /** + * The nearest deeply nested interactable, is the latest descendant of a list of + * interactables, when they are ordered by distance. + * @param hitInfos - list of hits + * @returns - the nearest deeply nested interactable + */ + static getNearestDeeplyNestedInteractable( + hitInfos: InteractableHitInfo[] + ): InteractableHitInfo | null { + hitInfos.sort((hitA, hitB) => { + return hitA.hit.distance - hitB.hit.distance + }) + + let targetHitInfo: InteractableHitInfo | null = null + + for (const currentHitInfo of hitInfos) { + if ( + targetHitInfo === null || + isDescendantOf( + currentHitInfo.interactable.sceneObject, + targetHitInfo.interactable.sceneObject + ) + ) { + targetHitInfo = currentHitInfo + } else { + break + } + } + + return targetHitInfo + } + + protected getInteractableHitFromRayCast( + hits: RayCastHit[], + offset = 0, + allowOutOfFovInteraction = true + ): InteractableHitInfo | null { + return TargetProvider.getInteractableHitFromRayCast( + hits, + this.targetingMode, + this.interactionManager.getInteractableByCollider.bind( + this.interactionManager + ), + offset, + this.camera, + allowOutOfFovInteraction + ) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetProvider.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetProvider.ts.meta new file mode 100644 index 00000000..df1cbf4b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetProvider.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 69875b49-bdc0-4584-a2f2-6ac42e5f4982 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 69875b49-bdc0-4584-a2f2-6ac42e5f4982 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 37f3f7da-9c16-455d-9725-c4e7fa0502df + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetingData.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetingData.ts new file mode 100644 index 00000000..57ba1379 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetingData.ts @@ -0,0 +1,10 @@ +/** + * TargetingData structure, received from LensCore's Gesture Module API + * Contains the normalized direction and the locus (origin) point of the ray, + * both interpreted in world coordinate system + */ +export type TargetingData = { + targetingDirectionInWorld: vec3 + targetingLocusInWorld: vec3 + intendsToTarget: boolean +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetingData.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetingData.ts.meta new file mode 100644 index 00000000..61d5f3c7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Providers/TargetProvider/TargetingData.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 45740a92-912d-440e-86da-0e324c0b9389 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 45740a92-912d-440e-86da-0e324c0b9389 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 6eb495a4-efd3-4db5-989c-847572e44962 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/SIK.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/SIK.ts new file mode 100644 index 00000000..ccc92a24 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/SIK.ts @@ -0,0 +1,39 @@ +import {InteractionManager as InteractionManagerProvider} from "./Core/InteractionManager/InteractionManager" +import {CursorControllerProvider} from "./Providers/CursorControllerProvider/CursorControllerProvider" +import {HandInputData as HandInputDataProvider} from "./Providers/HandInputData/HandInputData" +import {InteractionConfigurationProvider} from "./Providers/InteractionConfigurationProvider/InteractionConfigurationProvider" +import SIKLogLevelProvider from "./Providers/InteractionConfigurationProvider/SIKLogLevelProvider" +import {MobileInputData as MobileInputDataProvider} from "./Providers/MobileInputData/MobileInputData" + +export interface SIKAPI { + SIKLogLevelProvider: SIKLogLevelProvider + InteractionConfiguration: InteractionConfigurationProvider + HandInputData: HandInputDataProvider + MobileInputData: MobileInputDataProvider + InteractionManager: InteractionManagerProvider + CursorController: CursorControllerProvider +} + +export const SIK: SIKAPI = new Proxy( + {}, + { + get: (target, prop: keyof SIKAPI) => { + switch (prop) { + case "SIKLogLevelProvider": + return SIKLogLevelProvider.getInstance() + case "InteractionConfiguration": + return InteractionConfigurationProvider.getInstance() + case "HandInputData": + return HandInputDataProvider.getInstance() + case "MobileInputData": + return MobileInputDataProvider.getInstance() + case "InteractionManager": + return InteractionManagerProvider.getInstance() + case "CursorController": + return CursorControllerProvider.getInstance() + default: + throw new Error(`Property ${String(prop)} does not exist on SIK API`) + } + }, + } +) as SIKAPI diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/SIK.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/SIK.ts.meta new file mode 100644 index 00000000..b06b1ff8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/SIK.ts.meta @@ -0,0 +1,40 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 1fc788e8-d525-4812-8c51-49592c26855c + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 1fc788e8-d525-4812-8c51-49592c26855c + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! f6e0dfb2-21ba-4e43-a66c-cd17f346e486 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/BistableThreshold.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/BistableThreshold.ts new file mode 100644 index 00000000..8164826a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/BistableThreshold.ts @@ -0,0 +1,119 @@ +export type BistableThresholdConfig = { + edgeActivate: number + edgeDeactivate: number +} + +export type NullableBoolean = null | boolean + +/** + * BistableThreshold tracks the state of a value over time, + * and determines which side of the threshold the value is + * in. It is superior to a typical single-value threshold + * in being resistant to noise and jitter because it + * "resists" change. + * + * The "edge" of the BistableThreshold has an "activate" side + * and a "deactivate" side, and adjusting the difference + * between them will make the threshold more or less resistant + * to change. + */ +export default class BistableThreshold { + private state: NullableBoolean = null + private direction = + this.config.edgeActivate > this.config.edgeDeactivate ? 1 : -1 + + constructor(private config: BistableThresholdConfig) {} + + /** + * update the Threshold and return a boolean if the state + * changed, or null if it did not + * + * @param newVal + */ + update(newVal: number): NullableBoolean { + switch (this.state) { + case null: + if ( + this.direction * newVal > + this.direction * this.config.edgeActivate + ) { + this.state = true + return true + } else if ( + this.direction * newVal < + this.direction * this.config.edgeDeactivate + ) { + this.state = false + return false + } + return null + case true: + if ( + this.direction * newVal < + this.direction * this.config.edgeDeactivate + ) { + this.state = false + return false + } + return null + case false: + if ( + this.direction * newVal > + this.direction * this.config.edgeActivate + ) { + this.state = true + return true + } + return null + } + } + + /** + * update a system of thresholds together, maininting the bistability + * of each as well as the bistability of the system as a whole + * + * @param {...any} system + */ + static updateSystem( + ...system: [threshold: BistableThreshold, value: number][] + ): NullableBoolean { + // check the first state, if it's null, the system hasn't updated + const [firstThreshold, firstValue] = system[0] + const firstUpdated = firstThreshold.update(firstValue) + const firstState = firstThreshold.getState() + + /* + * update each state, tracking if any of them updated, and if all + * of them have the same state + */ + let anyUpdated = firstUpdated !== null + let allStatesEqual = true + for (let i = 1; i < system.length; i++) { + // update the threshold + const [threshold, value] = system[i] + const update = threshold.update(value) + const state = threshold.getState() + allStatesEqual &&= state === firstState + anyUpdated ||= update !== null + } + + // if any have updated, then the system has updated as a whole + return anyUpdated && allStatesEqual ? firstState : null + } + + /** + * get the current state of the Threshold. This is less useful than the + * update method since it only tells us the current state, not if it + * has changed recently + */ + getState(): NullableBoolean { + return this.state + } + + /** + * Clear the state of the threshold, returning to null for the state + */ + clearState(): void { + this.state = null + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/BistableThreshold.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/BistableThreshold.ts.meta new file mode 100644 index 00000000..b386e4a3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/BistableThreshold.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! e788acce-8c1a-4079-95ec-31518d2da559 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! e788acce-8c1a-4079-95ec-31518d2da559 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 3abba5d8-db02-4542-968c-c743e42d06ac + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Event.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Event.ts new file mode 100644 index 00000000..088fcd79 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Event.ts @@ -0,0 +1,83 @@ +/** + * Event class with typed event arguments + */ + +export type callback = (args: Arg) => void +export type unsubscribe = () => void + +/** + * Represents the public api of an event. + */ +export interface PublicApi { + (cb: callback): unsubscribe + add(cb: callback): unsubscribe + remove(cb: callback): void +} + +export default class Event { + private subscribers: callback[] + + constructor(...callbacks: (callback | undefined)[]) { + this.subscribers = callbacks.filter( + (cb) => cb !== undefined + ) as callback[] + } + + /** + * Register an event handler + * + * @param handler to register + */ + public add(handler: callback) { + this.subscribers.push(handler) + } + + /** + * Unregister an event handler + * + * @param handler to remove + */ + public remove(handler: callback) { + this.subscribers = this.subscribers.filter((h) => { + return h !== handler + }) + } + + /** + * Invoke the event and notify handlers + * + * @param arg Event args to pass to the handlers + */ + public invoke(arg: Arg) { + this.subscribers.forEach((handler) => { + handler(arg) + }) + } + + /** + * Construct an object to serve as the publicApi of this + * event. This makes it so an event can be used as "pre-bound" + * function, and also prevents "invoke" from being called externally + */ + public publicApi(): PublicApi { + const event = this + /** + * @param callback + */ + function add(callback: callback) { + event.add(callback) + return () => event.remove(callback) + } + + /** + * @param callback + */ + function remove(callback: callback) { + event.remove(callback) + } + + add.remove = remove + add.add = add // can be called as a method or directly + return add + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Event.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Event.ts.meta new file mode 100644 index 00000000..26240e45 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Event.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! ed07102b-7d09-440c-bae1-f02e0ce7beba + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! ed07102b-7d09-440c-bae1-f02e0ce7beba + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 9192815c-8877-492e-8d26-9a258b1a1046 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Filter.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Filter.ts new file mode 100644 index 00000000..a84a932c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Filter.ts @@ -0,0 +1,20 @@ +/** + * Represents a filter of some kind. + */ +export default interface Filter { + /** + * Applies filter to a sample + * @param sample - value to be filtered + * @param timestamp - timestamp when the sample was measured + */ + filter(sample: T, timestamp: number): T +} + +/** + * A filter that does nothing. + */ +export class NoOpFilter implements Filter { + filter(sample: T, timestamp: number): T { + return sample + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Filter.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Filter.ts.meta new file mode 100644 index 00000000..0a88dd43 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Filter.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 45fde06f-fe79-44e6-9290-c7cf6b8046b5 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 45fde06f-fe79-44e6-9290-c7cf6b8046b5 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 6ce14bfd-9db3-4d0e-89ac-47da8250a1f8 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InputChecker.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InputChecker.ts new file mode 100644 index 00000000..b4b972e0 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InputChecker.ts @@ -0,0 +1,66 @@ +import {lazyProperty} from "./lazyProperty" +import NativeLogger from "./NativeLogger" + +const TAG = "InputChecker" + +/** + * Describes the input checker, that check if inputs are valid or not + */ +export class InputChecker { + private log = new NativeLogger(TAG) + + constructor(private sceneObjectName: string) {} + + /** + * Throws an error if an input is undefined, otherwise, returns the input + * without the undefined type + * @param input the input value to check, can be either typed or undefined + * @param inputName the input name for logging + * @returns input with typing + */ + checkUndefined(input: Type | undefined, inputName: string): Type { + if (input === undefined) { + throw new Error( + `${inputName} is not specified in SceneObject: ${this.sceneObjectName}` + ) + } + + return input + } + + /** + * This can be used to delay the fetching of a script property until needed, which is useful for showIf + * properties that may be unused. + * @param getPropertyFunction The function to get the value of the property, when needed. + * @param propertyName The name of the property, for logging. + * @returns a function that will return the value of getPropertyFunction, which will only be called once + */ + lazyScriptProperty( + getPropertyFunction: () => T, + propertyName: string + ): () => T { + return lazyProperty(() => { + return this.checkUndefined(getPropertyFunction(), propertyName) + }) + } + + /** + * Log a warning if an input is undefined, otherwise, returns the input + * without the undefined type + * @param input the input value to check, can be either typed or undefined + * @param inputName the input name for logging + * @returns input with typing + */ + warnIfUndefined( + input: Type | undefined, + inputName: string + ): Type | undefined { + if (input === undefined) { + this.log.w( + `${inputName} is not specified in SceneObject: ${this.sceneObjectName}` + ) + } + + return input + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InputChecker.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InputChecker.ts.meta new file mode 100644 index 00000000..7687f401 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InputChecker.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! a3ba2ebd-b54d-4179-8059-9e0485253bb0 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! a3ba2ebd-b54d-4179-8059-9e0485253bb0 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! c617d4cd-fa2a-4005-b472-cf4ff2b58ecc + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InspectorCallbacks.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InspectorCallbacks.ts new file mode 100644 index 00000000..d954a723 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InspectorCallbacks.ts @@ -0,0 +1,21 @@ +/** + * Creates callbacks to be passed to UI Kit events from a script in the Inspector panel. + * @param scriptComponent - the script to be used. + * @param functionNames - the names of the functions within the script to be invoked during this callback. + * @returns a callback that will invoke the specified functions in the script provided. + */ +export function createCallback( + scriptComponent: ScriptComponent, + functionNames: string[] +): (args: T) => void { + if (scriptComponent === undefined) { + return () => {} + } + return (args) => { + functionNames.forEach((name) => { + if ((scriptComponent as any)[name]) { + (scriptComponent as any)[name](args) + } + }) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InspectorCallbacks.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InspectorCallbacks.ts.meta new file mode 100644 index 00000000..b0023fb5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/InspectorCallbacks.ts.meta @@ -0,0 +1,40 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 6e8ad8c4-be11-465f-9799-a836a048ec19 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 6e8ad8c4-be11-465f-9799-a836a048ec19 + PackageType: NotAPackage + ImporterSettings: ! + {} + AssetDataMap: + TypeScriptAsset: ! 6ba9eba2-ce82-46c7-bec5-ae67edcd662d + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + InputLines: + [] + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LensConfig.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LensConfig.ts new file mode 100644 index 00000000..7abb674f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LensConfig.ts @@ -0,0 +1,19 @@ +import {Singleton} from "../Decorators/Singleton" +import {UpdateDispatcher} from "./UpdateDispatcher" + +@Singleton +export class LensConfig { + public static getInstance: () => LensConfig + + private sceneObject: SceneObject + private script: ScriptComponent + + readonly updateDispatcher: UpdateDispatcher + + public constructor() { + this.sceneObject = global.scene.createSceneObject("LensConfig-EventDispatcher") + this.script = this.sceneObject.createComponent("ScriptComponent") + + this.updateDispatcher = new UpdateDispatcher(this.script) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LensConfig.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LensConfig.ts.meta new file mode 100644 index 00000000..29cdd560 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LensConfig.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 1ba0ef7a-2385-443a-bfc3-5d06b07ffd3f + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 1ba0ef7a-2385-443a-bfc3-5d06b07ffd3f + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 8c4d81f6-2d77-432a-a6cd-ddf7ef08f5a9 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LogLevel.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LogLevel.ts new file mode 100644 index 00000000..65df6636 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LogLevel.ts @@ -0,0 +1,10 @@ +/** + * The severity of a log message. + */ +export enum LogLevel { + Error = 3, + Warning = 4, + Info = 6, + Debug = 7, + Verbose = 8, +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LogLevel.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LogLevel.ts.meta new file mode 100644 index 00000000..1c1f447d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/LogLevel.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 0054f024-aea3-4230-bd26-de520e6e9b3e + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 0054f024-aea3-4230-bd26-de520e6e9b3e + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 77f62c39-5bd8-45bd-a86f-95b6f6a50f19 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/MovingAverageFilter.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/MovingAverageFilter.ts new file mode 100644 index 00000000..44885d82 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/MovingAverageFilter.ts @@ -0,0 +1,42 @@ +import Filter from "./Filter" + +const TAG = "MovingAverageFilter" + +/** + * Implements a moving average algorithm. A window of specified length, + * moves over the data, sample by sample, and the average is computed + * over the data in the window. + * + * Source: https://www.mathworks.com/help/dsp/ug/sliding-window-method-and-exponential-weighting-method.html + */ +export class MovingAverageFilter implements Filter { + private samples: T[] = [] + + constructor( + private windowLength: number, + private zero: () => T, + private average: (samples: T[]) => T + ) { + this.clear() + } + + /** + * @inheritdoc + */ + filter(sample: T, _timestamp: number): T { + if (this.samples.length === this.windowLength) { + this.samples.shift() + } + this.samples.push(sample) + + return this.average(this.samples) + } + + clear(): void { + this.samples = [] + } + + averageSample(): T { + return this.average(this.samples) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/MovingAverageFilter.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/MovingAverageFilter.ts.meta new file mode 100644 index 00000000..bbf0e31f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/MovingAverageFilter.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! c31b00f9-657c-487f-8124-20fa110cda10 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! c31b00f9-657c-487f-8124-20fa110cda10 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! d57bcc69-b39e-45dd-9f36-97d378dbaa01 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/NativeLogger.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/NativeLogger.ts new file mode 100644 index 00000000..f25f076d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/NativeLogger.ts @@ -0,0 +1,70 @@ +import LogLevelProvider from "../Providers/InteractionConfigurationProvider/LogLevelProvider" +import SIKLogLevelProvider from "../Providers/InteractionConfigurationProvider/SIKLogLevelProvider" +import {logWithTag} from "./logger" +import {LogLevel} from "./LogLevel" + +export default class NativeLogger { + private sikLogLevelProvider = SIKLogLevelProvider.getInstance() + + private tag: string + private logger: (...args: any[]) => void + private logLevelFilter: LogLevel + private logLevelProvider: LogLevelProvider + + constructor(tag: string, logLevelProvider?: LogLevelProvider) { + this.tag = tag + this.logger = logWithTag(tag) + + this.logLevelProvider = logLevelProvider ?? this.sikLogLevelProvider + this.logLevelFilter = this.logLevelProvider.logLevel + this.logLevelProvider.onLogLevelChanged.add(this.updateLogLevel.bind(this)) + } + + i(message: string): void { + if (!this.shouldLog(LogLevel.Info)) { + return + } + + this.logger(this.tag, message) + } + + d(message: string): void { + if (!this.shouldLog(LogLevel.Debug)) { + return + } + + this.logger(this.tag, message) + } + + e(message: string): void { + if (!this.shouldLog(LogLevel.Error)) { + return + } + + this.logger(this.tag, message) + } + + w(message: string): void { + if (!this.shouldLog(LogLevel.Warning)) { + return + } + + this.logger(this.tag, message) + } + + v(message: string): void { + if (!this.shouldLog(LogLevel.Verbose)) { + return + } + + this.logger(this.tag, message) + } + + private shouldLog(logLevel: LogLevel): boolean { + return logLevel <= this.logLevelFilter + } + + private updateLogLevel(logLevel: LogLevel): void { + this.logLevelFilter = logLevel + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/NativeLogger.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/NativeLogger.ts.meta new file mode 100644 index 00000000..61fdbc77 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/NativeLogger.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! f28dfe31-e86b-4873-a5cc-30ca36fa9967 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! f28dfe31-e86b-4873-a5cc-30ca36fa9967 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 2cbd9a67-e8b0-413d-a2da-9611ec49c074 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/OneEuroFilter.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/OneEuroFilter.ts new file mode 100644 index 00000000..27bd9025 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/OneEuroFilter.ts @@ -0,0 +1,519 @@ +/** + * Author: Gery Casiez + * Details: http://cristal.univ-lille.fr/~casiez/1euro/ + * + * Copyright 2019 Inria + * + * BSD License https://opensource.org/licenses/BSD-3-Clause + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of conditions + * and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions + * and the following disclaimer in the documentation and/or other materials provided with the distribution. + * + * 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or + * promote products derived from this software without specific prior written permission. + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +import {SampleOps, Vec3SampleOps} from "./SampleOps" + +import NativeLogger from "./NativeLogger" + +/** + * + * Modified 2022 Snap Inc. + * + */ + +const TAG = "OneEuroFilter" + +const eps = 0.00001 +const minimumDt = 1.0 / 120.0 + +/** + * Makes sure dt is never 0 or negative + * + * @param dt - number to clamp + * @returns - clamped number + */ +function SafelyClampPeriod(dt: number): number { + return Math.max(dt, minimumDt) +} + +export class LowPassFilter { + private log = new NativeLogger(TAG) + + y: number + s: number + a = 0 + initialized = false + + constructor(alpha: number, initval = 0) { + // eslint-disable-next-line no-self-assign + initval = initval + this.y = this.s = initval + this.setAlpha(alpha) + } + + private setAlpha(alpha: number) { + if (alpha <= 0.0 || alpha > 1.0) { + this.log.w("alpha should be in (0.0., 1.0]") + } + this.a = alpha + } + /** + * Applies a filter to a value. + * + * @param value - The value to filter. + * @returns The filtered value after applying the specified alpha. + */ + filter(value: number) { + let result + if (this.initialized) { + result = this.a * value + (1.0 - this.a) * this.s + } else { + result = value + this.initialized = true + } + this.y = value + this.s = result + return result + } + /** + * Applies a filter to a value with a specified alpha. + * + * @param {number} value - The value to filter. + * @param {number} alpha - The alpha level to set before filtering. + * @returns The filtered value after applying the specified alpha. + */ + filterWithAlpha(value: number, alpha: number) { + this.setAlpha(alpha) + return this.filter(value) + } + /** + * Checks if the last raw value has been initialized or set. + * + * @returns {boolean} True if the last raw value is initialized; false otherwise. + */ + hasLastRawValue() { + return this.initialized + } + /** + * Retrieves the last raw value stored. + * + * @returns The last raw value if it has been set; undefined otherwise. + */ + lastRawValue() { + return this.y + } + /** + * Resets the internal state to uninitialized. + */ + reset() { + this.initialized = false + } +} + +export type OneEuroFilterConfig = { + frequency: number + minCutoff: number + beta: number + dcutoff: number +} + +abstract class OneEuroFilterBase { + private log = new NativeLogger(TAG) + + x: LowPassFilter + dx: LowPassFilter + + lasttime: number | undefined + lastcutoff: number | undefined + + frequency!: number + minCutoff!: number + beta!: number + dcutoff!: number + + constructor(config: OneEuroFilterConfig) { + this.setFrequency(config.frequency) + this.setMinCutoff(config.minCutoff) + this.setBeta(config.beta) + this.setDerivateCutoff(config.dcutoff) + this.x = new LowPassFilter(this.alpha(config.minCutoff)) + this.dx = new LowPassFilter(this.alpha(config.dcutoff)) + this.lasttime = undefined + this.lastcutoff = undefined + } + + /** + * Calculates the alpha value used for smoothing in the filter, based on a cutoff frequency. + * @param {number} cutoff - The cutoff frequency at which the filter should attenuate the signal. + * @returns {number} The calculated alpha value for the filter. + */ + alpha(cutoff: number) { + const te = 1.0 / this.frequency + const tau = 1.0 / (2 * Math.PI * cutoff) + return 1.0 / (1.0 + tau / te) + } + + /** + * Resets the internal state to uninitialized. + */ + reset() { + this.x.reset() + this.dx.reset() + this.lasttime = undefined + this.lastcutoff = undefined + } + + private setFrequency(f: number) { + if (f <= 0) { + this.log.w("freq should be >0") + } + this.frequency = f + } + + private setMinCutoff(mc: number) { + if (mc <= 0) { + this.log.w("mincutoff should be >0") + } + this.minCutoff = mc + } + + private setBeta(b: number) { + this.beta = b + } + + private setDerivateCutoff(dc: number) { + if (dc <= 0) { + this.log.w("dcutoff should be >0") + } + this.dcutoff = dc + } +} + +/** + * `OneEuroFilter` provides a mechanism for filtering noisy signals with a one euro filter algorithm. + * It extends the `OneEuroFilterBase` class. + */ +export class OneEuroFilter extends OneEuroFilterBase { + /** + * Applies the filter to the given value using the current filter configuration and updates the internal state. + * @param {number} value - The new value to be filtered. + * @param {number} timestamp - The timestamp associated with the value, used to calculate the dynamic parameters of the filter. + * @returns {number} The filtered value after applying the filter's algorithm. + */ + filter(value: number, timestamp: number): number { + // Update the sampling frequency based on timestamps + if (this.lasttime !== undefined && timestamp !== undefined) { + this.frequency = 1.0 / SafelyClampPeriod(timestamp - this.lasttime) + } + this.lasttime = timestamp + // Estimate the current variation per second + const dvalue = this.x.hasLastRawValue() + ? (value - this.x.lastRawValue()) * this.frequency + : 0.0 + const edvalue = this.dx.filterWithAlpha(dvalue, this.alpha(this.dcutoff)) + + // Use it to update the cutoff frequency + const cutoff = this.minCutoff + this.beta * Math.abs(edvalue) + this.lastcutoff = cutoff + + // Filter the given value + return this.x.filterWithAlpha(value, this.alpha(cutoff)) + } +} +/** + * OneEuroFilter for vec2 + * It extends the `OneEuroFilterBase` class. + */ +export class OneEuroFilterVec2 extends OneEuroFilterBase { + y: LowPassFilter + dy: LowPassFilter + + constructor(config: OneEuroFilterConfig) { + super(config) + + this.y = new LowPassFilter(this.alpha(config.minCutoff)) + this.dy = new LowPassFilter(this.alpha(config.dcutoff)) + } + /** + * Resets the filter states. + */ + override reset(): void { + super.reset() + + this.y.reset() + this.dy.reset() + } + /** + * Applies the filter to the given value using the current filter configuration and updates the internal state. + * @param {vec2} value - The new value to be filtered. + * @param {number} timestamp - The timestamp associated with the value, used to calculate the dynamic parameters of the filter. + * @returns {vec2} The filtered value after applying the filter's algorithm. + */ + filter(value: vec2, timestamp: number): vec2 { + // Update the sampling frequency based on timestamps + if (this.lasttime !== undefined && timestamp !== undefined) { + this.frequency = 1.0 / SafelyClampPeriod(timestamp - this.lasttime) + } + this.lasttime = timestamp + // Estimate the current variation per second + const dValueX = this.x.hasLastRawValue() + ? (value.x - this.x.lastRawValue()) * this.frequency + : 0.0 + const dValueY = this.y.hasLastRawValue() + ? (value.y - this.y.lastRawValue()) * this.frequency + : 0.0 + + const edValueX = this.dx.filterWithAlpha(dValueX, this.alpha(this.dcutoff)) + const edValueY = this.dy.filterWithAlpha(dValueY, this.alpha(this.dcutoff)) + + const edValueXyNorm = Math.sqrt( + Math.pow(edValueX, 2) + Math.pow(edValueY, 2) + ) + + // Use it to update the cutoff frequency + const cutoff = this.minCutoff + this.beta * Math.abs(edValueXyNorm) + this.lastcutoff = undefined + + // Filter the given value + const xOut = this.x.filterWithAlpha(value.x, this.alpha(cutoff)) + const yOut = this.y.filterWithAlpha(value.y, this.alpha(cutoff)) + return new vec2(xOut, yOut) + } +} +/** + * OneEuroFilter for vec3 + * It extends the `OneEuroFilterBase` class. + */ +export class OneEuroFilterVec3 extends OneEuroFilterBase { + y: LowPassFilter + dy: LowPassFilter + z: LowPassFilter + dz: LowPassFilter + speed: LowPassFilter + + constructor(config: OneEuroFilterConfig) { + super(config) + + this.y = new LowPassFilter(this.alpha(config.minCutoff)) + this.dy = new LowPassFilter(this.alpha(config.dcutoff)) + this.z = new LowPassFilter(this.alpha(config.minCutoff)) + this.dz = new LowPassFilter(this.alpha(config.dcutoff)) + this.speed = new LowPassFilter(this.alpha(config.dcutoff), 0) + } + + /** + * Resets the filter to its initial state. This method is typically called to prepare + * the filter for a new set of data or to clear any existing state. + */ + override reset(): void { + super.reset() + this.y.reset() + this.dy.reset() + this.z.reset() + this.dz.reset() + this.speed.reset() + } + + /** + * Applies the filter to the given value using the current filter configuration and updates the internal state. + * @param {vec3} value - The new value to be filtered. + * @param {number} timestamp - The timestamp associated with the value, used to calculate the dynamic parameters of the filter. + * @returns {vec3} The final filtered value + */ + filter(value: vec3, timestamp: number): vec3 { + // Update the sampling frequency based on timestamps + if (this.lasttime !== undefined && timestamp !== undefined) { + this.frequency = 1.0 / SafelyClampPeriod(timestamp - this.lasttime) + } + this.lasttime = timestamp + // Estimate the current variation per second + const dValueX = this.x.hasLastRawValue() + ? (value.x - this.x.lastRawValue()) * this.frequency + : 0.0 + const dValueY = this.y.hasLastRawValue() + ? (value.y - this.y.lastRawValue()) * this.frequency + : 0.0 + const dValueZ = this.z.hasLastRawValue() + ? (value.z - this.z.lastRawValue()) * this.frequency + : 0.0 + + const edValueXyzNorm = Math.sqrt( + Math.pow(dValueX, 2) + Math.pow(dValueY, 2) + Math.pow(dValueZ, 2) + ) + const newSpeed = this.speed.filterWithAlpha( + edValueXyzNorm, + this.alpha(this.dcutoff) + ) + + // Use it to update the cutoff frequency + const cutoff = this.minCutoff + this.beta * Math.abs(newSpeed) + this.lastcutoff = cutoff + + // Filter the given value + const xOut = this.x.filterWithAlpha(value.x, this.alpha(cutoff)) + const yOut = this.y.filterWithAlpha(value.y, this.alpha(cutoff)) + const zOut = this.z.filterWithAlpha(value.z, this.alpha(cutoff)) + return new vec3(xOut, yOut, zOut) + } +} +/** + * OneEuroFilterQuat provides a mechanism for filtering noisy rotations. + * It extends the `OneEuroFilterBase` class + */ +export class OneEuroFilterQuat extends OneEuroFilterBase { + qPrevRot: quat | undefined + speed: LowPassFilter + + constructor(config: OneEuroFilterConfig) { + super(config) + + this.qPrevRot = undefined + this.speed = new LowPassFilter(this.alpha(config.dcutoff), 0) + } + + /** + * Resets the internal state to uninitialized. + */ + override reset(): void { + super.reset() + this.speed.reset() + } + + /** + * Applies the filter to the given value using the current filter configuration and updates the internal state. + * @param {quat} qNewRot - The new value to be filtered. + * @param {number} timestamp - The timestamp associated with the value, used to calculate the dynamic parameters of the filter. + * @returns {quat} The final filtered value + */ + filter(qNewRot: quat, timestamp: number): quat { + // Update the sampling frequency based on timestamps + if (this.lasttime !== undefined && timestamp !== undefined) { + this.frequency = 1.0 / SafelyClampPeriod(timestamp - this.lasttime) + } + this.lasttime = timestamp + + qNewRot.normalize() + if (this.qPrevRot === undefined) { + this.qPrevRot = qNewRot + } + + const delta = qNewRot.dot(this.qPrevRot) + const mag = Math.max(-1, Math.min(1, 2 * delta * delta - 1)) + const deltaAngle = Math.acos(mag) + const newSpeed = deltaAngle * this.frequency + + const filteredSpeed = this.speed.filterWithAlpha( + newSpeed, + this.alpha(this.dcutoff) + ) + // Use it to update the cutoff frequency + const cutoff = this.minCutoff + this.beta * Math.abs(filteredSpeed) + + this.lastcutoff = cutoff + const rotationAlpha = this.alpha(cutoff) + const newRotation = quat.slerp(this.qPrevRot, qNewRot, rotationAlpha) + + newRotation.normalize() + this.qPrevRot = newRotation + newRotation.normalize() + return newRotation + } +} +/** + * Represents a filter of some kind. + */ +interface Filter { + /** + * Applies filter to a sample + * @param sample - value to be filtered + * @param timestamp - timestamp when the sample was measured + */ + filter(sample: T, timestamp: number): T +} + +/** + * A filter that does nothing. + */ +class NoOpFilter implements Filter { + filter(sample: T, timestamp: number): T { + return sample + } +} + +class LowPassFilter_v2 implements Filter { + private previousValue: T | null = null + private previousRawValue: T | null = null + + constructor(public alpha: number, private sampleOps: SampleOps) {} + + /** + * Set alpha + * @param newAlpha + */ + setAlpha(newAlpha: number) { + this.alpha = newAlpha + } + + hasPreviousRawValue(): boolean { + return this.previousRawValue !== null + } + + getPreviousRawValue(): T { + return this.previousRawValue ?? this.sampleOps.zero() + } + + hasPreviousValue(): boolean { + return this.previousValue !== null + } + + getPreviousValue(): T { + return this.previousValue ?? this.sampleOps.zero() + } + + filter(sample: T): T { + this.previousRawValue = sample + if (this.previousValue === null) { + this.previousValue = sample + } + + const scaledValue = this.sampleOps.uniformScale(sample, this.alpha) + const scaledPrevValue = this.sampleOps.uniformScale( + this.previousValue, + 1 - this.alpha + ) + const smoothedValue = this.sampleOps.add(scaledValue, scaledPrevValue) + + this.previousValue = smoothedValue + return smoothedValue + } + + filterWithAlpha(sample: T, alpha: number): T { + this.alpha = alpha + return this.filter(sample) + } +} + +/** + * Vec3 specialization of LowPassFilter + */ +export class LowPassFilterVec3_v2 extends LowPassFilter_v2 { + constructor(alpha: number) { + super(alpha, new Vec3SampleOps()) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/OneEuroFilter.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/OneEuroFilter.ts.meta new file mode 100644 index 00000000..8bcc8508 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/OneEuroFilter.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 896c516c-dcd1-4a3d-a904-ba6051603544 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 896c516c-dcd1-4a3d-a904-ba6051603544 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 730deb28-68b0-41ef-a064-f82c5ae93f68 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/ReplayEvent.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/ReplayEvent.ts new file mode 100644 index 00000000..84c2ca10 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/ReplayEvent.ts @@ -0,0 +1,41 @@ +import Event, {callback} from "./Event" + +/** + * ReplayEvent keeps a buffer of {@link bufferSize} events that are emitted for + * each new subscriber. + */ +export default class ReplayEvent extends Event { + private _buffer: Arg[] = [] + + constructor( + private bufferSize: number = 1, + ...callbacks: (callback | undefined)[] + ) { + super(...callbacks) + if (this.bufferSize < 1) throw new Error("Buffer size can't be < 1") + } + + /** + * Register an event handler + * @param handler to register + */ + public override add(handler: callback) { + super.add(handler) + this._buffer.forEach((value: Arg) => { + handler(value) + }) + } + + public override invoke(arg: Arg): void { + super.invoke(arg) + this._buffer.push(arg) + this.trimBuffer() + } + + private trimBuffer() { + let currentBufferLength = this._buffer.length + if (currentBufferLength > this.bufferSize) { + this._buffer = this._buffer.splice(currentBufferLength - this.bufferSize) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/ReplayEvent.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/ReplayEvent.ts.meta new file mode 100644 index 00000000..303b33a4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/ReplayEvent.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 175c3d81-b135-4a5b-ae43-7440947d6342 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 175c3d81-b135-4a5b-ae43-7440947d6342 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 858b6819-d41f-407f-a3d6-bed120bd77af + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SafeReference.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SafeReference.ts new file mode 100644 index 00000000..7ea14d88 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SafeReference.ts @@ -0,0 +1,14 @@ +/** + * Used to check if an Object reference has been destroyed on the LensCore side + * @param reference - the reference to check, typically a SceneObject or Component + * @returns - the same reference if not destroyed on the LensCore side, or null if destroyed + */ +export function getSafeReference< + T extends SceneObject | Component | Text | ScriptComponent +>(reference: T | null): T | null { + if (reference && !isNull(reference)) { + return reference + } + + return null +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SafeReference.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SafeReference.ts.meta new file mode 100644 index 00000000..c1b95a9c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SafeReference.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 448a7f40-db57-4798-a6a7-39ee1b1be974 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 448a7f40-db57-4798-a6a7-39ee1b1be974 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 7e6e7af7-8187-4865-89d1-8f15512aed8e + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SampleOps.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SampleOps.ts new file mode 100644 index 00000000..aa4a5473 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SampleOps.ts @@ -0,0 +1,94 @@ +/** + * Represents mathematical operations for + * a filter sample of generic type T + */ +export interface SampleOps { + uniformScale(value: T, scale: number): T + add(first: T, second: T): T + sub(first: T, second: T): T + magnitude(of: T): number + zero(): T +} + +/** + * Defines mathematical operations for + * a scalar filter sample. + */ +export class ScalarSampleOps implements SampleOps { + uniformScale(value: number, scale: number): number { + return value * scale + } + + add(first: number, second: number): number { + return first + second + } + + sub(first: number, second: number): number { + return first - second + } + + magnitude(of: number): number { + return Math.abs(of) + } + + zero(): number { + return 0 + } +} + +/** + * Defines mathematical operations for + * a vec2 filter sample. + */ +export class Vec2SampleOps implements SampleOps { + /** @inheritdoc */ + uniformScale(value: vec2, scale: number): vec2 { + return value.uniformScale(scale) + } + + /** @inheritdoc */ + add(first: vec2, second: vec2): vec2 { + return first.add(second) + } + + /** @inheritdoc */ + sub(first: vec2, second: vec2): vec2 { + return first.sub(second) + } + + /** @inheritdoc */ + magnitude(of: vec2): number { + return of.length + } + + /** @inheritdoc */ + zero(): vec2 { + return vec2.zero() + } +} + +/** + * Defines mathematical operations for + * a vec3 filter sample. + */ +export class Vec3SampleOps implements SampleOps { + uniformScale(value: vec3, scale: number): vec3 { + return value.uniformScale(scale) + } + + add(first: vec3, second: vec3): vec3 { + return first.add(second) + } + + sub(first: vec3, second: vec3): vec3 { + return first.sub(second) + } + + magnitude(of: vec3): number { + return of.length + } + + zero(): vec3 { + return vec3.zero() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SampleOps.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SampleOps.ts.meta new file mode 100644 index 00000000..5d756cf9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SampleOps.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 1ee7c7a3-89c2-42d7-9004-c52c4138a9ff + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 1ee7c7a3-89c2-42d7-9004-c52c4138a9ff + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! d072a335-69f9-4e08-a4c7-d2f15f15eda2 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SceneObjectUtils.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SceneObjectUtils.ts new file mode 100644 index 00000000..ddc1205b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SceneObjectUtils.ts @@ -0,0 +1,61 @@ +/** + * Searches for a SceneObject with the given name in the tree rooted at the given root SceneObject. + * + * @param root - The root SceneObject of the tree to search. + * @param name - The name of the SceneObject to search for. + * @returns The first SceneObject with the given name if it exists in the tree, or undefined otherwise. + */ +export function findSceneObjectByName( + root: SceneObject | null, + name: string +): SceneObject | null { + if (root === null) { + const rootObjectCount = global.scene.getRootObjectsCount() + let current = 0 + while (current < rootObjectCount) { + const result = findSceneObjectByName( + global.scene.getRootObject(current), + name + ) + if (result) { + return result + } + current += 1 + } + } else { + if (root.name === name) { + return root + } + + for (let i = 0; i < root.getChildrenCount(); i++) { + const child = root.getChild(i) + const result = findSceneObjectByName(child, name) + if (result) { + return result + } + } + } + return null +} +/** + * Checks if a {@link SceneObject} is a descendant of another. + * @param sceneObject - the potential descendant. + * @param root - the potential ascendant. + * @returns true, if sceneObject is a descendant of root, + * otherwise, returns false. + */ +export function isDescendantOf( + sceneObject: SceneObject, + root: SceneObject +): boolean { + if (sceneObject === root) { + return true + } + + const parent = sceneObject.getParent() + if (parent === null) { + return false + } + + return isDescendantOf(parent, root) +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SceneObjectUtils.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SceneObjectUtils.ts.meta new file mode 100644 index 00000000..4c27a3b8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SceneObjectUtils.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 80337763-4fe6-4c0b-a5fc-da9c01be7453 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 80337763-4fe6-4c0b-a5fc-da9c01be7453 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 735adc92-bc24-42bc-a277-b4dbbf7be3c8 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SeededRandomNumberGenerator.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SeededRandomNumberGenerator.ts new file mode 100644 index 00000000..3415f392 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SeededRandomNumberGenerator.ts @@ -0,0 +1,183 @@ +const TAG = "SeededRandomNumberGenerator" + +/** + * Optimal constant, per: + * Steele, GL, Vigna, S. Computationally easy, spectrally good multipliers for congruential pseudorandom number generators. Softw Pract Exper. 2022; 52( 2): 443– 458. doi:10.1002/spe.3030 + * https://onlinelibrary.wiley.com/doi/10.1002/spe.3030 + */ +const a = 0x915f77f5 + +// The c constant has no effect on the potency of the generator, and can be set to anything +const c = 12345 + +// Choosing a low modulus keeps javascript from losing precision +const m = Math.pow(2, 32) + +/** + * This is a random number generator that allows you to set the seed used, for generating + * consistent random values between runs. + * It is implemented as a linear congruential generator, which is fast but not very random. + * + * NOTE: The seed you pass needs to be an Integer + * + * See: https://en.wikipedia.org/wiki/Linear_congruential_generator + */ +export class SeededRandomNumberGenerator { + // The current seed used by the random number generator for the next call + seed: number + + constructor(seed?: number) { + this.seed = seed ?? 0 + if (!Number.isInteger(this.seed)) { + throw new Error( + `Illegal value: Non-Integer seed passed to SeededRandomNumberGenerator: ${this.seed}` + ) + } + } + + /** + * Returns a random integer between 0 and 2^32 + * @returns A random integer between 0 and 2^32 + */ + public randomInteger(): number { + const x = (a * this.seed + c) % m + this.seed = x + return x + } + + /** + * Generate a floating-point number in the given range + * @param {number} start The lowest value in the range. + * @param {number} end The highest value in the range. + * @returns A function that, when called, returns a number within the given range. + */ + public randomRange(start: number, end: number): () => number { + const range = end - start + return () => { + const x = this.randomInteger() + return (x / m) * range + start + } + } + + /** + * Generate an integer in the given range. + * @param {number} start The lowest value in the range. If this is a decimal, the start of the range will be the floor of the value. + * @param {number} end The highest value in the range. If this is a decimal, the end of the range will be the floor of the value. + * @returns A function that, when called, returns an integer within the given range. + */ + public randomIntegerRange(start: number, end: number): () => number { + const startFloor = Math.floor(start) + const endFloor = Math.floor(end) + const range = endFloor - startFloor + 1 + return () => { + const x = this.randomInteger() + return (x % range) + startFloor + } + } + + /** + * Returns an Array of random numbers within a specified range (no duplicates). + * @param rangeMin - The minimum value of the range (inclusive). + * @param rangeMax - The maximum value of the range (exclusive). + * @param numRandomNumbers - The number of random numbers to generate. + * @returns An Array of random numbers within the specified range. + * @throws Will throw an error if rangeMin >= rangeMax. + * @throws Will throw an error if numRandomNumbers > rangeMax - rangeMin. + */ + public getRandomNumberArrayInRangeNoDuplicates( + rangeMin: number, + rangeMax: number, + numRandomNumbers: number + ): number[] { + if (rangeMin >= rangeMax) { + throw new Error( + `Illegal arguments, rangeMin (${rangeMin}) cannot be >= rangeMax (${rangeMax})` + ) + } + + if (numRandomNumbers > rangeMax - rangeMin) { + throw new Error( + `Illegal arguments, numRandomNumbers (${numRandomNumbers}) cannot be > rangeMax - rangeMin (${ + rangeMax - rangeMin + })` + ) + } + + // To avoid choosing duplicate indexes, populate a list with all possible numbers so we can remove them as they are chosen + const possibleNumbers: number[] = [] + for (let i = rangeMin; i < rangeMax; i++) { + possibleNumbers.push(i) + } + + const chosenNumbers: number[] = [] + for (let i = 0; i < numRandomNumbers; i++) { + const index = this.randomIntegerRange(0, possibleNumbers.length - 1)() + chosenNumbers.push(possibleNumbers[index]) + possibleNumbers.splice(index, 1) + } + + return chosenNumbers + } + + /** + * Generates a random quaternion. + * The resulting quaternion is of unit length and its components range between -1 and 1. + * + * @returns A randomly generated quaternion of unit length. + */ + randomQuaternion(): quat { + const w = MathUtils.remap(this.randomRange(0, 1)(), 1, 0, 1, -1) + const x = MathUtils.remap(this.randomRange(0, 1)(), 1, 0, 1, -1) + const y = MathUtils.remap(this.randomRange(0, 1)(), 1, 0, 1, -1) + const z = MathUtils.remap(this.randomRange(0, 1)(), 1, 0, 1, -1) + + const returnQuat = new quat(w, x, y, z) + returnQuat.normalize() + return returnQuat + } + + /** + * Generates a random point within an Axis-Aligned Bounding Box (AABB). An AABB is a rectangular box + * specified by providing the minimum and maximum x, y, and z coordinates. + * + * @param {vec3} minPoint - The minimum point of the AABB. + * @param {vec3} maxPoint - The maximum point of the AABB. + * @throws Will throw an error if any component of minPoint is greater than the corresponding component of maxPoint. + * @returns A randomly generated point within the specified AABB, where minPoint.x <= x <= maxPont.x etc. + */ + randomPointInAABB(minPoint: vec3, maxPoint: vec3): vec3 { + if ( + minPoint.x > maxPoint.x || + minPoint.y > maxPoint.y || + minPoint.z > maxPoint.z + ) { + throw new Error( + "Illegal arguments, each component of minPoint cannot be greater than the corresponding component of maxPoint" + ) + } + + const x = MathUtils.remap( + this.randomRange(0, 1)(), + 1, + 0, + maxPoint.x, + minPoint.x + ) + const y = MathUtils.remap( + this.randomRange(0, 1)(), + 1, + 0, + maxPoint.y, + minPoint.y + ) + const z = MathUtils.remap( + this.randomRange(0, 1)(), + 1, + 0, + maxPoint.z, + minPoint.z + ) + + return new vec3(x, y, z) + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SeededRandomNumberGenerator.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SeededRandomNumberGenerator.ts.meta new file mode 100644 index 00000000..3624b9b8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/SeededRandomNumberGenerator.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 28c6ead9-fd73-431f-b574-8e81a9e081e2 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 28c6ead9-fd73-431f-b574-8e81a9e081e2 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 0b6bbc1d-5916-4186-b82b-5ec400696ebc + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Spatial.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Spatial.ts new file mode 100644 index 00000000..bb71232d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Spatial.ts @@ -0,0 +1,23 @@ +import {aabb} from "./aabb" + +/* + * Spatial is an interface that when implemented shows that a View has 3D bounds around which to draw a UI as well as + * a transform which can be used to manipulate that View in 3D space. By implementing ISpatial a view is defining its 3D + * bounds and possesion of a transform, which allow it to be manipulated via the MovableView class + */ +export interface Spatial { + /** + * Returns an axis aligned bounding box which represents the bounds of a view around which a UI can be created + */ + getAABB(): aabb + + /** + * Returns a world-space axis aligned bounding box which represents the bounds of a view around which a UI can be created + */ + getWorldAABB(): aabb + + /** + * Returns a Transform which is used in manipulating the object in 3D space + */ + getTransform(): Transform +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Spatial.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Spatial.ts.meta new file mode 100644 index 00000000..d8660757 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/Spatial.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! a848bbc6-0025-48bb-8d43-fd9d2b756cf8 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! a848bbc6-0025-48bb-8d43-fd9d2b756cf8 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 320a81ff-d476-4eb0-bad8-3cdbf8bc702b + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/State.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/State.ts new file mode 100644 index 00000000..e97500f5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/State.ts @@ -0,0 +1,153 @@ +export type Callback = (state: State) => void + +export type StateConfig = { + name: string +} & Partial<{ + onEnter: Callback + onExit: Callback + onUpdate: Callback + onLateUpdate: Callback + onSignal: Callback + transitions: TransitionConfig[] +}> + +export type CheckUpdateCallback = (state: State) => boolean +export type CheckSignalCallback = (signal: string, data: any) => boolean +export type TransitionExecutionCallback = () => void + +export type TransitionConfig = { + nextStateName: string +} & Partial<{ + checkOnUpdate: CheckUpdateCallback + checkOnSignal: CheckSignalCallback + onExecution: TransitionExecutionCallback +}> + +const TAG = "State" + +/** + * Transition class for a State + */ +export class Transition { + get checkOnUpdate() { + return this.config.checkOnUpdate + } + + get checkOnSignal() { + return this.config.checkOnSignal + } + + get nextStateName() { + return this.config.nextStateName + } + + get onExecution() { + return this.config.onExecution + } + + constructor(private config: TransitionConfig) {} +} + +/** + * State class for a StateMachine + */ +export default class State { + get name() { + return this.config.name + } + + stateStartTime = 0 + stateElapsedTime = 0 + + private updateTransitions: Transition[] = [] + private signalTransitions: Transition[] = [] + + constructor(private config: StateConfig) { + if (config.transitions !== undefined) { + config.transitions.forEach((transitionConfig) => { + const transition = new Transition(transitionConfig) + + if (transition.checkOnSignal !== undefined) { + this.signalTransitions.push(transition) + } + + if (transition.checkOnUpdate !== undefined) { + this.updateTransitions.push(transition) + } + }) + } + } + + /** + * Check if any of the UpdateTransitions are true. Called once per Update + */ + checkUpdate(): Transition | null { + for (const transition of this.updateTransitions) { + if (transition.checkOnUpdate!(this) === true) { + return transition + } + } + return null + } + + /** + * Check if any of SignalTransitions are true. Called once per Signal + * + * @param signal sent + * @param data optional from signal + */ + checkSignal(signal: string, data: any): Transition | null { + for (const transition of this.signalTransitions) { + if (transition.checkOnSignal!(signal, data) === true) { + return transition + } + } + + return null + } + + /** + * Triggers the onEnter callback + */ + onEnter() { + if (this.config.onEnter !== undefined) { + this.config.onEnter(this) + } + } + + /** + * Triggers the onExit callback + */ + onExit() { + if (this.config.onExit !== undefined) { + this.config.onExit(this) + } + } + + /** + * Triggers the onUpdate callback + */ + onUpdate() { + if (this.config.onUpdate !== undefined) { + this.config.onUpdate(this) + } + } + + /** + * Triggers the onLateUpdate callback + */ + onLateUpdate() { + if (this.config.onLateUpdate !== undefined) { + this.config.onLateUpdate(this) + } + } + + /** + * Triggers the onSignal callback + */ + onSignal() { + if (this.config.onSignal !== undefined) { + this.config.onSignal(this) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/State.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/State.ts.meta new file mode 100644 index 00000000..f3dd5575 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/State.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! f40f8b8e-c408-4015-834b-564d3ad40273 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! f40f8b8e-c408-4015-834b-564d3ad40273 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 7cab456c-ae7b-4c77-be8e-4381fdcf4ada + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/StateMachine.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/StateMachine.ts new file mode 100644 index 00000000..227d9045 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/StateMachine.ts @@ -0,0 +1,140 @@ +/** + * StateMachine + */ + +import NativeLogger from "./NativeLogger" +import State, {StateConfig, Transition} from "./State" + +import {LensConfig} from "./LensConfig" + +const TAG = "StateMachine" + +export default class StateMachine { + private name: string + private _currentState: State | null = null + private states: any = {} + private stateCount = 0 + private verboseLogs = false + + private log = new NativeLogger(TAG) + + constructor(name: string) { + this.name = name ?? "StateMachine" + + let lensConfig = LensConfig.getInstance() + let updateDispatcher = lensConfig.updateDispatcher + updateDispatcher.createUpdateEvent("StateMachineUpdate").bind(() => { + this.update() + }) + updateDispatcher + .createLateUpdateEvent("StateMachineLateUpdate") + .bind(() => { + this.lateUpdate() + }) + } + + get currentState(): State | null { + return this._currentState + } + + /** + * Add a new state to the state machine. + * @param config StateConfig. State names are Unique + */ + addState(config: StateConfig): State { + let newState = new State(config) + this.states[newState.name] = newState + this.stateCount++ + + return newState + } + + /** + * Change states + * @param stateName to enter + * @param skipOnEnter set to true in order to call enterState without calling that state's onEnter() function + */ + enterState(stateName: string, skipOnEnter = false) { + if (this.states[stateName] === undefined) { + // this.log(`Invalid state ${stateName}`) + return + } + + let oldState = this._currentState + if (oldState !== null) { + this.exitState() + } + + // this.log(`Entering State - ${stateName}`) + let newState = this.states[stateName] as State + this._currentState = newState + this._currentState.stateElapsedTime = 0 + this._currentState.stateStartTime = getTime() + + if (skipOnEnter) { + return + } + this._currentState.onEnter() + } + + /** + * Send a signal to the statemachine to possibly change states + * @param signal name of the signal + * @param data optional data + */ + sendSignal(signal: string, data: any = null) { + if (this._currentState === null) { + return + } + + this._currentState.onSignal() + + let transition = this._currentState.checkSignal(signal, data) + if (transition !== null) { + this.executeTransition(transition) + } + } + + private exitState() { + if (this._currentState !== null) { + // this.log(`Exiting State - ${this._currentState.name}`) + this._currentState.onExit() + } + } + + private executeTransition(transition: Transition) { + // this.log(`Executing Transition to ${transition.nextStateName}`) + if (transition.onExecution !== undefined) { + transition.onExecution() + } + + this.enterState(transition.nextStateName) + } + + private update() { + if (this._currentState === null) { + return + } + + this._currentState.stateElapsedTime = + getTime() - this._currentState.stateStartTime + + let transition = this._currentState.checkUpdate() + if (transition !== null) { + this.executeTransition(transition) + } + + this._currentState.onUpdate() + } + + private lateUpdate() { + if (this._currentState === null) { + return + } + + this._currentState.stateElapsedTime = + getTime() - this._currentState.stateStartTime + + this._currentState.onLateUpdate() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/StateMachine.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/StateMachine.ts.meta new file mode 100644 index 00000000..051d7e81 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/StateMachine.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 95fa2c46-bcf5-47d0-9f86-0415d020d4a6 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 95fa2c46-bcf5-47d0-9f86-0415d020d4a6 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 0993170e-589d-40ea-81ee-13f3cbcbd354 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/UpdateDispatcher.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/UpdateDispatcher.ts new file mode 100644 index 00000000..19c80c23 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/UpdateDispatcher.ts @@ -0,0 +1,207 @@ +export interface IUpdateDispatcher { + createUpdateEvent(name: string): DispatchedUpdateEvent + + createLateUpdateEvent(name: string): DispatchedUpdateEvent + + setUpdateEventPriority( + updateEvent: DispatchedUpdateEvent, + priority: number + ): void + + removeUpdateEvent(event: DispatchedUpdateEvent): void + + removeLateUpdateEvent(event: DispatchedUpdateEvent): void + + createDelayedEvent(): DispatchedDelayedEvent + + removeDelayedEvent(event: DispatchedDelayedEvent): void +} + +export class UpdateDispatcher implements IUpdateDispatcher { + protected mainUpdateEvent: SceneEvent + protected mainLateUpdateEvent: SceneEvent + protected updateEvents: DispatchedUpdateEvent[] = [] + protected lateUpdateEvents: DispatchedUpdateEvent[] = [] + protected delayedEvents: DispatchedDelayedEvent[] = [] + + constructor(script: ScriptComponent) { + this.mainUpdateEvent = script.createEvent("UpdateEvent") + this.mainUpdateEvent.bind(() => { + this.onUpdate() + }) + this.mainLateUpdateEvent = script.createEvent("LateUpdateEvent") + this.mainLateUpdateEvent.bind(() => { + this.onLateUpdate() + }) + this.dispatchUpdateEvents = this.dispatchUpdateEventsNoDebug + } + + createUpdateEvent(name: string): DispatchedUpdateEvent { + const event = new DispatchedUpdateEvent(name) + this.updateEvents.push(event) + return event + } + + createLateUpdateEvent(name: string): DispatchedUpdateEvent { + const event = new DispatchedUpdateEvent(name) + this.lateUpdateEvents.push(event) + return event + } + + setUpdateEventPriority(updateEvent: DispatchedUpdateEvent, priority: number) { + for (let i = 0; i < this.updateEvents.length; i++) { + if (this.updateEvents[i].id === updateEvent.id) { + this.updateEvents.splice(i, 1) + i-- + } + } + if (priority >= this.updateEvents.length) { + this.updateEvents.push(updateEvent) + } else { + this.updateEvents.splice(priority, 0, updateEvent) + } + } + + removeUpdateEvent(event: DispatchedUpdateEvent): void { + this.removeEventFromPool(event, this.updateEvents) + } + + removeLateUpdateEvent(event: DispatchedUpdateEvent): void { + this.removeEventFromPool(event, this.lateUpdateEvents) + } + + createDelayedEvent(): DispatchedDelayedEvent { + const event = new DispatchedDelayedEvent() + this.delayedEvents.push(event) + return event + } + + removeDelayedEvent(event: DispatchedDelayedEvent): void { + this.removeEventFromPool(event, this.delayedEvents) + } + + private onUpdate() { + this.dispatchUpdateEvents(this.updateEvents, this.timesUpdate, "Update") + this.dispatchDelayedEvents() + } + + private onLateUpdate() { + this.dispatchUpdateEvents( + this.lateUpdateEvents, + this.timesLateUpdate, + "LateUpdate" + ) + } + + protected timesUpdate: {[name: string]: {updCnt: number; time: number}} = {} + protected timesLateUpdate: {[name: string]: {updCnt: number; time: number}} = + {} + protected dispatchUpdateEvents: ( + pool: DispatchedUpdateEvent[], + times: {[name: string]: {updCnt: number; time: number}}, + eventName: string + ) => void + protected dispatchedEvents = 0 + + protected dispatchUpdateEventsNoDebug = (pool: DispatchedUpdateEvent[]) => { + for (let i = 0; i < pool.length; i++) { + if (pool[i].enabled) { + pool[i].eventHappened() + } + } + } + + private removeEventFromPool( + event: BaseDispatchedEvent, + pool: BaseDispatchedEvent[] + ) { + let n = pool.length + for (let i = 0; i < n; i++) { + if (event.id === pool[i].id) { + pool.splice(i, 1) + i-- + n-- + } + } + } + + private dispatchDelayedEvents() { + const curTime = getTime() + for (let i = 0; i < this.delayedEvents.length; i++) { + if ( + this.delayedEvents[i].enabled && + !this.delayedEvents[i].getWasCalled() + ) { + if (this.delayedEvents[i].callAfter < curTime) { + this.delayedEvents[i].eventHappened() + } + } + } + } +} + +export class BaseDispatchedEvent { + enabled: boolean + id: number + static TIMES_CREATED = 0 + constructor() { + this.enabled = true + this.id = BaseDispatchedEvent.TIMES_CREATED++ + } +} + +export class DispatchedUpdateEvent extends BaseDispatchedEvent { + override enabled: boolean = true + + constructor(public readonly name: string) { + super() + this.enabled = true + } + // eslint-disable-next-line + bind(callback: Function) { + this.callback = callback + } + + eventHappened() { + if (this.callback) { + this.callback() + } + } + + // eslint-disable-next-line + private callback: Function | undefined +} + +export class DispatchedDelayedEvent extends BaseDispatchedEvent { + override enabled: boolean = true + constructor() { + super() + this.wasCalled = false + } + reset(time: number): void { + this.wasCalled = false + this.callAfter = getTime() + time + } + + // eslint-disable-next-line + bind(callback: Function) { + this.callback = callback + } + + eventHappened(): void { + this.wasCalled = true + if (this.callback) { + this.callback() + } + } + + getWasCalled(): boolean { + return this.wasCalled + } + + callAfter: number = 0 + + // eslint-disable-next-line + private callback: Function | undefined + private wasCalled: boolean +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/UpdateDispatcher.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/UpdateDispatcher.ts.meta new file mode 100644 index 00000000..cfa9bc23 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/UpdateDispatcher.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! b87ff085-2b9f-49ae-91b2-6187e12e267c + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! b87ff085-2b9f-49ae-91b2-6187e12e267c + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 150953de-e6b1-44b5-927c-d5c117f8c8dd + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/aabb.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/aabb.ts new file mode 100644 index 00000000..76304454 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/aabb.ts @@ -0,0 +1,7 @@ +/** + * Axis-Aligned Bounding-Box representation + */ +export type aabb = { + min: vec3 + max: vec3 +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/aabb.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/aabb.ts.meta new file mode 100644 index 00000000..972d7b44 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/aabb.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! c059923a-fd45-4971-bbcc-782841bd55f4 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! c059923a-fd45-4971-bbcc-782841bd55f4 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! eff603f3-e003-4879-ac81-c9575a0887c2 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/algorithms.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/algorithms.ts new file mode 100644 index 00000000..3ab82169 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/algorithms.ts @@ -0,0 +1,88 @@ +/** + * Performs a BFS on a collection of root objects and their descendants. + * It uses a predicate function to determine if an object in the scene graph meets certain conditions. + * + * @param rootObjects - The root objects to start the BFS from. + * @param predicate - The predicate function to call on each object. + * This function should take a SceneObject as an argument and return a boolean. + * If the function returns true for an object, that object is immediately returned by the BFS function. + * If it returns false, the search continues to the next object. + * @returns the object returned by the predicate function, otherwise null. + */ +export function bfs( + rootObjects: SceneObject[], + predicate: (sceneObject: SceneObject) => T +): T | null { + for (const rootObject of rootObjects) { + const queue = [rootObject] + while (queue.length > 0) { + const currentObject = queue.shift() + if (currentObject !== undefined) { + const result = predicate(currentObject) + if (result !== null) { + return result + } + + const childrenCount = currentObject.getChildrenCount() + for (let i = 0; i < childrenCount; i++) { + queue.push(currentObject.getChild(i)) + } + } + } + } + + return null +} + +/** + * Returns a filtered list of objects based on a collection of root objects and their descendants. + * It uses a predicate function to determine if an object in the scene graph meets certain conditions. + * + * @param rootObjects - The root objects of each tree. + * @param predicate - The predicate function to call on each object. + * This function should take a SceneObject as an argument and return a boolean. + * If the function returns true for an object, that object will be part of the final list. + * If it returns false, the search continues to the next object. + * @returns the collection of objects that match the the predicate function, otherwise an empty list. + */ +export function filterTrees( + rootObjects: SceneObject[], + predicate: (sceneObject: SceneObject) => T +): T[] { + const results: T[] = [] + for (const rootObject of rootObjects) { + const queue = [rootObject] + while (queue.length > 0) { + const currentObject = queue.shift() + if (currentObject !== undefined) { + const result = predicate(currentObject) + if (result !== null) { + results.push(result) + } + + const childrenCount = currentObject.getChildrenCount() + for (let i = 0; i < childrenCount; i++) { + queue.push(currentObject.getChild(i)) + } + } + } + } + + return results +} + +/** + * Applies a function to all descendants of the root object. + * + * @param rootObject The root of the tree to apply the function to. + * @param toApply This function is called with every scene object descended from rootObject as an argument. + */ +export function applyToDescendants( + rootObject: SceneObject, + toApply: (sceneObject: SceneObject) => void +): void { + for (const childObject of rootObject.children) { + applyToDescendants(childObject, toApply) + } + toApply(rootObject) +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/algorithms.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/algorithms.ts.meta new file mode 100644 index 00000000..6db8e51f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/algorithms.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 45c8fbda-ee1b-4d9a-bfe7-e742045e6956 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 45c8fbda-ee1b-4d9a-bfe7-e742045e6956 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 9ce155b3-292d-42e2-b1ff-738ac142093d + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/animate.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/animate.ts new file mode 100644 index 00000000..5a18f174 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/animate.ts @@ -0,0 +1,427 @@ +import {Singleton} from "../Decorators/Singleton" +import Event from "./Event" + +export type AnimateConfig = { + update: (t: number) => void + cancelSet?: CancelSet + delayFrames?: number +} & ( + | { + duration: number + start?: number + end?: number + easing?: keyof typeof easingFunctions + ended?: () => void + cancelled?: () => void + } + | { + duration: "continuous" + // continuous animations have no start or end and must be linear + easing?: "linear" + start?: undefined + end?: undefined + ended?: undefined + cancelled?: undefined + } +) + +const onAnimationStartEvent = new Event>() +export const onAnimationStart = onAnimationStartEvent.publicApi() + +const onAnimationStopEvent = new Event>() +export const onAnimationStop = onAnimationStopEvent.publicApi() + +export type CancelFunction = () => void +type EasingFunction = (t: number) => number + +export const easingFunctions = { + linear: (t: number) => t, + "ease-in-sine": (t: number) => { + return -Math.cos(t * (Math.PI / 2)) + 1 + }, + "ease-out-sine": (t: number) => { + return Math.sin(t * (Math.PI / 2)) + }, + "ease-in-out-sine": (t: number) => { + return -(Math.cos(Math.PI * t) - 1) / 2 + }, + "ease-in-quad": (t: number) => { + return t * t + }, + "ease-out-quad": (t: number) => { + return t * (2 - t) + }, + "ease-in-out-quad": (t: number) => { + if ((t *= 2) < 1) { + return 0.5 * t * t + } + return -0.5 * (--t * (t - 2) - 1) + }, + "ease-in-cubic": (t: number) => { + return t * t * t + }, + "ease-out-cubic": (t: number) => { + return --t * t * t + 1 + }, + "ease-in-out-cubic": (t: number) => { + if ((t *= 2) < 1) { + return 0.5 * t * t * t + } + return 0.5 * ((t -= 2) * t * t + 2) + }, + "ease-in-quart": (t: number) => { + return t * t * t * t + }, + "ease-out-quart": (t: number) => { + return 1 - --t * t * t * t + }, + "ease-in-out-quart": (t: number) => { + if ((t *= 2) < 1) { + return 0.5 * t * t * t * t + } + return -0.5 * ((t -= 2) * t * t * t - 2) + }, + "ease-in-quint": (t: number) => { + return t * t * t * t * t + }, + "ease-out-quint": (t: number) => { + return --t * t * t * t * t + 1 + }, + "ease-in-out-quint": (t: number) => { + if ((t *= 2) < 1) { + return 0.5 * t * t * t * t * t + } + return 0.5 * ((t -= 2) * t * t * t * t + 2) + }, + "ease-in-expo": (t: number) => { + return t === 0 ? 0 : Math.pow(1024, t - 1) + }, + "ease-out-expo": (t: number) => { + return t === 1 ? 1 : 1 - Math.pow(2, -10 * t) + }, + "ease-in-out-expo": (t: number) => { + if (t === 0 || t === 1) { + return t + } + if ((t *= 2) < 1) { + return 0.5 * Math.pow(1024, t - 1) + } + return 0.5 * (-Math.pow(2, -10 * (t - 1)) + 2) + }, + "ease-in-circ": (t: number) => { + return 1 - Math.sqrt(1 - t * t) + }, + "ease-out-circ": (t: number) => { + return Math.sqrt(1 - --t * t) + }, + "ease-in-out-circ": (t: number) => { + if ((t *= 2) < 1) { + return -0.5 * (Math.sqrt(1 - t * t) - 1) + } + return 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1) + }, + "ease-in-back": (t: number) => { + const s = 1.70158 + return t === 1 ? 1 : t * t * ((s + 1) * t - s) + }, + "ease-out-back": (t: number) => { + const s = 1.70158 + return t === 0 ? 0 : --t * t * ((s + 1) * t + s) + 1 + }, + "ease-in-out-back": (t: number) => { + const c1 = 1.70158 + const c2 = c1 * 1.525 + + return t < 0.5 + ? (Math.pow(2 * t, 2) * ((c2 + 1) * 2 * t - c2)) / 2 + : (Math.pow(2 * t - 2, 2) * ((c2 + 1) * (t * 2 - 2) + c2) + 2) / 2 + }, + "ease-in-elastic": (t: number) => { + if (t === 0 || t === 1) { + return t + } + return -Math.pow(2, 10 * (t - 1)) * Math.sin((t - 1.1) * 5 * Math.PI) + }, + "ease-out-elastic": (t: number) => { + if (t === 0 || t === 1) { + return t + } + return Math.pow(2, -10 * t) * Math.sin((t - 0.1) * 5 * Math.PI) + 1 + }, + "ease-in-out-elastic": (t: number) => { + if (t === 0 || t === 1) { + return t + } + t *= 2 + if (t < 1) { + return ( + -0.5 * Math.pow(2, 10 * (t - 1)) * Math.sin((t - 1.1) * 5 * Math.PI) + ) + } + return ( + 0.5 * Math.pow(2, -10 * (t - 1)) * Math.sin((t - 1.1) * 5 * Math.PI) + 1 + ) + }, + "ease-in-bounce": (t: number) => { + return 1 - easingFunctions["ease-out-bounce"](1 - t) + }, + "ease-out-bounce": (t: number) => { + if (t < 1 / 2.75) { + return 7.5625 * t * t + } else if (t < 2 / 2.75) { + return 7.5625 * (t -= 1.5 / 2.75) * t + 0.75 + } else if (t < 2.5 / 2.75) { + return 7.5625 * (t -= 2.25 / 2.75) * t + 0.9375 + } else { + return 7.5625 * (t -= 2.625 / 2.75) * t + 0.984375 + } + }, + "ease-in-out-bounce": (t: number) => { + return t < 0.5 + ? easingFunctions["ease-in-bounce"](t * 2) * 0.5 + : easingFunctions["ease-out-bounce"](t * 2 - 1) * 0.5 + 0.5 + }, + "ease-out-back-cubic": createCubicBezierEasingFunction(0.34, 1.25, 0.64, 1), + "ease-in-back-cubic": createCubicBezierEasingFunction(0.36, 0, 0.64, -0.25), + "ease-in-out-back-cubic": createCubicBezierEasingFunction( + 0.3, + -0.25, + 0.6, + 1.42 + ), +} as const + +// A simple animation function. It's probably better to use the other animation +// utilities, but I need a quick way to animate that wasn't tied to Scene objects +export default function animate(config: AnimateConfig): CancelFunction { + let running = true + let elapsedTime = 0 + let easingFunction = easingFunctions[config.easing ?? "linear"] + + let start = config.start ?? 0 + let end = config.end ?? 1 + let range = end - start + + onAnimationStartEvent.invoke(config) + + // Create a function to be called for each frame + function frame(delayFrames = 0) { + // Bail out if this animation has been canceled + if (!running) { + onAnimationStopEvent.invoke(config) + return + } + + const deltaTime = getDeltaTime() + + if (deltaTime === 0) { + /** + * Workaround for the fact that current capture implementation uses a double update, + * which means that when in capture mode global update happens once, passing in + * deltaTime of 0 on the second update. + * + * For reference see: https://docs.google.com/document/d/1NT_yadoaSFqWvVkeMCb2qs3Um4pTLfbnW9_ySubsBbw/edit + * + * This code simply skips all updates in the animate function when deltaTime is 0, ensuring + * that the animation does not progress incorrectly when in capture mode. + */ + AnimationManager.getInstance().requestAnimationFrame(() => + frame(delayFrames) + ) + + return + } + + // Time only passes after the delay frames + if (delayFrames === 0) { + elapsedTime += deltaTime + } + + // Calculate the raw and "eased" t + let t: number + let ended = false + if (config.duration === "continuous") { + // continuous animations run until canceled + t = elapsedTime + } else { + let rawT = Math.min(1.0, elapsedTime / config.duration) + let easedT = easingFunction(rawT) + t = start + easedT * range + ended = elapsedTime >= config.duration + } + + // perform the update + config.update(t) + + if (ended === true) { + running = false + config.ended?.() + } + + // continue the animation + AnimationManager.getInstance().requestAnimationFrame(() => + frame(delayFrames === 0 ? 0 : delayFrames - 1) + ) + } + + // Create a Cancelation function to stop this animation at any time + function cancel() { + running = false + config.cancelled?.() + } + + config.cancelSet?.add(cancel) + + frame(config.delayFrames ?? 0) + + return cancel +} + +export type CancelSet = { + add(fn: () => void): void + cancel(): void + (): void +} + +export type CancelSetConfig = { + onCancel?: () => void +} + +export type CancelSetClass = { + new (config?: CancelSetConfig): CancelSet +} + +export const CancelSet: CancelSetClass = class { + constructor(config?: CancelSetConfig) { + let calls: (() => void)[] = [] + function cancelSet() { + for (let call of calls) { + call() + } + calls = [] + config?.onCancel?.() + } + + cancelSet.cancel = cancelSet + + cancelSet.add = (fn: () => void) => { + calls.push(fn) + } + + return cancelSet + } +} as unknown as CancelSetClass + +// mix matches theGLSL mix function , it is overloaded +// for numbers and vec{2,3,4} +// it provides linear interpolation between a and b by the inerpolator t +// this isvery useful in animations +export function mix(a: quat, b: quat, t: number): quat +export function mix(a: vec4, b: vec4, t: number): vec4 +export function mix(a: vec3, b: vec3, t: number): vec3 +export function mix(a: vec2, b: vec2, t: number): vec2 +export function mix(a: number, b: number, t: number): number +export function mix(a: any, b: any, t: number) { + if (typeof a === "number") { + return mixNumbers(a, b, t) + } else if (a instanceof vec2) { + return new vec2(mixNumbers(a.x, b.x, t), mixNumbers(a.y, b.y, t)) + } else if (a instanceof vec3) { + return new vec3( + mixNumbers(a.x, b.x, t), + mixNumbers(a.y, b.y, t), + mixNumbers(a.z, b.z, t) + ) + } else if (b instanceof vec4) { + return new vec4( + mixNumbers(a.x, b.x, t), + mixNumbers(a.y, b.y, t), + mixNumbers(a.z, b.z, t), + mixNumbers(a.w, b.w, t) + ) + } else if (b instanceof quat) { + return quat.slerp(a, b, t) + } + throw new Error(`Illegal arguments`) +} + +function mixNumbers(a: number, b: number, t: number): number { + let range = b - a + return a + range * t +} + +/** + * Copy of the TweenManager bezier implementation: https://docs.snap.com/lens-studio/references/guides/lens-features/adding-interactivity/helper-scripts/tween-manager + * @param x1 the x coordinate of the first point in the bezier curve + * @param y1 the y coordinate of the first point in the bezier curve + * @param x2 the x coordinate of the second point in the bezier curve + * @param y2 the y coordinate of the second point in the bezier curve + * @returns interpolated number + */ +function createCubicBezierEasingFunction( + x1: number, + y1: number, + x2: number, + y2: number +): (t: number) => number { + const p0 = new vec2(0, 0) + const p1 = new vec2(x1, y1) + const p2 = new vec2(x2, y2) + const p3 = new vec2(1, 1) + return (t: number): number => { + const oneMinusT = 1 - t + + return p0 + .uniformScale(oneMinusT * oneMinusT * oneMinusT) + .add(p1.uniformScale(3.0 * oneMinusT * oneMinusT * t)) + .add(p2.uniformScale(3.0 * oneMinusT * t * t)) + .add(p3.uniformScale(t * t * t)).y + } +} + +@Singleton +export class AnimationManager { + public static getInstance: () => AnimationManager + + private sceneObject: SceneObject + private script: ScriptComponent + private animationCallbacks: any[] = [] + private countCallbacks: any[] = [] + + public constructor() { + this.sceneObject = global.scene.createSceneObject("animate-EventDispatcher") + this.script = this.sceneObject.createComponent("ScriptComponent") + + this.requestAnimationFrame = (callback) => { + this.animationCallbacks.push(callback) + } + this.requestAnimationFrame.trackCounts = (callback) => { + this.countCallbacks.push(callback) + } + + this.script.createEvent("UpdateEvent").bind(() => { + let callbacks = this.animationCallbacks + + // report the number of callbacks to the countCallbacks + if (callbacks.length) { + for (let callback of this.countCallbacks) { + callback(callbacks.length) + } + } + + // Animation Frames often reques the next frame + this.animationCallbacks = [] + for (let callback of callbacks) { + callback() + } + }) + } + + requestAnimationFrame: AnimationManager.RequestAnimationFrameType +} +export namespace AnimationManager { + export interface RequestAnimationFrameType { + (callback: () => void): void + trackCounts?: (callback: (count: number) => void) => void + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/animate.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/animate.ts.meta new file mode 100644 index 00000000..5e296bf3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/animate.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! bbdf7d87-d773-4fb7-9983-3998dae60ef2 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! bbdf7d87-d773-4fb7-9983-3998dae60ef2 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! cc3b308f-1c7e-4609-b18d-7c728d36bb60 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/color.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/color.ts new file mode 100644 index 00000000..c5b69a55 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/color.ts @@ -0,0 +1,278 @@ +import {SeededRandomNumberGenerator} from "./SeededRandomNumberGenerator" + +const TAG = "color utils" + +/* + * this file contains some color utilities that make working with lens studio's vec3/vec4 a bit nicer + */ + +/** + * Helper class to define a gradient in [LinearGradientBackground] + */ +export type ColorStop = { + percent?: number + color: vec4 +} + +// Parse the std color format "#RRGGBB" into a lensCore vec3 +export function parseColor(str: string, alpha: number = 1.0): vec4 { + if (str[0] === "#") { + str = str.substr(1) + } + + if (str.length !== 6) { + throw new Error( + `parseColor: can't parse string of length ${str.length} "${str}"` + ) + } + + return new vec4( + parseInt(str.substr(0, 2), 16) / 255, + parseInt(str.substr(2, 2), 16) / 255, + parseInt(str.substr(4, 2), 16) / 255, + alpha + ) +} + +// withAlpha is a simple utility for constructing a color value +// that is the same as the given color value, but with a new +// alpha value. +export function withAlpha(color: vec4 | vec3, alpha: number): vec4 { + return new vec4(color.r, color.g, color.b, alpha) +} + +// withAlpha is a simple utility for constructing a color value +// that is the same as the given color value, but without any +// alpha value. +export function withoutAlpha(color: vec4): vec3 { + return new vec3(color.r, color.g, color.b) +} + +// Known Colors +export const YELLOW = (alpha = 1) => parseColor("#FFFC00", alpha) +export const WHITE = (alpha = 1) => parseColor("#FFFFFF", alpha) +export const RED = (alpha = 1) => parseColor("#FF0000", alpha) +export const BLACK = (alpha = 1) => parseColor("#000000", alpha) +export const GRAY = (alpha = 1) => parseColor("#3A383A", alpha) +export const DARKGRAY = (alpha = 1) => parseColor("#202020", alpha) + +/** + * Defines all [ColorStop] for the default color theme in [LinearGradientBackground] + */ +export const DEFAULT_COLOR_STOPS: [ColorStop, ColorStop, ColorStop] = [ + { + color: parseColor("#E92754"), + percent: 4.42, + }, + { + color: parseColor("#2B7391"), + percent: 52.2, + }, + { + color: parseColor("#FFFC00"), + percent: 98.98, + }, +] + +/** + * Defines all [ColorStop] for the critical color theme in [LinearGradientBackground] + */ +export const CRITICAL_COLOR_STOPS: [ColorStop, ColorStop, ColorStop] = [ + { + color: parseColor("#541858"), + percent: 25.98, + }, + { + color: parseColor("#921633"), + percent: 47.28, + }, + { + color: parseColor("#FFFC0C"), + percent: 106.17, + }, +] + +/** + * This function converts a color from HSL to RGB. Reference: https://en.wikipedia.org/wiki/HSL_and_HSV#HSL_to_RGB + * @param HSL {vec3} A color expressed as Hue (x [0, 360]), Saturation (y [0, 1]), and Lightness (z [0,1]) + * @returns {vec3} The same color expressed as Red (x [0, 1]), Green (y [0, 1]), and Blue (z [0, 1]) + */ +export function HSLToRGB(HSL: vec3): vec3 { + const vector = new vec3(HSL.x, HSL.y, HSL.z) + HSLToRGBInPlace(vector) + return vector +} + +const ONE_OVER_60 = 0.01666666666 +/** + * This function converts a color from HSL to RGB. Reference: https://en.wikipedia.org/wiki/HSL_and_HSV#HSL_to_RGB + * @param vector {vec3} A color expressed as Hue (x [0, 360]), Saturation (y [0, 1]), and Lightness (z [0,1]) + * This vector will be modified to express the same color as Red (x [0, 1]), Green (y [0, 1]), and Blue (z [0, 1]) + */ +export function HSLToRGBInPlace(vector: vec3): void { + const h = vector.x + const s = vector.y + const l = vector.z + + const c = (1 - Math.abs(2 * l - 1)) * s + const ho = h * ONE_OVER_60 + const x = c * (1 - Math.abs((ho % 2) - 1)) + + const matchLightness = l - c * 0.5 + + if (ho < 1) { + vector.x = c + matchLightness + vector.y = x + matchLightness + vector.z = matchLightness + } else if (ho < 2) { + vector.x = x + matchLightness + vector.y = c + matchLightness + vector.z = matchLightness + } else if (ho < 3) { + vector.x = matchLightness + vector.y = c + matchLightness + vector.z = x + matchLightness + } else if (ho < 4) { + vector.x = matchLightness + vector.y = x + matchLightness + vector.z = c + matchLightness + } else if (ho < 5) { + vector.x = x + matchLightness + vector.y = matchLightness + vector.z = c + matchLightness + } else if (ho <= 6) { + vector.x = c + matchLightness + vector.y = matchLightness + vector.z = x + matchLightness + } else { + throw "Could not determine HSL conversion" + } +} + +/** + * This function converts a color from RGB to HSL. Reference: https://en.wikipedia.org/wiki/HSL_and_HSV#From_RGB + * @param RGB {vec3} A color expressed as Red (x [0, 1]), Green (y [0, 1]), and Blue (z [0, 1]) + * @returns {vec3} The same color expressed as Hue (x [0, 360]), Saturation (y [0, 1]), and Lightness (z [0,1]) + */ +export function RGBToHSL(RGB: vec3): vec3 { + const vector = new vec3(RGB.x, RGB.y, RGB.z) + RGBToHSLInPlace(vector) + return vector +} + +/** + * This function converts a color from RGB to HSL. Reference: https://en.wikipedia.org/wiki/HSL_and_HSV#From_RGB + * @param vector {vec3} A color expressed as Red (x [0, 1]), Green (y [0, 1]), and Blue (z [0, 1]). + * This vector will be modified to express the same color as Hue (x [0, 360]), Saturation (y [0, 1]), and Lightness (z [0,1]) + */ +export function RGBToHSLInPlace(vector: vec3): void { + const rScaled = vector.x + const gScaled = vector.y + const bScaled = vector.z + + const xMax = Math.max(rScaled, gScaled, bScaled) + const xMin = Math.min(rScaled, gScaled, bScaled) + + const c = xMax - xMin + + const l = (xMax + xMin) / 2 + + let h = 0 + if (xMax === rScaled) { + h = 60 * (((gScaled - bScaled) / c) % 6) + } else if (xMax === gScaled) { + h = 60 * ((bScaled - rScaled) / c + 2) + } else if (xMax === bScaled) { + h = 60 * ((rScaled - gScaled) / c + 4) + } + + let s = 0 + if (l > 0 && l < 1) { + s = (2 * (xMax - l)) / (1 - Math.abs(2 * l - 1)) + } + + vector.x = h + vector.y = s + vector.z = l +} + +// How many color buckets to use when calculating the most common hue +const BUCKET_COUNT = 16 + +// How many samples of the image to take when calculating the most common hue +const MOST_COMMON_HUE_SAMPLES = 100 + +// Multiplication is typically much faster than division +const ONE_OVER_255 = 0.00392156862 +const ONE_OVER_360 = 0.00277777777 + +/** + * Returns the most common hue in the texture, using subjective criteria. The algorithm + * used is an artistic decision, and subject to change at any time. + * @param texture The texture to measure + * @returns The most common hue in the texture [0,360] + */ +export function getMostCommonHue(texture: Texture): number { + // Divide the possible colors up into buckets, to limit the number of options + const bucketCount = BUCKET_COUNT + let colors = new Array(bucketCount) + for (let i = 0; i < bucketCount; i++) { + colors[i] = 0 + } + + // Allocate a buffer big enough to store the data from the texture + const width = texture.getWidth() + const height = texture.getHeight() + const pixelBuffer = new Uint8Array(width * height * 4) + + // Extract the data from the texture into the pixel buffer + const proceduralTexture = ProceduralTextureProvider.createFromTexture(texture) + const proceduralTextureControl = + proceduralTexture.control as ProceduralTextureProvider + proceduralTextureControl.getPixels(0, 0, width, height, pixelBuffer) + + const sampleCount = MOST_COMMON_HUE_SAMPLES + const pixels = width * height + const samples = new SeededRandomNumberGenerator( + pixels + ).getRandomNumberArrayInRangeNoDuplicates(0, pixels - 1, sampleCount) + + // Reuse the vector for each loop to reduce allocations + var pixelColor = vec3.zero() + // This loop runs many times, so needs to be efficient + samples.forEach((pixelIndex) => { + const i = pixelIndex * 4 + + // Divide by 255 to convert it to the [0,1] range + pixelColor.x = pixelBuffer[i] * ONE_OVER_255 + pixelColor.y = pixelBuffer[i + 1] * ONE_OVER_255 + pixelColor.z = pixelBuffer[i + 2] * ONE_OVER_255 + + // Convert the color in place to reduce allocations + // Before this function, pixelColor is in RGB. After, it is in HSL + RGBToHSLInPlace(pixelColor) + + // Only count the pixel if it has some saturation (otherwise it will look gray) + // and a middling lightness (otherwise it will look black / white). + if (pixelColor.y > 0.2 && pixelColor.z > 0.2 && pixelColor.z < 0.8) { + // Divide the bucketCount by 360 to get the size of each bucket, then find the one it falls into + const bucket = Math.round(pixelColor.x * bucketCount * ONE_OVER_360) + + // Weight the effect of the pixel by its alpha transparency since + // transparent pixels won't make the texture look more that color + const a = pixelBuffer[i + 3] + + colors[bucket] += a + } + }) + + // Find the bucket with the most pixels in it + const maxBucket = Math.max(...colors) + const maxBucketIndex = colors.findIndex((value: number) => { + return value === maxBucket + }) + + // Return the hue of the biggest bucket + const mostCommonHue = (maxBucketIndex / bucketCount) * 360 + return mostCommonHue +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/color.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/color.ts.meta new file mode 100644 index 00000000..8c1cfa23 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/color.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 31c8fac9-cc4b-4ba6-a7b3-8bace29079b2 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 31c8fac9-cc4b-4ba6-a7b3-8bace29079b2 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! fefee352-e09f-4254-9bb7-70d4514b8bc0 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/debounce.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/debounce.ts new file mode 100644 index 00000000..e0bb4315 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/debounce.ts @@ -0,0 +1,74 @@ +import {LensConfig} from "./LensConfig" + +export type AnyArg = any[] + +/** + * Debounces a function + * @param debouncedFunction the function that needs debouncing + * @param timeoutInMsecs the timeout for the debounce in milliseconds + * @returns the debounced function + */ +export const debounce = ( + debouncedFunction: (...args: AnyArg) => void, + timeoutInMsecs: number +) => { + let timeoutId: ReturnType + return (...args: AnyArg): void => { + clearTimeout(timeoutId) + timeoutId = setTimeout( + () => debouncedFunction.apply(this, args), + timeoutInMsecs + ) + } +} + +/** + * Throttles a function + * @param throttledFunction the function that needs throttling + * @param delayMsecs the delay for the throttle in milliseconds + * @returns the throttled function + */ +export const throttle = ( + throttledFunction: (...args: AnyArg) => void, + delayMsecs: number +) => { + let timeoutId: ReturnType + let previousTime = 0 + + return (...args: AnyArg): void => { + const currentTime = Date.now() + if (currentTime - previousTime < delayMsecs) { + clearTimeout(timeoutId) + timeoutId = setTimeout( + () => throttledFunction.apply(this, args), + delayMsecs + ) + } else { + previousTime = currentTime + throttledFunction.apply(this, args) + } + } +} +export type CancelToken = { + cancelled: boolean +} +export function setTimeout(callback: () => void, time: number): CancelToken { + let cancelToken: CancelToken = {cancelled: false} + + let updateDispatcher = LensConfig.getInstance().updateDispatcher + + let delayedEvent = updateDispatcher.createDelayedEvent() + delayedEvent.reset(time / 1000) + delayedEvent.bind((eventData: any) => { + if (!cancelToken.cancelled) { + callback() + } + updateDispatcher.removeDelayedEvent(delayedEvent) + }) + return cancelToken +} +export function clearTimeout(timeoutId: CancelToken): void { + if (timeoutId !== undefined && timeoutId.cancelled !== undefined) { + timeoutId.cancelled = true + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/debounce.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/debounce.ts.meta new file mode 100644 index 00000000..219ffb98 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/debounce.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 07ae497f-1205-4368-b5a3-19aed0b1b5e7 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 07ae497f-1205-4368-b5a3-19aed0b1b5e7 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! b05dcf8f-1982-4505-bc84-531c0044c4f0 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/lazyProperty.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/lazyProperty.ts new file mode 100644 index 00000000..67beace6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/lazyProperty.ts @@ -0,0 +1,20 @@ +/** + * This can be used to delay the fetching of a property until needed + * + * @param getPropertyFunction The function to get the value of the property, when needed. + * @returns a function that will return the value of getPropertyFunction, which will only be called once + */ + +/** + * @param getPropertyFunction + */ +export function lazyProperty(getPropertyFunction: () => T): () => T { + let lazyProperty: T | undefined + + return () => { + if (lazyProperty === undefined) { + lazyProperty = getPropertyFunction() + } + return lazyProperty + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/lazyProperty.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/lazyProperty.ts.meta new file mode 100644 index 00000000..06aad89a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/lazyProperty.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 818192d6-c2ba-42d4-933b-d507bc137a14 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 818192d6-c2ba-42d4-933b-d507bc137a14 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 02056835-c2a6-4020-81d6-8806c375488f + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/logger.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/logger.ts new file mode 100644 index 00000000..25a6679c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/logger.ts @@ -0,0 +1,11 @@ +const printFn = print + +export const logWithTag = + (tag: string) => + (...args: any[]) => { + let result = `${tag}:` + for (const arg of args) { + result += " " + arg + } + printFn(result) + } diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/logger.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/logger.ts.meta new file mode 100644 index 00000000..b6ae1c05 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/logger.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 198fc1b2-1ceb-4bdf-9c2e-489d239efc42 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 198fc1b2-1ceb-4bdf-9c2e-489d239efc42 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! d43e234c-882b-4511-804f-8b028114336e + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/mathUtils.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/mathUtils.ts new file mode 100644 index 00000000..b15f7cef --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/mathUtils.ts @@ -0,0 +1,195 @@ +/** + * Compute the average vector of a list of values + * @param values list of vectors to compute the average from + * @returns the average vectors + */ +export function averageVec3(values: vec3[]): vec3 { + let average = vec3.zero() + if (values.length === 0) { + return average + } + + for (let i = 0; i < values.length; ++i) { + average = average.add(values[i]) + } + return average.uniformScale(1 / values.length) +} + +export const DegToRad = Math.PI / 180 +export const RadToDeg = 180 / Math.PI + +/** + * Compute the average vector of a list of values + * @param values list of vectors to compute the average from + * @returns the average vectors + */ +export function averageVec2(values: vec2[]): vec2 { + let average = vec2.zero() + if (values.length === 0) { + return average + } + + for (let i = 0; i < values.length; ++i) { + average = average.add(values[i]) + } + return average.uniformScale(1 / values.length) +} + +export function inverseLerp(start: number, end: number, value: number) { + if (start === end) { + return 0 + } else { + return (value - start) / (end - start) + } +} +/** + * Interpolate between two vectors using a ratio. + * @param vectorA First vector. + * @param vectorB Second vector. + * @param ratio Proportion of vectorB in the resulting linear combination. + * @returns Interpolated vector between vectorA and vectorB. + */ +export function interpolateVec3( + vectorA: vec3, + vectorB: vec3, + ratio: number +): vec3 { + return vectorA.uniformScale(1 - ratio).add(vectorB.uniformScale(ratio)) +} + +// Transforms `localPoint` from `transform` local space to world space. +export function transformPoint(transform: Transform, localPoint: vec3): vec3 { + let t = mat4.fromTranslation(transform.getWorldPosition()) + let r = mat4.fromRotation(transform.getWorldRotation()) + let s = mat4.fromScale(transform.getWorldScale()) + let m = t.mult(r).mult(s) + return m.multiplyPoint(localPoint) +} + +export function clamp(value: number, min: number, max: number) { + return Math.min(Math.max(value, min), max) +} + +/** + * + * @param val the value that should be mapped + * @param inMax the maximum of the incoming range + * @param inMin the minimum of the outcoming range + * @param outMax the maximum of the outcoming range + * @param outMin the minimum of the incoming range + * @returns the mapped value + */ +export function mapValue( + val: number, + inMax: number, + inMin: number, + outMax: number, + outMin: number +): number { + return ((val - inMax) / (inMin - inMax)) * (outMin - outMax) + outMax +} + +export function lerp(value1: number, value2: number, amount: number) { + amount = amount < 0 ? 0 : amount + amount = amount > 1 ? 1 : amount + return value1 + (value2 - value1) * amount +} + +/** + * Dampens a current value back to a target value with spring-damper behavior. + * @param current - the current value (usually position along an axis) + * @param target - the target value to dampen to + * @param velocity - the current velocity (usually speed along an axis) + * @param smoothTime - the time it should take to smoothen to the desired target + * @param deltaTime - the amount of time passed since last frame + * @returns the smoothened value and new velocity: [position, velocity] + */ +export function smoothDamp( + current: number, + target: number, + velocity: number, + smoothTime: number, + deltaTime: number +): [number, number] { + // https://en.wikipedia.org/wiki/Mass-spring-damper_model + // m * x''(t) + c * x'(t) + k * x(t) = 0 + + // undamped natural frequency + // ωₙ = √(k / m) + + // damping ratio + // ζ = c / (2 * m * ωₙ) + + // critical damping (ζ = 1) + // c = 2 * m * ωₙ + + // smooth damp equation + // k * x(t) + 2 * √(k) * x'(t) + x''(t) = 0 + + // analytical solutions + // x(t) = e^(-√(k) * t) * (t * x'(0) + x(0) + √(k) * t * x(0)) + // x'(t) = e^(-√(k) * t) * (x'(0) + √(k) * x(0)) - + // e^(-√(k) * t) * √(k) * (t * x'(0) + x(0) + √(k) * t * x(0)) + + // value of k to settle in t seconds + // x(t) = 0.01 * x(0), x'(0) = 0 + // k = 44.0677 / t^2 + + const x0 = current - target + const sqrtk = 6.63835 / smoothTime + const ensqrtkt = Math.exp(-sqrtk * deltaTime) + const sqrtktx0 = sqrtk * deltaTime * x0 + const pos = ensqrtkt * (deltaTime * velocity + x0 + sqrtktx0) + const vel = ensqrtkt * (velocity + sqrtk * x0) - sqrtk * pos + + return [target + pos, vel] +} + +export function smoothDampAngle( + current: number, + target: number, + velocity: number, + smoothTime: number, + deltaTime: number +): [number, number] { + if (target - current > Math.PI) current += 2 * Math.PI + if (target - current < -Math.PI) current -= 2 * Math.PI + return smoothDamp(current, target, velocity, smoothTime, deltaTime) +} + +/** + * Smoothens a current value based on velocity while reducing the velocity. + * @param current - the current value + * @param velocity - the current velocity of the value + * @param smoothTime - the time it should take to smoothen the velocity to 0 + * @param deltaTime - the amount of time passed since last frame + * @returns the smoothened value and new velocity: [position, velocity] + */ +export function smoothSlide( + current: number, + velocity: number, + smoothTime: number, + deltaTime: number +): [number, number] { + // smooth slide equation (k = 0) + // c * x'(t) + x''(t) = 0 + + // analytical solutions + // x(t) = (e^(-c * t) * (-x'(0) + e^(c * t) * x'(0) + c * e^(c * t) * x(0))) / c + // x'(t) = -e^(-c * t) * (-x'(0) + e^(c * t) * x'(0) + c * e^(c * t) * x(0)) + + // (e^(-c * t) * (c * e^(c * t) * x'(0) + (c^2 * e^(c * t) * x(0)))) / c + + // value of c to settle in t seconds + // x(t) = 0.01 * x(0), x'(0) = 0 + // c = 4.60517 / t + + const c = 4.60517 / smoothTime + const enct = Math.exp(-c * deltaTime) + const ect = Math.exp(c * deltaTime) + const cectx0 = c * ect * current + const env0ev0c = enct * (-velocity + ect * velocity + cectx0) + const pos = env0ev0c / c + const vel = -env0ev0c + (enct * (c * ect * velocity + c * cectx0)) / c + + return [pos, vel] +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/mathUtils.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/mathUtils.ts.meta new file mode 100644 index 00000000..1ff29b65 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/mathUtils.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 15f12cd1-c4ad-4330-801d-7c42b77d7385 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 15f12cd1-c4ad-4330-801d-7c42b77d7385 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 66fd5c8a-a412-4bdb-9f02-09d7c0af9b79 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/notEmpty.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/notEmpty.ts new file mode 100644 index 00000000..8760b6de --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/notEmpty.ts @@ -0,0 +1,12 @@ +/** + * Checks for null or undefined and asserts that the value is neither. + * Designed to be used as part of a {@link Array.Filter} call. + * + * @param value - Value to be tested. + * @returns - True if it is neither null not undefined. + */ +export function notEmpty( + value: TValue | null | undefined +): value is TValue { + return value !== null && value !== undefined +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/notEmpty.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/notEmpty.ts.meta new file mode 100644 index 00000000..874fdd2c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/notEmpty.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 0b088d26-7880-4945-92db-3ed2c053d0b1 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 0b088d26-7880-4945-92db-3ed2c053d0b1 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 14c5c806-ad53-4058-a439-bb1ecdfdfc35 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/springAnimate.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/springAnimate.ts new file mode 100644 index 00000000..59a1be31 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/springAnimate.ts @@ -0,0 +1,52 @@ +export class SpringAnimate { + + // Spring constant + k: number + // Damping constant + damp: number + // Mass of the object + mass: number + + velocity: vec3 + + constructor(k: number, damp: number, mass: number) { + this.k = k + this.damp = damp + this.mass = mass + this.velocity = vec3.zero() + } + + /** + * Evaluates the new position of the object based on the spring dynamics. + * @param currentValue The current position of the object. + * @param targetValue The target position of the object. + * @returns The updated position of the object. + */ + public evaluate(currentValue: vec3, targetValue: vec3): vec3 { + // Calculate the spring force for each axis + const forceX = -this.k * (currentValue.x - targetValue.x) + const forceY = -this.k * (currentValue.y - targetValue.y) + const forceZ = -this.k * (currentValue.z - targetValue.z) + const force = new vec3(forceX, forceY, forceZ) + + // Damping for each axis + const damping = this.velocity.uniformScale(-this.damp) + + // Acceleration + const acceleration = force.add(damping).uniformScale(1 / this.mass) + + // Update velocity + this.velocity = this.velocity.add(acceleration.uniformScale(getDeltaTime())) + + // Update position + const updatedValue = currentValue.add( + this.velocity.uniformScale(getDeltaTime()) + ) + + return updatedValue + } + + public reset(): void { + this.velocity = vec3.zero() + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/springAnimate.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/springAnimate.ts.meta new file mode 100644 index 00000000..74b82595 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/springAnimate.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 09ba6d83-077d-4fda-9c19-704187455bde + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 09ba6d83-077d-4fda-9c19-704187455bde + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 3128028d-b3a6-4afc-b1ac-61d35389be51 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/validate.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/validate.ts new file mode 100644 index 00000000..ac053a5c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/validate.ts @@ -0,0 +1,19 @@ +/** + * A one line solution to checking if an object is undefined or null that + * asserts this so that strict compilers flag the variable as potentially + * undefined or null. + * + * @param object - The object that should be checked if it is undefined or null. + */ +export function validate( + object: T | undefined | null, + message: string | undefined = undefined +): asserts object is T { + if (object === undefined) { + throw new Error(message ?? "Attempted operation on undefined object.") + } + + if (object === null) { + throw new Error(message ?? "Attempted operation on null object.") + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/validate.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/validate.ts.meta new file mode 100644 index 00000000..b897a1b8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/validate.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! d619ef41-c9af-4fbd-a7d4-2d00af1474ea + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! d619ef41-c9af-4fbd-a7d4-2d00af1474ea + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 0f75c1b7-6726-44c3-a6fc-be19a6c9978c + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineMeshUtils.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineMeshUtils.ts new file mode 100644 index 00000000..08536c61 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineMeshUtils.ts @@ -0,0 +1,117 @@ +//Line vertices have 11 coords - 3 position, 3 previous, 3 tangent, and 2 uv +export type lineVertex = [ + number, + number, + number, + + number, + number, + number, + + number, + number, + number, + + number, + number +] + +/** + * Shifts vertices so that we can join corners of line segments w/ miter + * @param prevSegment direction of previous vertex + * @param nextSegment direction of next vertex + * @param widthOffset offset of the width + * @returns miterOffset - add or subtract this from a vertex to get offset needed + */ +export function getMiterOffset( + prevSegment: vec3, + nextSegment: vec3, + widthOffset: number +): vec3 { + let tangent = prevSegment.add(nextSegment).normalize() + let miter = new vec3(-tangent.y, tangent.x, 0) + let normalA = new vec3(-prevSegment.y, prevSegment.x, 0) + let scaleWidth = widthOffset / miter.dot(normalA) + return miter.uniformScale(scaleWidth) +} + +export function getSegmentNormalized(currentPoint: vec3, nextPoint: vec3) { + return currentPoint.sub(nextPoint).normalize() +} + +export function getTangent(prevSegment: vec3, nextSegment: vec3) { + return prevSegment.add(nextSegment).normalize() +} + +export function getEndWidth(current: vec3, next: vec3, widthAtVertex: number) { + let direction = next.sub(current) + let normalizedDir = new vec3(-direction.y, direction.x, 0).normalize() + return normalizedDir.uniformScale(widthAtVertex) +} + +/** + * Builds a segment of the line using its MeshBuilder + * @param point the position coordinates for the point + * @param tangent of the connecting line segments + * @param uv_v desired v coordinate for the vertex's uv map + * vertices are shifted for thickness in the shader + */ +export function buildSegment( + point: vec3, + prevSegment: vec3, + tangent: vec3, + uv_v: number +): number[] { + return [ + //left vertices and tangent + point.x, + point.y, + point.z, + prevSegment.x, + prevSegment.y, + prevSegment.z, + tangent.x, + tangent.y, + tangent.z, + //left uv + 0, + uv_v, + + //right vertices and tangent + point.x, + point.y, + point.z, + prevSegment.x, + prevSegment.y, + prevSegment.z, + tangent.x, + tangent.y, + tangent.z, + //right uv + 1, + uv_v, + ] +} + +// Sets up data for a single line vertex, for use in setVertexInterleaved +export function buildVertex( + position: vec3, + prevSegment: vec3, + tangent: vec3, + uv_u: number, + uv_v: number +): lineVertex { + return [ + position.x, + position.y, + position.z, + prevSegment.x, + prevSegment.y, + prevSegment.z, + tangent.x, + tangent.y, + tangent.z, + uv_u, + uv_v, + ] +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineMeshUtils.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineMeshUtils.ts.meta new file mode 100644 index 00000000..eae9e9cb --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineMeshUtils.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 81f3d4d4-bd15-403f-ab7c-d1e6873de1dc + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 81f3d4d4-bd15-403f-ab7c-d1e6873de1dc + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! 3763f10c-62bf-47d1-9eb5-9f727a625e04 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineRenderer.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineRenderer.ts new file mode 100644 index 00000000..d97389d6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineRenderer.ts @@ -0,0 +1,369 @@ +import * as utils from "./LineMeshUtils" + +import View, {ViewConfig} from "../View" + +import {YELLOW} from "../../color" +import NativeLogger from "../../NativeLogger" + +const DEFAULT_WIDTH = 1 +const UV_V_POSITION = 4 +const VERTEX_DATA_SIZE = 11 +const VERTICES_PER_POINT = 2 +const SEGMENT_DATA_SIZE = VERTEX_DATA_SIZE * VERTICES_PER_POINT +const DEFAULT_RENDER_ORDER = 20 + +const TAG = "LineRenderer" + +export type LineViewConfig = ViewConfig & { + material: Material + startColor?: vec4 + endColor?: vec4 + points: vec3[] + startWidth?: number + endWidth?: number + lookAtCamera?: boolean +} + +/** + * The LineRenderer is a custom component that draws a line in 3D space with RenderMeshVisual. + * It uses MeshBuilder to programmatically generate a line strip given a list of points provided by the user. + */ +export default class LineRenderer extends View { + private log = new NativeLogger(TAG) + + private _points: vec3[] = this.config.points ?? [] + private _startWidth: number = this.config.startWidth ?? DEFAULT_WIDTH + private _endWidth: number = this.config.endWidth ?? DEFAULT_WIDTH + private _startColor = this.config.startColor ?? YELLOW(1) + private _endColor = this.config.endColor ?? YELLOW(1) + private _lookAtCamera = this.config.lookAtCamera ?? false + + private meshBuilder = this.setupMeshBuilder() + private meshVertexData: number[] = [] + + protected material = this.config.material.clone() + private meshComponent: RenderMeshVisual + private mesh: RenderMesh + + constructor(config: LineViewConfig) { + super(config) + // Create a container for the line mesh and parent it immediately to the scene object containing this component + // Prevent hierarchy issues, such as having a component attached to a SceneObject that is parented to another scene object + // Transformations should be done on the parent object rather than directly on the line renderer + + this.meshComponent = this.container.createComponent( + "Component.RenderMeshVisual" + ) + this.mesh = this.buildMesh() + + // Set up mesh component and material + this.meshComponent.mesh = this.mesh + this.meshComponent.mainMaterial = this.material + this.meshComponent.mainMaterial.mainPass.blendMode = 0 + this.meshComponent.setRenderOrder(DEFAULT_RENDER_ORDER) + this.setupMaterial() + } + + /** + * Returns a shallow copy of the array of points that the LineRenderer will draw a line between. + */ + get points(): vec3[] { + return this._points.slice() + } + + /** + * Set the array of points that the LineRenderer will draw a line between. + */ + set points(points: vec3[]) { + this._points = points + //clear existing mesh data before rebuilding with provided points + this.clearMesh() + this.buildMesh() + } + + /** + * Gets the color of the line at the start. + */ + get startColor(): vec4 { + return this._startColor + } + + /** + * Sets the color of the line at the start. + */ + set startColor(color: vec4) { + this._startColor = color + this.material.mainPass.startColor = this._startColor + } + + /** + * Gets the color of the line at the end. + */ + get endColor(): vec4 { + return this._endColor + } + + /** + * Sets the color of the line at the end. + */ + set endColor(color: vec4) { + this._endColor = color + this.material.mainPass.endColor = this._endColor + } + + /** + * Gets the width of the line at the start. + */ + get startWidth(): number { + return this._startWidth + } + + /** + * Sets the width of the line at the start. + */ + set startWidth(newWidth: number) { + this._startWidth = newWidth + this.material.mainPass.startWidth = this._startWidth + } + + /** + * Gets the width of the line at the end. + */ + get endWidth(): number { + return this._endWidth + } + + /** + * Sets the width of the line at the end. + */ + set endWidth(newWidth: number) { + this._endWidth = newWidth + this.material.mainPass.endWidth = this._endWidth + } + + get lookAtCamera() { + return this._lookAtCamera + } + + set lookAtCamera(isEnabled: boolean) { + this._lookAtCamera = isEnabled + this.material.mainPass.billboarding = this._lookAtCamera + } + + /** + * Sets line to a single solid color instead of a gradient + * @param color color of the line + */ + setSolidColor(color: vec4) { + this.startColor = color + this.endColor = color + } + + /** + * Updates position of point (in this._points) at the indicated index + * @param index (index in the points[] array) of the vertex to be changed + * @param newPos the vertex's new position + */ + updateVertexPosition(index: number, newPos: vec3) { + if (index >= this._points.length) { + this.log.w( + `Index ${index} not in range for line with ${this._points.length} points!` + ) + return + } + + // Modify points array + this._points[index] = newPos + + // Calculate where to shift mesh vertices at point + var tangent: vec3 + var prevPoint: vec3 + var uv_v: number + if (index === 0) { + prevPoint = this.points[index] + tangent = this._points[index + 1].sub(this._points[index]).normalize() + uv_v = 0 + } else if (index === this._points.length - 1) { + prevPoint = this.points[index - 1] + tangent = this._points[index].sub(this._points[index - 1]).normalize() + uv_v = 1 + } else { + // Get uv_v coords from mesh vertex data, use it to calculate uv, width, and miter + prevPoint = this.points[index - 1] + uv_v = + this.meshVertexData[ + index * VERTICES_PER_POINT * VERTEX_DATA_SIZE + UV_V_POSITION + ] + let prevSegment = utils.getSegmentNormalized( + this._points[index - 1], + this._points[index] + ) + let nextSegment = utils.getSegmentNormalized( + this._points[index], + this._points[index + 1] + ) + tangent = utils.getTangent(prevSegment, nextSegment) + } + let leftVertexData = utils.buildVertex(newPos, prevPoint, tangent, 0, uv_v) + let rightVertexData = utils.buildVertex(newPos, prevPoint, tangent, 1, uv_v) + + this.meshBuilder.setVertexInterleaved( + index * VERTICES_PER_POINT, + leftVertexData + ) + this.meshBuilder.setVertexInterleaved( + index * VERTICES_PER_POINT + 1, + rightVertexData + ) + this.meshBuilder.updateMesh() + } + + /** + * Sets up mesh builder as a triangle strip with position coordinates and additional parameters: previous segment, direction, and uv. + * These parameters are used to calculate thickness offset in the vertex shader, allowing us to avoid calls to the native layer when billboarding or changing width. + * @returns meshBuilder with vertex configuration: position (3), prevSegment (3), direction (3), textureO (2) + */ + private setupMeshBuilder(): MeshBuilder { + var meshBuilder = new MeshBuilder([ + {name: "position", components: 3}, + {name: "prevSegment", components: 3}, + {name: "direction", components: 3}, + {name: "texture0", components: 2}, + ]) + + meshBuilder.topology = MeshTopology.TriangleStrip + meshBuilder.indexType = MeshIndexType.None + return meshBuilder + } + + /** + * Builds the line as a triangle strip mesh using MeshBuilder + * @returns the mesh created by buildGeometry() + */ + private buildMesh(): RenderMesh { + this.buildGeometry() + if (this.meshBuilder.isValid()) { + this.meshBuilder.updateMesh() + return this.meshBuilder.getMesh() + } else { + throw new Error("LineRenderer: mesh data invalid") + } + } + + /** + * Clears all existing mesh data, used for when we want to reset points + */ + private clearMesh() { + if (this.meshBuilder.isValid()) { + this.meshVertexData = [] + } + if (this.meshBuilder.getVerticesCount()) { + this.meshBuilder.eraseVertices(0, this.meshBuilder.getVerticesCount()) + } + } + + /** + * Builds geometry of a line as a triangle strip, using coordinates provided for segments + * Updates the MeshBuilder with vertex information + */ + private buildGeometry() { + if (this._points === undefined || this._points.length <= 1) { + this.log.w( + "2 or more vertices must be provided in order to render a line!" + ) + return + } + + // Used to calculate uvs + let totalLineLength = this.getLineLength() + let lengthAtVertex = 0 + + // Used to calculate miter for bends in segments + let segmentBefore = null + let segmentAfter = null + + // Append all vertex data in one large array + let vertexArraySize = this._points.length * SEGMENT_DATA_SIZE + let vertexData: number[] = Array(vertexArraySize) + + // Build each line segment + let dataIndex = 0 + for (let i = 0; i < this._points.length; i++) { + let tangent: vec3 + let prevSegment: vec3 + let uv_v: number + + // Start point - calculate width offset direction based on next vertex only + if (i === 0) { + prevSegment = tangent = this._points[i + 1] + .sub(this._points[i]) + .normalize() + uv_v = 0 + } + + // End point - calculate width offset direction based on previous vertex only + else if (i === this._points.length - 1) { + prevSegment = tangent = this._points[i] + .sub(this._points[i - 1]) + .normalize() + uv_v = 1 + } + + // Middle points + else { + // Calculate width at vertex, assuming linear change + lengthAtVertex += this._points[i].distance(this._points[i - 1]) + uv_v = lengthAtVertex / totalLineLength + + // Get segment vectors to calculate miter + if (segmentBefore === null) { + segmentBefore = this._points[i].sub(this._points[i - 1]).normalize() + } + segmentAfter = this._points[i + 1].sub(this._points[i]).normalize() + prevSegment = segmentBefore + tangent = utils.getTangent(segmentBefore, segmentAfter) + // Increment to next segment + segmentBefore = segmentAfter + } + + vertexData.splice( + dataIndex, + SEGMENT_DATA_SIZE, + ...utils.buildSegment(this._points[i], prevSegment, tangent, uv_v) + ) + + if (i <= this._points.length - 1) { + dataIndex += SEGMENT_DATA_SIZE + } + } + + // Do only one call to native layer to save costs + this.meshVertexData = vertexData + this.meshBuilder.appendVerticesInterleaved(this.meshVertexData) + + // Update mesh with changes once line building is complete + this.meshBuilder.updateMesh() + } + + /** + * Calculates length of current line, used to interpolate gradients & width + * @returns total length of line with segments indicated + */ + private getLineLength(numSegments = this._points.length) { + var length = 0 + for (let i = 0; i < numSegments - 1; i++) { + length += this._points[i].distance(this._points[i + 1]) + } + return length + } + + /** + * Sets up line material to enable gradients along the line + */ + private setupMaterial() { + this.startColor = this._startColor + this.endColor = this._endColor + this.startWidth = this._startWidth + this.endWidth = this._endWidth + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineRenderer.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineRenderer.ts.meta new file mode 100644 index 00000000..fe7736a3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/LineRenderer/LineRenderer.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 1901cbf7-8f8d-4faa-b2a3-cbdeed65e144 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 1901cbf7-8f8d-4faa-b2a3-cbdeed65e144 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! f07b081f-d186-472d-ba94-701d29c0f1ee + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/MeshView.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/MeshView.ts new file mode 100644 index 00000000..54f28922 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/MeshView.ts @@ -0,0 +1,162 @@ +import * as color from "../color" + +import View, {ViewConfig} from "./View" + +import {aabb} from "../aabb" +import {Spatial} from "../Spatial" + +// import * as color from "../../util/color" + +// import {Asset, Component, vec3, vec4} from "../../platform/LensCore" +// import View, {ViewConfig} from "../View" + +// import {Spatial} from "../../Spatial/Spatial" +// import {aabb} from "../../primitives/aabb" + +/** + * The config for the MeshView + */ +export type MeshViewConfig = ViewConfig & { + mesh: RenderMesh + material?: Material + renderOrder?: number + texture?: Texture +} + +/** + * A subclass of View that has a RenderMeshVisual Component. + * You must provide the RenderMesh and Material via the MeshViewConfig. + * NOTE: that the blendMode is set to `0` on the material by default. + * This is almost always the right choice, and it's easy to change + * it to something else if your usecase is different + */ +export default class MeshView extends View implements Spatial { + private component: RenderMeshVisual + + get aabbMin(): vec3 { + return this.component.mesh.aabbMin + } + get aabbMax(): vec3 { + return this.component.mesh.aabbMax + } + + get aabbSize(): vec3 { + return this.component.mesh.aabbMax.sub(this.component.mesh.aabbMin) + } + + get worldAabbMax(): vec3 { + return this.worldPosition.add(this.component.mesh.aabbMax) + } + + get worldAabbMin(): vec3 { + return this.worldPosition.add(this.component.mesh.aabbMin) + } + + get worldAabbSize(): vec3 { + return this.worldAabbMax.sub(this.worldAabbMin) + } + + get material() { + return this.component.mainMaterial + } + + get mainPass() { + return this.component.mainPass + } + + getAABB(): aabb { + return {min: this.component.mesh.aabbMin, max: this.component.mesh.aabbMax} + } + + getWorldAABB(): aabb { + return { + min: this.component.worldAabbMin(), + max: this.component.worldAabbMax(), + } + } + + /** + * @inheritdoc + */ + override setAlpha(a: number) { + super.setAlpha(a) + if ( + this.component.mainPass !== undefined && + this.component.mainPass.baseColor !== undefined + ) { + // otherwise, set the alpha directly + this.component.mainPass.baseColor = color.withAlpha( + this.component.mainPass.baseColor, + a + ) + } + } + + constructor(config: MeshViewConfig) { + super(config) + this.component = this.container.createComponent( + "Component.RenderMeshVisual" + ) + + let material + if (this.config.material) { + material = this.config.material.clone() + } else { + throw new Error("No material specified.") + } + + this.component.mesh = config.mesh + this.component.mainMaterial = material + + this.component.mainMaterial.mainPass.blendMode = + this.config.material?.mainPass.blendMode ?? 0 + + if (this.config.renderOrder) { + this.component.setRenderOrder(this.config.renderOrder) + } + + if (this.config.texture) { + this.component.mainMaterial.mainPass.baseTex = this.config.texture + } + } + + get baseColor(): vec4 { + return this.component.mainMaterial.mainPass.baseColor + } + + set baseColor(color: vec4) { + this.component.mainMaterial.mainPass.baseColor = color + } + + set renderOrder(order: number) { + this.component.setRenderOrder(order) + } + + /** + * Adds a new material after cloning it. The cloned material is returned. + * @param material the material to be added + * @returns the cloned material + */ + addMaterial(material: Material): Material { + // Clones material so we can modify it within this MeshView only - otherwise changing this will modify all instances of the material + let clonedMaterial = material.clone() + this.component.addMaterial(clonedMaterial) + return clonedMaterial + } + + getMaterialByIndex(index: number): Material { + return this.component.getMaterial(index) + } + + getMaterialsCount(): number { + return this.component.getMaterialsCount() + } + + clearMaterials() { + this.component.clearMaterials() + } + + updateMesh(mesh: RenderMesh) { + this.component.mesh = mesh + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/MeshView.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/MeshView.ts.meta new file mode 100644 index 00000000..49552a42 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/MeshView.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 0f043e88-0d32-42a4-86bf-1cd6fa23c720 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 0f043e88-0d32-42a4-86bf-1cd6fa23c720 + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! df3df642-c80a-47a8-8b2a-72fab1a6be48 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/View.ts b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/View.ts new file mode 100644 index 00000000..14be9cde --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/View.ts @@ -0,0 +1,445 @@ +/* + * View implements a generic baseclass with useful utilities that many + * subclasses can take advantage of. + * + * Views are meant to be hierarchical, where each parent view is passed to + * the constructor of the child views. However, a lensCore SceneObject may + * also be passed as a valid parent + */ +import Event from "../Event" +import ReplayEvent from "../ReplayEvent" + +export type Defaults = Partial<{ + font: Font + fontSize: number + textColor: vec4 + colorMask: vec4b +}> + +export type ViewConfig = Partial<{ + position: vec3 + rotation: quat + scale: number + enabled: boolean + name: string + defaults: Defaults +}> + +export type OnDestroyCallback = () => void + +export default class View { + protected container: SceneObject + private _defaults: Defaults | null + protected childViews: View[] = [] + private transform: Transform + protected attachedToScene = false + private onDestroyCallbacks: OnDestroyCallback[] = [] + + private static onCreateViewEvent = new Event>() + public static onCreateView = View.onCreateViewEvent.publicApi() + + private static onDestroyViewEvent = new Event>() + public static onDestroyView = View.onDestroyViewEvent.publicApi() + + private onEnabledEvent = new ReplayEvent() + public onEnabled = this.onEnabledEvent.publicApi() + + isDestroyed: boolean = false + + // Internally track the current alpha of the view + protected _alpha = 1 + + /** + * Returns the current alpha of the view + */ + get alpha() { + return this._alpha + } + + /** + * @inheritdoc + */ + set alpha(a: number) { + this.setAlpha(a) + } + + /** + * Set the alpha of the View to a, and recursively apply this alpha to all descendents. + * The alpha will be applied by setting the .a component of baseColor to a. + * @param a The value to set the alpha of the view to, from 0 to 1 + */ + setAlpha(a: number) { + this.setAlphaInternal(a) + } + + constructor(private _config: Config) { + this.container = global.scene.createSceneObject(this._config.name ?? "View") + this.transform = this.container.getTransform() + //this.addComponent("ScreenTransform"). + + if (this._config.position !== undefined) { + this.position = this._config.position + } + + if (this._config.rotation !== undefined) { + this.localRotation = this._config.rotation + } + + if (this._config.scale !== undefined) { + this.localScale = this._config.scale + } + + if (this._config.enabled === false) { + this.setEnabled(false) + } else { + this.onEnabledEvent.invoke(true) + } + + this._defaults = this.config.defaults ?? null + + View.onCreateViewEvent.invoke(this) + } + + destroy() { + if (this.isDestroyed === true) { + return + } + + View.onDestroyViewEvent.invoke(this) + + /* + this.getSceneObject().destroy() will clean up all the scene objects but not the view objects + */ + this.isDestroyed = true + this.cascadeDestroy() + this.getSceneObject().destroy() + + for (let callback of this.onDestroyCallbacks) { + callback() + } + } + + private cascadeDestroy() { + for (let child of this.childViews) { + child.destroy() + } + } + + /** + * addOnDestroyCallback adds a callback to call when the view is destroyed + */ + addOnDestroyCallback(callback: OnDestroyCallback) { + this.onDestroyCallbacks.push(callback) + } + + /** + * Actually sets the alpha internally on the view, and cascades the call to + * the view's children + */ + private setAlphaInternal(a: number) { + this._alpha = a + // also set alpha on all of the child views + for (let child of this.childViews) { + child.setAlpha(a) + } + } + + set localPosition(position: vec3) { + this.transform.setLocalPosition(position) + } + + get localPosition(): vec3 { + return this.transform.getLocalPosition() + } + + /** + * @deprecated pleasre use localPosition + */ + set position(position: vec3) { + this.transform.setLocalPosition(position) + } + + /** + * @deprecated use localPosition instead + */ + get position(): vec3 { + return this.transform.getLocalPosition() + } + + // set the world position of an object + set worldPosition(position: vec3) { + this.transform.setWorldPosition(position) + } + + get worldPosition(): vec3 { + return this.transform.getWorldPosition() + } + + /** + * @deprecated use localScale instead + */ + set scale(scale: number) { + this.transform.setLocalScale(new vec3(scale, scale, scale)) + } + + /** + * Return the local scale of an object, assuming uniform scaling + */ + get localScale(): number { + return this.transform.getLocalScale().x + } + + // set the scale of an object, enforcing uniform scaling + set localScale(scale: number) { + this.transform.setLocalScale(new vec3(scale, scale, scale)) + } + + get localScaleVec3(): vec3 { + return this.transform.getLocalScale() + } + + set localScaleVec3(vec: vec3) { + this.transform.setLocalScale(vec) + } + + // set the world scale of an object, enforcing uniform scaling + set worldScale(scale: number) { + this.transform.setWorldScale(new vec3(scale, scale, scale)) + } + + // get the world scale, assuming uniform scaling + get worldScale() { + return this.transform.getWorldScale().x + } + + set worldScaleVec3(scale: vec3) { + this.transform.setWorldScale(scale) + } + + get worldScaleVec3() { + return this.transform.getWorldScale() + } + + set localRotation(rotation: quat) { + this.transform.setLocalRotation(rotation) + } + + get localRotation() { + return this.transform.getLocalRotation() + } + + set worldRotation(rotation: quat) { + this.transform.setWorldRotation(rotation) + } + + get worldRotation() { + return this.transform.getWorldRotation() + } + + get name(): string { + return this.container.name + } + + // Attach this view to a lensCore SceneObject + public attachToScene(parent: SceneObject): this { + // attach the scene + this.attachToParent(parent) + + // then, fire the onAttachToScene callbacks recursively + this.cascadeAttachToSceneCallbacks() + return this + } + + // Get the underlying scene object. This should be viewed as an "escape hatch" + // for doing advanced things + public getSceneObject() { + return this.container + } + + // Get the underlying transform for this object. + public getTransform() { + return this.transform + } + + /** + * @param worldPos - a point representing something's world position + * @returns the point's position relative to this view + */ + public getRelativePosOfPoint(worldPos: vec3) { + return this.transform.getInvertedWorldTransform().multiplyPoint(worldPos) + } + + // isVisible returns true if this component is both enabled and its alpha is not zero + public isVisible(): boolean { + return this.getSceneObject().enabled && this.alpha !== 0 + } + + public setEnabled(enabled: boolean) { + if (enabled === this.getSceneObject().enabled) return + this.getSceneObject().enabled = enabled + this.onEnabledEvent.invoke(enabled) + } + + public isEnabled(): boolean { + return this.getSceneObject().enabled + } + + public addComponent(typeName: K) { + return this.container.createComponent(typeName) as ComponentNameMap[K] + } + + public getComponent(typeName: K) { + return this.container.getComponent(typeName) as ComponentNameMap[K] + } + + // Add a child view to this view + protected addChild>( + child: Child, + configure?: (c: Child) => void, + preserveWorldTransform: boolean = false + ): Child { + child.attachToParent(this, preserveWorldTransform) + this.childViews.push(child) + if (configure !== undefined) { + configure(child) + } + + // the child is being attached after the parent, so it needs + // to have its onAttachToScene hook called, recursively + if (this.attachedToScene) { + child.cascadeAttachToSceneCallbacks(this._defaults) + } + + return child + } + + // construct and add a child + protected newChild< + Conf, + Child extends View + >( + ctor: {new (conf: Conf): Child}, + conf: Conf, + customize?: (c: Child) => void + ): Child { + return this.addChild(new ctor(conf), customize) + } + + /** + * @deprecated use destroyChild or detachChild instead. + */ + protected removeChild>(child: Child): void { + child.destroy() + let index = this.childViews.indexOf(child) + if (index === -1) { + return + } + this.childViews.splice(index, 1) + } + + /** + * Destroys and removes the child from this View + * @param child the child to be destroyed + * @returns whether the child was destroyed + */ + protected destroyChild>(child: Child): boolean { + let index = this.childViews.indexOf(child) + if (index === -1) { + return false + } + child.destroy() + this.childViews.splice(index, 1) + return true + } + + /** + * Detaches child from parent and removes the child from this View + * @param child the child to be detached + * @returns whether the child was detached + */ + protected detachChild>(child: Child): boolean { + let index = this.childViews.indexOf(child) + if (index === -1) { + return false + } + child.getSceneObject().removeParent() + this.childViews.splice(index, 1) + return true + } + + protected get config(): Config { + return this._config + } + + // onAttachToScene is a lifecycle hook that happens when a view is attached + // to its parent. It is the place where "defaults" should be used, since they + // will not cascade prior to this hook + protected onAttachToScene(defaults: Defaults, parentView: View | null) { + // default is noop + } + + // Set a a property on all child views. If a View already has the property, + // it is assumed that View will handle setting the property on its child + // views, or (more likely) is a leaf node in the View tree. If a View does + // not have a property, that view's children will be added to this (pre-order) + // traversal + protected recursivelySetChildProperty< + FieldName extends keyof this, + FieldType extends this[FieldName] + >(fieldName: FieldName, newValue: FieldType) { + let viewStack: any[] = [...this.childViews] + while (viewStack.length > 0) { + let view = viewStack.pop() + + if (fieldName in view) { + view[fieldName] = newValue + } else { + viewStack.push(...view.childViews) + } + } + } + + private attachToParent( + parent: View | SceneObject, + preserveWorldTransform: boolean = false + ) { + // set the scene object parent + let parentSceneObject: SceneObject = + parent instanceof View ? parent.getSceneObject() : parent + if (preserveWorldTransform) { + this.container.setParentPreserveWorldTransform(parentSceneObject) + } else { + this.container.setParent(parentSceneObject) + } + } + + private cascadeAttachToSceneCallbacks( + parentDefaults: Defaults | null = null, + parentView: View | null = null + ) { + // creates a prototype cain so that defaults will "fall back" + // to the parent's defaults + const objectWithFallback = (obj: any, fallback: any) => { + let result = Object.create(fallback, {}) + Object.assign(result, obj) + return result + } + + // compute the defaults as either a prototype chain of the available + // defaults, or the first non-null default + let defaults = + parentDefaults !== null && this._defaults !== null + ? objectWithFallback(this._defaults, parentDefaults) + : parentDefaults ?? this._defaults ?? {} + + // cache the computed defaults for any future attaches + this._defaults = defaults + + this.attachedToScene = true + this.onAttachToScene(defaults, parentView) + + for (let child of this.childViews) { + child.cascadeAttachToSceneCallbacks(defaults, this) + } + } +} diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/View.ts.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/View.ts.meta new file mode 100644 index 00000000..489700e3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/Utils/views/View.ts.meta @@ -0,0 +1,40 @@ +- ! + ImporterSettings: ! + {} + ImportedAssetIds: + TypeScriptAsset: ! 1a552a17-fe98-4bcf-ac13-8dd76d97a0ea + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 1a552a17-fe98-4bcf-ac13-8dd76d97a0ea + PackageType: NotAPackage + AssetDataMap: + TypeScriptAsset: ! f1a85e72-fcc9-47d7-9750-858556824976 + PackagePolicy: CannotBeUnpacked + DependentFiles: + [] + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} +- ! + Icon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] + SvgIcon: "" diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/package.native b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/package.native new file mode 100644 index 00000000..eec49341 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/package.native @@ -0,0 +1,40 @@ +- ! + PackagePath: "" + StudioVersion: + major: 5 + minor: 4 + patch: 0 + build: 24121004 + type: Unset + Description: |- + Release + + Documentation: + https://docs.snap.com/spectacles/spectacles-frameworks/spectacles-interaction-kit/get-started + + https://docs.snap.com/lens-studio/api/interfaces/Lens_Scripting.Packages_SpectaclesInteractionKit_SIK.SIKAPI.html + + Preliminary Setup: + - Ensure the main camera has a Device Tracking component (w/ tracking mode set to World). + - Ensure the device type override is set to Spectacles (cogwheel at the top-right of the preview panel > Device Type Override > Spectacles). + - Ensure that this package is unpacked in your scene (right-click the package in Asset Browser and unpack if given the option). + SvgIcon: "" + InternalVersion: 1 + VersionMajor: 0 + VersionMinor: 10 + VersionPatch: 0 + UpdateCheckpoint: 52 + ExportUid: be6fd4cf-737d-41f1-adeb-b97e6d34b3c4 + ComponentUid: 0f7a0bbe-777c-41a5-b979-0b0430f25836 + CurrentVisibility: Editable + MaxVisibility: Editable + Instantiable: ! 00000000-0000-0000-0000-000000000000 + AssetLibraryDependencyStructure: ! + Name: SpectaclesInteractionKit + AssetId: 1aPW5eMfMPeP1615dXiqyN + Hash: 6d766edbbf734c74c19e233d32d7b22c + Version: + major: 0 + minor: 10 + patch: 0 + build: 0 diff --git a/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/package.native.meta b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/package.native.meta new file mode 100644 index 00000000..e56e66ec --- /dev/null +++ b/Spectacles-2-Unitree/Assets/SpectaclesInteractionKit/package.native.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + NativePackageDescriptor: ! 58bd1d70-15ee-48cb-8387-796cc9151440 + ImporterName: NativePackageDescriptorImporter + PrimaryAsset: ! 58bd1d70-15ee-48cb-8387-796cc9151440 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + {} diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscFinal.mat b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscFinal.mat new file mode 100644 index 00000000..fd23d910 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscFinal.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 04260b77-6a88-405b-a413-f02f2cb6f291 +- ! + CachedProperties: + - Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 0.470130, z: 0.267262, w: 0.749996} + baseTex: + typeIdx: 9 + value: + id: 6bc87d79-7748-4da4-8f90-a036bb6ada55 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! ed11a32f-2415-41b3-8eac-cfb2cd729437 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscFinal.mat.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscFinal.mat.meta new file mode 100644 index 00000000..3a8352bf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscFinal.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 101c21e9-bd2b-4a29-a0ed-308188a11740 + ImporterName: MaterialImporter + PrimaryAsset: ! 101c21e9-bd2b-4a29-a0ed-308188a11740 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscTemp.mat b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscTemp.mat new file mode 100644 index 00000000..21fdfa32 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscTemp.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! ce8eb075-84b7-4543-9481-f09c5e335cf4 +- ! + CachedProperties: + - Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: false + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.450000} + baseTex: + typeIdx: 9 + value: + id: 6bc87d79-7748-4da4-8f90-a036bb6ada55 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! ed11a32f-2415-41b3-8eac-cfb2cd729437 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscTemp.mat.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscTemp.mat.meta new file mode 100644 index 00000000..d403df75 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Materials/DiscTemp.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 59f3fc28-f592-4a3e-9415-1ffad3884598 + ImporterName: MaterialImporter + PrimaryAsset: ! 59f3fc28-f592-4a3e-9415-1ffad3884598 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabFinalPosition.prefab b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabFinalPosition.prefab new file mode 100644 index 00000000..d4203504 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabFinalPosition.prefab @@ -0,0 +1,54 @@ +- ! + PackagePath: "" + objects: + - ! 1364a1e6-3aa4-449c-9f55-7a84ff433746 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: PrefabFinalPosition + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! cdf24e23-0bba-42e4-bb71-cc2ba5ccce6a + Components: + [] +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 10 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 101c21e9-bd2b-4a29-a0ed-308188a11740 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Texture + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -90.000000, z: 0.000000} + scale: {x: 20.000000, y: 20.000000, z: 20.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! cda3df6d-5e66-471c-8fbd-d6305a8eb190 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabFinalPosition.prefab.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabFinalPosition.prefab.meta new file mode 100644 index 00000000..5492e4db --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabFinalPosition.prefab.meta @@ -0,0 +1,77 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! aab7eac5-7070-4adf-a352-c52c8e12c818 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! aab7eac5-7070-4adf-a352-c52c8e12c818 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + ObjectPrefab: ! d855fde8-15fe-45e1-90cc-e6bfcf8a7258 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: PrefabFinalPosition + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 5d6c5cb2-ee6e-4456-bf55-f89d4d9b24d8 + Components: + [] +- ! + PackagePath: "" + objects: + - ! 1dea88b1-5cc1-462d-9990-b3a172a8341b + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: Texture + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -90.000000, z: 0.000000} + scale: {x: 20.000000, y: 20.000000, z: 20.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 92968060-4253-4989-8906-5142bcfe9848 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 10 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 101c21e9-bd2b-4a29-a0ed-308188a11740 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + SourceRemaps: + - 1364a1e6-3aa4-449c-9f55-7a84ff433746: 1dea88b1-5cc1-462d-9990-b3a172a8341b + - aab7eac5-7070-4adf-a352-c52c8e12c818: 35ddfb3f-d702-42c9-a5e1-de8ddae81b29 + - cda3df6d-5e66-471c-8fbd-d6305a8eb190: 92968060-4253-4989-8906-5142bcfe9848 + - cdf24e23-0bba-42e4-bb71-cc2ba5ccce6a: 5d6c5cb2-ee6e-4456-bf55-f89d4d9b24d8 + SourceState: ! 35ddfb3f-d702-42c9-a5e1-de8ddae81b29 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabTemporaryPosition.prefab b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabTemporaryPosition.prefab new file mode 100644 index 00000000..69e3ebb6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabTemporaryPosition.prefab @@ -0,0 +1,54 @@ +- ! + PackagePath: "" + objects: + - ! 20279135-6ec9-43cd-8a29-d4917aa18978 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: PrefabTemporaryPosition + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 2b6ecde6-54c7-4f1a-a408-1bf9e2d59a51 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Texture + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: -90.000000, y: -90.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! eb98e120-6ce8-4482-bd07-d40d36f6f4e5 +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 59f3fc28-f592-4a3e-9415-1ffad3884598 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabTemporaryPosition.prefab.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabTemporaryPosition.prefab.meta new file mode 100644 index 00000000..9aaea84e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Prefab/PrefabTemporaryPosition.prefab.meta @@ -0,0 +1,77 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! 6c356ea2-7d6b-4fa2-8bba-efc695359cbd + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! 6c356ea2-7d6b-4fa2-8bba-efc695359cbd + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + ObjectPrefab: ! 7dd96ec9-1d11-476d-8d9c-0799eed0fee6 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + PrefabRemaps: + [] + Name: Texture + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: -20.000000} + rotation: {x: -90.000000, y: -90.000000, z: 0.000000} + scale: {x: 10.000000, y: 10.000000, z: 10.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 56042a37-da14-45d6-a7d6-f9a6c98b000c +- ! + PrefabRemaps: + [] + Name: Image + Enabled: true + RenderOrder: 0 + StretchMode: Fit + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 59f3fc28-f592-4a3e-9415-1ffad3884598 + FlipX: false + FlipY: false + Pivot: {x: 0.000000, y: 0.000000} + ExtentsTarget: ! 00000000-0000-0000-0000-000000000000 +- ! + SourceRemaps: + - 20279135-6ec9-43cd-8a29-d4917aa18978: b3cfdd55-ce49-455b-a91b-e1d566528bda + - 2b6ecde6-54c7-4f1a-a408-1bf9e2d59a51: 1c1bdfbd-c5dd-4fe1-9088-5112538bfc9f + - 6c356ea2-7d6b-4fa2-8bba-efc695359cbd: 8dde2477-efa4-4c33-b238-13ea6fe2670f + - eb98e120-6ce8-4482-bd07-d40d36f6f4e5: 56042a37-da14-45d6-a7d6-f9a6c98b000c + SourceState: ! 8dde2477-efa4-4c33-b238-13ea6fe2670f +- ! + PackagePath: "" + objects: + - ! b3cfdd55-ce49-455b-a91b-e1d566528bda + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: PrefabTemporaryPosition + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 1c1bdfbd-c5dd-4fe1-9088-5112538bfc9f + Components: + [] diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/CoordinationClient.ts b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/CoordinationClient.ts new file mode 100644 index 00000000..9429ca8f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/CoordinationClient.ts @@ -0,0 +1,518 @@ +import { HandType } from "SpectaclesInteractionKit/Providers/HandInputData/HandType"; +import { allLandmarks, LandmarkName, wristLandmarks } from "SpectaclesInteractionKit/Providers/HandInputData/LandmarkNames"; +import TrackedHand from "SpectaclesInteractionKit/Providers/HandInputData/TrackedHand"; +import * as FunctionTimingUtils from "SpectaclesInteractionKit/Utils/debounce"; +import { SimulationImageController } from "./SimulationImage"; +import { flat, tr } from "Unitree2Spectacles/Scripts/TS/Utils"; + +// Define the CancelToken type to match what's returned by FunctionTimingUtils +type CancelToken = ReturnType; + +/** + * Client for communicating with the Spectacles-2-Unitree Coordination server. + */ +@component +export class CoordinationClient extends BaseScriptComponent { + + @input + serverUrl: string = "wss://spectaclexr.com/ws"; + + @input + private logs: Text; + + @input + private img_sim: Image; + + private socket: WebSocket; + private clientId: string = null; + public pairingStatus: "disconnected" | "waiting" | "paired" = "disconnected"; + private pairedWithId: string = null; + private pairedWithType: string = null; + private reconnectTimer: CancelToken = null; + // Delay between reconnection attempts in milliseconds + private reconnect_delay: number = 1000; + // Remote service module for fetching data + private remoteServiceModule: RemoteServiceModule = require("LensStudio:RemoteServiceModule"); + + // Timer for connection health checks + private connectionCheckTimer: CancelToken = null; + + private simImgController: SimulationImageController = null; + + async onAwake() { + try { + await this.connectToServer(); + this.simImgController = new SimulationImageController(this.img_sim); + // Start periodic connection health checks + this.startConnectionHealthChecks(); + } catch (e) { + print("Error: " + e); + } + } + + onDestroy() { + + if (this.simImgController) { + this.simImgController.dispose(); + this.simImgController = null; + } + + // Clean up connection check timer when component is destroyed + if (this.connectionCheckTimer !== null) { + FunctionTimingUtils.clearTimeout(this.connectionCheckTimer); + this.connectionCheckTimer = null; + } + + // Also clean up reconnect timer + if (this.reconnectTimer !== null) { + FunctionTimingUtils.clearTimeout(this.reconnectTimer); + this.reconnectTimer = null; + } + + // Close socket if open + if (this.socket) { + this.socket.close(); + this.socket = null; + } + } + + /** + * Starts periodic connection health checks to detect disconnections + */ + private startConnectionHealthChecks() { + // Clear any existing timer + if (this.connectionCheckTimer !== null) { + FunctionTimingUtils.clearTimeout(this.connectionCheckTimer); + } + + // Set up recurring check + this.connectionCheckTimer = FunctionTimingUtils.setTimeout(() => { + this.checkConnectionHealth(); + // Schedule next check if component is still active + if (this.enabled) { + this.startConnectionHealthChecks(); + } + }, this.reconnect_delay); + } + + /** + * Checks if the connection is healthy and initiates reconnection if needed + */ + private checkConnectionHealth() { + const socketClosed = !this.socket || + this.socket.readyState === 2 || // closing + this.socket.readyState === 3; // closed + + if (socketClosed) { + // Only log if we were previously connected + if (this.pairingStatus !== "disconnected") { + this.log("Connection lost. Attempting to reconnect..."); + this.pairingStatus = "disconnected"; + this.pairedWithId = null; + this.pairedWithType = null; + + this.simImgController.showStatic(); + } + + // Initiate reconnection if not already scheduled + if (this.reconnectTimer === null) { + this.scheduleReconnect(); + } + } + } + + private async connectToServer() { + try { + // Close existing socket if present + if (this.socket) { + this.socket.close(); // NOTE: not sure if this is actually working or if there is an issue with Lens Studio's Spectacles simulation. + this.socket = null; + } + + // Clear any existing reconnect timer + if (this.reconnectTimer !== null) { + FunctionTimingUtils.clearTimeout(this.reconnectTimer); + this.reconnectTimer = null; + } + + // Check if server is available before attempting to connect + const serverBase = this.serverUrl.replace("wss://", "https://").replace("/ws", ""); + try { + const response = await this.remoteServiceModule.fetch(serverBase, { + method: "GET" + }); + if (response.status >= 400) { + print(`Server returned error status: ${response.status}`); + this.log(`Server unavailable (status: ${response.status}). Retrying in ${this.reconnect_delay / 1000} seconds...`); + this.scheduleReconnect(); + return; + } else if (response.status == null) { + throw new Error(`Status was not OK: ${response.status}`) + } + + print(`Server check succeeded with status: ${response.status}`); + } catch (e) { + print(`Server availability check failed: ${e}`); + this.log(`Failed to reach server. Retrying in ${this.reconnect_delay / 1000} seconds...`); + this.scheduleReconnect(); + return; + } + + // Create new WebSocket connection + this.socket = this.remoteServiceModule.createWebSocket(this.serverUrl); + this.socket.binaryType = "blob"; + + // Set up event handlers + this.socket.onopen = (event: WebSocketEvent) => { + print("Socket connected! Identifying as spectacles client..."); + this.log("Connected to server"); + + // Send identification message + this.socket.send(JSON.stringify({ + "type": MessageType.CLIENT_TYPE + })); + }; + + this.socket.onmessage = async (event: WebSocketMessageEvent) => { + await this.processMessage(event.data); + }; + + this.socket.onclose = (event: WebSocketCloseEvent) => { + if (event.wasClean) { + print("Connection closed cleanly"); + this.log("Connection closed"); + } else { + print("Connection died: " + event.code); + this.log(`Connection lost. Retrying in ${this.reconnect_delay / 1000} seconds...`); + } + + this.pairingStatus = "disconnected"; + this.pairedWithId = null; + this.pairedWithType = null; + + // Schedule reconnection + this.scheduleReconnect(); + }; + + this.socket.onerror = (event: WebSocketErrorEvent) => { + print("WebSocket error: " + event); + this.log("Connection error occurred"); + }; + } catch (e) { + print("Error connecting to server: " + e); + this.log(`Connection error: ${e}. Retrying in ${this.reconnect_delay / 1000} seconds...`); + this.scheduleReconnect(); + } + } + + /** + * Schedule a reconnection attempt after the specified delay + */ + private scheduleReconnect() { + // Clear any existing reconnect timer + if (this.reconnectTimer !== null) { + FunctionTimingUtils.clearTimeout(this.reconnectTimer); + } + + // Schedule a reconnection attempt + this.reconnectTimer = FunctionTimingUtils.setTimeout(() => { + this.log(`Attempting to reconnect...`); + this.connectToServer(); + }, this.reconnect_delay); + } + + private async processMessage(data: string | Blob) { + try { + if (data instanceof Blob) { + // Try to unpack the message: [1 byte type][4 bytes payload length][image bytes...] + // data.bytes() is a Promise, so we need to wait for it to resolve + const uint8 = await data.bytes(); + // Wait for the promise to resolve + if (uint8 === null) { + print("Error reading bytes"); + return; + } + const headerSize = 5; // 1 byte type + 4 bytes length + if (uint8.length < headerSize) { + print("header too short"); + return; + } + const view = new DataView(uint8.buffer); + const type = String.fromCharCode(uint8[0]); + const length = view.getUint32(1, false); + if (uint8.length < headerSize + length) { + print("payload length mismatch"); + return; + }; + + const payloadBytes = uint8.slice(headerSize, headerSize + length); + this.handleBytes(type, payloadBytes) + } else { + const message = JSON.parse(data); + // Handle different message types + if (message.type === "status_update") { + this.handleStatusUpdate(message); + } else if (message.type === "ping") { + this.handlePing(message); + } else if (message.type === "robot_status") { + this.handleRobotStatus(message); + } else { + this.log("Unknown message type: " + message); + } + } + } catch (e) { + print("Error processing message: " + e); + } + } + + private handleStatusUpdate(message: any) { + this.pairingStatus = message.status; + + if (message.client_id) { + this.clientId = message.client_id; + } + + if (message.status === "paired") { + const pairedWith = message.paired_with || {}; + this.pairedWithId = pairedWith.id || null; + this.pairedWithType = pairedWith.type || null; + this.log("Paired with " + this.pairedWithType + " (ID: " + this.pairedWithId + ")"); + this.socket.send(JSON.stringify({ + "type": MessageType.ACTION_WAVE // Wave to confirm pairing. + })) + } else if (message.status === "waiting") { + // Record our client ID. + this.clientId = message.client_id; + this.log(`ID: ${this.clientId}\nWaiting: ${message.message}`); + this.pairedWithId = null; + this.pairedWithType = null; + this.simImgController.showStatic(); + } else if (message.status === "disconnected") { + this.log("Disconnected: " + message.message); + this.pairedWithId = null; + this.pairedWithType = null; + this.simImgController.showStatic(); + } + } + + private handlePing(message: any) { + // Respond to ping with pong for latency measurement + if (message.timestamp && this.socket?.readyState === 1) { + this.socket.send(JSON.stringify({ + type: "pong", + ping_timestamp: message.timestamp + })); + } + } + + private handleRobotStatus(message: any) { + // Handle robot status updates (battery, position, etc.) + print("Robot status: Battery=" + message.battery + "%"); + + // Here you could update UI elements displaying robot status + // or use the position/orientation data for visualization + } + + private handleBytes(type: string, payload: Uint8Array) { + if (type === "s") { + // Simulation image data. + this.simImgController.showLiveFeed(payload); + } + } + + private log(message: string) { + this.logs.text = message; + } + + // Public method to check if connected and paired + public isPaired(): boolean { + return this.pairingStatus === "paired" && this.pairedWithId !== null; + } + + /** + * Send a discrete action to the robot. + * @param action The action to send to the robot. + */ + public sendAction(action: ActionMessage) { + if (this.socket?.readyState === 1) { + this.socket.send(JSON.stringify({ + type: action + })); + } + } + + /** + * Send a movement command to the robot. + * @param long Forward/backward movement in meters per second. + * @param lat Lateral movement in meters per second. + * @param yaw Rotation in radians per second. + */ + public sendMovement(long: number, lat: number, yaw: number) { + if (this.socket?.readyState === 1) { + this.socket.send(JSON.stringify({ + type: MessageType.WALK, + long: long, + lat: lat, + yaw: yaw + })); + } + } + + /** + * Send a hand movement command to the robot. + * @param message The hand movement message to send. + */ + public sendHandMovement(movement: HandMovementMessage) { + if (this.socket?.readyState === 1) { + this.socket.send(JSON.stringify(movement)); + } + } + + /** + * Unpair from a robot on the server. + * + * If a robot is currently paired, it will be sent a movement command to stop. + */ + public disconnect() { + if (this.socket?.readyState === 1) { + this.sendMovement(0, 0, 0); + this.socket.send(JSON.stringify({ + type: "unpair" + })); + } + } + + StandUp() { + this.sendAction(MessageType.ACTION_STAND); + } + + SitDown() { + this.sendAction(MessageType.ACTION_SIT); + } + + HighStand() { + this.sendAction(MessageType.ACTION_STAND_HIGH); + } + + LowStand() { + this.sendAction(MessageType.ACTION_STAND_LOW); + } + + ZeroTorque() { + this.sendAction(MessageType.ACTION_ZERO_TORQUE); + } + + WaveHand() { + this.sendAction(MessageType.ACTION_WAVE); + } + + WaveHandTurn() { + this.sendAction(MessageType.ACTION_WAVE_TURN); + } + + ShakeHand() { + this.sendAction(MessageType.ACTION_SHAKE_HAND); + } + + StopDamp() { + this.sendAction(MessageType.ACTION_DAMP); + } + + Quit() { + this.disconnect(); + } +} + +/** + * Maximum forward/backward speed in meters per second. + */ +export const FORWARD_SPEED_MAX = 0.3; +/** + * Maximum lateral speed in meters per second. + */ +export const LATERAL_SPEED_MAX = 0.2; +/** + * Maximum rotation speed in radians per second. + */ +export const ROTATION_SPEED_MAX = 0.6; + +export enum MessageType { + // Incoming messages + STATUS_UPDATE = "status_update", + PING = "ping", + ROBOT_STATUS = "robot_status", + // Outgoing messages + CLIENT_TYPE = "spectacles", + PONG = "pong", + WALK = "walk", + ACTION_STAND = "stand", + ACTION_STAND_LOW = "stand_low", + ACTION_STAND_HIGH = "stand_high", + ACTION_SIT = "sit", + ACTION_WAVE = "wave", + ACTION_WAVE_TURN = "wave_turn", + ACTION_SHAKE_HAND = "shake_hand", + ACTION_ZERO_TORQUE = "zero_torque", + ACTION_DAMP = "damp", + ACTION_SQUAT_TO_STAND = "squat2stand", + ACTION_STAND_TO_SQUAT = "stand2squat", + ACTION_LIE_TO_STAND = "lie2stand", + GESTURE_PINCH_DOWN = "gesture_pinch_down", + GESTURE_PINCH_UP = "gesture_pinch_up", + GESTURE_PINCH_STRENGTH = "gesture_pinch_strength", + GESTURE_PALM_TAP_UP = "gesture_palm_tap_up", + GESTURE_PALM_TAP_DOWN = "gesture_palm_tap_down", + GESTURE_TARGETING = "gesture_targeting", + GESTURE_GRAB_BEGIN = "gesture_grab_begin", + GESTURE_GRAB_END = "gesture_grab_end", + GESTURE_PHONE_IN_HAND_BEGIN = "gesture_phone_in_hand_begin", + GESTURE_PHONE_IN_HAND_END = "gesture_phone_in_hand_end", + HAND_MOVEMENT = "hand_movement", +} + +/** + * Pre-programmed discrete actions that the robot can perform. + */ +type ActionMessage = MessageType.ACTION_STAND | MessageType.ACTION_STAND_LOW | MessageType.ACTION_STAND_HIGH | MessageType.ACTION_SIT | MessageType.ACTION_WAVE | MessageType.ACTION_WAVE_TURN | MessageType.ACTION_SHAKE_HAND | MessageType.ACTION_ZERO_TORQUE | MessageType.ACTION_DAMP; + +/** + * A hand movement message. + */ +export class HandMovementMessage { + readonly type: MessageType.HAND_MOVEMENT = MessageType.HAND_MOVEMENT; + readonly handType: HandType; + readonly timestamp: number = Date.now(); + /** + * Array of wrist transform (4x4 matrix column-major), positions [X,Y,Z] for each finger joint, and finally the head transform (4x4 matrix row-major). + * + * The order is as follows: + * wrist, thumb-0, thumb-1, thumb-2, thumb-3, index-0, index-1, index-2, index-3, middle-0, middle-1, middle-2, middle-3, ring-0, ring-1, ring-2, ring-3, pinky-0, pinky-1, pinky-2, pinky-3, head + */ + readonly transform: number[][]; + + constructor(hand: TrackedHand, headTransform: mat4) { + const keypoints = hand.points; + this.handType = hand.handType; + // Make sure we have all the keypoints. + const missingLandmarks = allLandmarks.flat().filter(l => !keypoints.some(k => k.name === l)); + if (missingLandmarks.length > 0) { + throw new Error(`Missing keypoints with name: ${missingLandmarks.join(", ")}`); + } + // First we need to transform all of the hand keypoints relative to the wrist position and (inverse) rotation + // This way they're wrist-local coordinates as expected by URDF / Pinocchio. + const wrist = keypoints.find(k => k.name === LandmarkName.WRIST); + const wristPos = wrist?.position; + const wristRot = wrist?.rotation; + // Important to filter out the wrist and the wrist-to-fingertip landmarks provided by Snap. + const handPositions = keypoints.filter(k => !wristLandmarks.includes(k.name as LandmarkName)).map(k => { + const relativePos = k.position.sub(wristPos); + const localPos = wristRot.invert().multiplyVec3(relativePos); + return localPos; + }); + this.transform = [ + flat(tr(wristPos, wristRot)), + ...handPositions.map(p => flat(p)), + flat(headTransform) + ]; + } +} diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/CoordinationClient.ts.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/CoordinationClient.ts.meta new file mode 100644 index 00000000..1500b686 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/CoordinationClient.ts.meta @@ -0,0 +1,44 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 7fa9f4e5-b8c5-4245-a654-0357c26aaddf + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 7fa9f4e5-b8c5-4245-a654-0357c26aaddf + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + TypeScriptAsset: ! 994dba3d-7204-490a-b09b-50623e426fc2 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + img_sim: false + logs: false + serverUrl: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - serverUrl: "wss://spectaclexr.com/ws" + logs: ! 00000000-0000-0000-0000-000000000000 + img_sim: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - '// @input string serverUrl = "wss://spectaclexr.com/ws"' + - // @input Component.Text logs + - // @input Component.Image img_sim diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/HandControl.ts b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/HandControl.ts new file mode 100644 index 00000000..95085d32 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/HandControl.ts @@ -0,0 +1,326 @@ +import { HandInputData } from "SpectaclesInteractionKit/Providers/HandInputData/HandInputData"; +import { CoordinationClient, HandMovementMessage } from "./CoordinationClient"; +import { SIK } from "SpectaclesInteractionKit/SIK"; +import { AllHandTypes } from "SpectaclesInteractionKit/Providers/HandInputData/HandType"; +import TrackedHand from "SpectaclesInteractionKit/Providers/HandInputData/TrackedHand"; +import { HandVisual, HandVisualSelection } from "SpectaclesInteractionKit/Components/Interaction/HandVisual/HandVisual"; +import * as FunctionTimingUtils from "SpectaclesInteractionKit/Utils/debounce"; +import { Keypoint } from "SpectaclesInteractionKit/Providers/HandInputData/Keypoint"; +import { flat } from "Unitree2Spectacles/Scripts/TS/Utils"; +import { LandmarkName, wristLandmarks } from "SpectaclesInteractionKit/Providers/HandInputData/LandmarkNames"; + + +declare global { + interface mat4 { + // Returns the up vector of the matrix. + up(): vec3; + // Returns the down vector of the matrix. + down(): vec3; + // Returns the left vector of the matrix. + left(): vec3; + // Returns the right vector of the matrix. + right(): vec3; + // Returns the forward vector of the matrix. + forward(): vec3; + // Returns the back vector of the matrix. + back(): vec3; + // Construct from a 4x4 number[][]. + fromArray(numbers: number[][]): mat4; + } + + interface mat3 { + // Construct from a 3x3 number[][]. + fromArray(numbers: number[][]): mat3; + } +} + +mat4.prototype.up = function () { + return new vec3(this.column0.x, this.column0.y, this.column0.z); +} + +mat4.prototype.down = function () { + return new vec3(-this.column0.x, -this.column0.y, -this.column0.z); +} + +mat4.prototype.left = function () { + return new vec3(this.column1.x, this.column1.y, this.column1.z); +} + +mat4.prototype.right = function () { + return new vec3(-this.column1.x, -this.column1.y, -this.column1.z); +} + +mat4.prototype.forward = function () { + return new vec3(this.column2.x, this.column2.y, this.column2.z); +} + +mat4.prototype.back = function () { + return new vec3(-this.column2.x, -this.column2.y, -this.column2.z); +} + +mat4.prototype.fromArray = function (numbers: number[][]): mat4 { + let m = new mat4(); + if (!numbers || numbers.length !== 4 || numbers[0].length !== 4) { + throw new Error("Invalid matrix size, expected 4x4"); + } + let [c0, c1, c2, c3] = numbers.map((r) => new vec4(r[0], r[1], r[2], r[3])); + m.column0 = c0; + m.column1 = c1; + m.column2 = c2; + m.column3 = c3; + return m; +} + +mat3.prototype.fromArray = function (numbers: number[][]): mat3 { + let m = new mat3(); + if (!numbers || numbers.length !== 3 || numbers[0].length !== 3) { + throw new Error("Invalid matrix size, expected 3x3"); + } + let [c0, c1, c2] = numbers.map((r) => new vec3(r[0], r[1], r[2])); + m.column0 = c0; + m.column1 = c1; + m.column2 = c2; + return m; +} + +@component +export class HandControl extends BaseScriptComponent { + public enabled = false; + private gestureModule: GestureModule = require("LensStudio:GestureModule"); + private handInputData: HandInputData; + private rightHand: TrackedHand; + private leftHand: TrackedHand; + private trackingTimeout: FunctionTimingUtils.CancelToken; + private trackingInterval = 32; // About 30 FPS + private axesMap: Map = new Map(); + private axesUpdateTimeout: FunctionTimingUtils.CancelToken; + private axesUpdateInterval = 16; // About 60 FPS + + @input + private camera: Camera; + @input + private handTrackingStatus: Text; + @input + private tempLog: Text; + @input + private axesSceneObject: SceneObject; + @input('Component.ScriptComponent') + private coordinationClient: CoordinationClient; + + async onAwake() { + try { + this.enabled = false; + this.handInputData = SIK.HandInputData; + this.leftHand = this.handInputData.getHand("left"); + this.leftHand.setTrackingMode(ObjectTracking3D.TrackingMode.ProportionsAndPose); + this.rightHand = this.handInputData.getHand("right"); + this.rightHand.setTrackingMode(ObjectTracking3D.TrackingMode.ProportionsAndPose); + this.handTrackingStatus.text = "Hand Tracking: Disabled"; + this.gestureModule.getPalmTapDownEvent(GestureModule.HandType.Right).add(() => { + this.enabled = !this.enabled; + this.handTrackingStatus.text = this.enabled ? "Hand Tracking: Enabled" : "Hand Tracking: Disabled"; + + if (this.enabled) { + // Start periodic tracking when enabled + this.sendHandUpdates(); + } else { + // Clear the timeout when disabled + if (this.trackingTimeout) { + FunctionTimingUtils.clearTimeout(this.trackingTimeout); + } + } + }); + + this.createAxes("head"); + Promise.all([ + this.createHandAxes(this.leftHand), + this.createHandAxes(this.rightHand) + ]).then(() => { + this.startAxesUpdates(this.leftHand, this.rightHand); + }).catch((error) => { + this.log("Error creating axes: " + error + " " + error.stack); + }); + this.log("HandControl initialized"); + } catch (error) { + this.handTrackingStatus.text = "Error: " + error + " " + error.stack; + this.log("Error: " + error + " " + error.stack); + } + } + + /** + * Update the keypoints of the hands + */ + private sendHandUpdates() { + if (this.enabled) { + try { + if (this.leftHand.isTracked()) { + const movement = new HandMovementMessage(this.leftHand, this.camera.getTransform().getWorldTransform()); + this.coordinationClient.sendHandMovement(movement); + } + if (this.rightHand.isTracked()) { + const movement = new HandMovementMessage(this.rightHand, this.camera.getTransform().getWorldTransform()); + this.coordinationClient.sendHandMovement(movement); + } + + // Schedule the next update + this.trackingTimeout = FunctionTimingUtils.setTimeout(() => { + this.sendHandUpdates(); + }, this.trackingInterval); + + } catch (error) { + this.handTrackingStatus.text = "Error: " + error + " " + error.stack; + this.log("Error: " + error + " " + error.stack); + } + } + } + + /** + * Create axes for the keypoints of the hands + */ + private async createHandAxes(hand: TrackedHand): Promise { + if (!hand?.isTracked() || !hand?.points || hand.points.length === 0) { + this.log(`${hand.handType} is not tracked, waiting to set up axes...`); + return new Promise((resolve) => { + FunctionTimingUtils.setTimeout(async () => { + const result = await this.createHandAxes(hand); + resolve(result); + }, 1000); + }); + } + const keypoints = this.filterKeypoints(hand.points); + for (let i = 0; i < keypoints.length; i++) { + const keypoint = keypoints[i]; + let sceneObjectName = `${hand.handType}_${keypoint.name}`; + this.createAxes(sceneObjectName); + } + } + + /** + * Create axes scene objects and mesh builders. + * @param name The name of the axes to create + */ + private createAxes(name: string) { + let axes = this.axesSceneObject.getParent().copySceneObject(this.axesSceneObject); + axes.name = name; + let meshBuilder = new MeshBuilder([ + { name: "position", components: 3 }, + { name: "color", components: 4 }, + ]); + meshBuilder.topology = MeshTopology.Lines; + meshBuilder.indexType = MeshIndexType.UInt16; + this.axesMap.set(name, [axes, meshBuilder]); + } + + /** + * Start the axes update cycle + */ + private startAxesUpdates(left: TrackedHand, right: TrackedHand) { + const updateLoop = () => { + try { + this.updateAxes(); // Update the head axis. + if (left.isTracked()) this.updateAxes(left); + if (right.isTracked()) this.updateAxes(right); + } catch (error) { + this.log("Error updating axes: " + error + " " + error.stack); + } + this.axesUpdateTimeout = FunctionTimingUtils.setTimeout(updateLoop, this.axesUpdateInterval); + }; + updateLoop(); + } + + /** + * Update the axes for a given hand. + * @param hand The hand to update the axes for. + */ + private updateAxes(hand: TrackedHand | null = null) { + if (hand !== null && hand?.isTracked()) { + try { + this.filterKeypoints(hand.points).forEach((k) => { + let sceneObjectName = `${hand.handType}_${k.name}`; + let [sceneObject, meshBuilder] = this.axesMap.get(sceneObjectName); + let transform = k.getAttachmentPoint().getTransform(); + + this.updateMesh(meshBuilder, sceneObject, transform); + }); + } catch (error) { + this.log("Error updating axes: " + error + " " + error.stack); + } + } + } + + private updateMesh(meshBuilder: MeshBuilder, sceneObject: SceneObject, transform: Transform) { + if (meshBuilder !== undefined && sceneObject !== undefined) { + let v = meshBuilder.getVerticesCount(); + let i = meshBuilder.getIndicesCount(); + + let origin = transform.getWorldPosition(); + + let length = 1; + + let RIGHT = origin.add(transform.getWorldTransform().right().normalize().uniformScale(length)); + let UP = origin.add(transform.getWorldTransform().up().normalize().uniformScale(length)); + let BACK = origin.add(transform.getWorldTransform().back().normalize().uniformScale(length)); + + let red = [1, 0, 0, 1]; + let green = [0, 1, 0, 1]; + let blue = [0, 0, 1, 1]; + + let x = [ + origin, RIGHT + ].map((v) => flat(v).concat(red)); + + let y = [ + origin, UP + ].map((v) => flat(v).concat(green)); + + let z = [ + origin, BACK + ].map((v) => flat(v).concat(blue)); + + let vertices = [ + x, + y, + z + ].flat(); + + let indices = [0, 1, 2, 3, 4, 5]; + + if (i === 0 && v === 0) { + // First time creating the mesh + meshBuilder.appendVerticesInterleaved(vertices.flat()); + meshBuilder.appendIndices(indices); + } else { + for (let i = 0; i < vertices.length; i++) { + meshBuilder.setVertexInterleaved(i, vertices[i]); + } + } + if (meshBuilder.isValid()) { + sceneObject.getComponent("Component.RenderMeshVisual").mesh = meshBuilder.getMesh(); + meshBuilder.updateMesh(); + } else { + this.log("MeshBuilder is not valid"); + } + } + } + + private log(message: string) { + Studio.log(message); + if (this.tempLog) { + // Limit lines to 10 + let lines = this.tempLog.text.split("\n"); + if (lines.length > 10) { + lines = lines.slice(1); + } + lines.push(`${getTime().toFixed(2)}: ${message}`); + this.tempLog.text = lines.join("\n"); + } + } + + /** + * Filter out the wrist-to-* keypoints from the list of keypoints. + * @param keypoints The keypoints to filter + */ + private filterKeypoints(keypoints: Keypoint[]): Keypoint[] { + return keypoints.filter(k => !wristLandmarks.includes(k.name as LandmarkName) || k.name === LandmarkName.WRIST); + } +} \ No newline at end of file diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/HandControl.ts.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/HandControl.ts.meta new file mode 100644 index 00000000..4ba5f5e8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/HandControl.ts.meta @@ -0,0 +1,50 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! bf0dcaf4-1705-45b7-9755-24fab97ebdb4 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! bf0dcaf4-1705-45b7-9755-24fab97ebdb4 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + TypeScriptAsset: ! a7aaa04f-5dd7-4b2e-a7bc-6104d1740e1f + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + axesSceneObject: false + camera: false + coordinationClient: false + handTrackingStatus: false + tempLog: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - handTrackingStatus: ! 00000000-0000-0000-0000-000000000000 + camera: ! 00000000-0000-0000-0000-000000000000 + coordinationClient: ! 00000000-0000-0000-0000-000000000000 + axesSceneObject: ! 00000000-0000-0000-0000-000000000000 + tempLog: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - // @input Component.Camera camera + - // @input Component.Text handTrackingStatus + - // @input Component.Text tempLog + - // @input SceneObject axesSceneObject + - // @input Component.ScriptComponent coordinationClient diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/JoystickToggle.ts b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/JoystickToggle.ts new file mode 100644 index 00000000..8af3505b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/JoystickToggle.ts @@ -0,0 +1,20 @@ +@component +export class JoystickToggle extends BaseScriptComponent { + + @input joystick: SceneObject + @input joystickPlane: SceneObject + + awake() { + this.joystickPlane.enabled = false; + this.joystick.enabled = false; + } + + // Function to toggle the world query's enabled state + toggleJoystick() { + print("Toggle function called!"); + // If currently enabled, disable it; if disabled, enable it + this.joystick.enabled = !this.joystick.enabled; + this.joystickPlane.enabled = !this.joystickPlane.enabled; + } + +} \ No newline at end of file diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/JoystickToggle.ts.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/JoystickToggle.ts.meta new file mode 100644 index 00000000..3e95fb21 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/JoystickToggle.ts.meta @@ -0,0 +1,41 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 8bcd5be4-b37d-4c4f-805f-127ba98222d3 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 8bcd5be4-b37d-4c4f-805f-127ba98222d3 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + TypeScriptAsset: ! 229cda1c-d38e-421f-8928-b9b2417d73bd + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + joystick: false + joystickPlane: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - joystick: ! 00000000-0000-0000-0000-000000000000 + joystickPlane: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - // @input SceneObject joystick + - // @input SceneObject joystickPlane diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/RobotDecoyController.ts b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/RobotDecoyController.ts new file mode 100644 index 00000000..2cbbda90 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/RobotDecoyController.ts @@ -0,0 +1,238 @@ +import { Interactable } from "SpectaclesInteractionKit/Components/Interaction/Interactable/Interactable"; +import { CoordinationClient } from "./CoordinationClient"; + +@component +export class RobotDecoyController extends BaseScriptComponent { + @input robotDecoy: SceneObject; + @input mainCamera: Camera; + @input toggleButton: SceneObject; + @input connectToRobot: boolean = false; + + @input moveSpeedTitle: Text; + @input rotationSpeedTitle: Text; + + @input('Component.ScriptComponent') + private coordinationClient: CoordinationClient; + + private decoyMovementSpeed: number = 100.0; + private decoyRotationSpeed: number = 1.0; + + private interactor: Interactable; + private targetPosition: vec3 = null; + private isMoving: boolean = false; + private movementPhase: 'rotating' | 'moving' | 'idle' = 'idle'; + private updateEvent; + private targetMovement: boolean = false; + + onAwake() { + this.createEvent('OnStartEvent').bind(() => { + this.onStart(); + }); + } + + onStart() { + this.interactor = this.toggleButton.getComponent(Interactable.getTypeName()); + this.interactor.onTriggerEnd.add(this.toggleDecoy.bind(this)); + + this.updateEvent = this.createEvent("UpdateEvent"); + this.updateEvent.bind(this.processMovement.bind(this)); + } + + public sendNewPositionToDecoy(targetPosition: vec3) { + // prevent sending new position to robot if decoy not enabled + if (!this.robotDecoy || !this.robotDecoy.enabled || this.targetMovement) { + return; + } + this.targetPosition = targetPosition; + this.movementPhase = 'rotating'; + this.isMoving = true; + } + + sendMovement(decoyLong: number, decoyLat: number, decoyYaw: number, + realLong: number, realLat: number, realYaw: number, + deltaTime?: number) { + + if (!this.robotDecoy || !this.robotDecoy.enabled || this.targetMovement) { + return; + } + + // Compute final actual movement for decoy inside sendMovement + const dt = deltaTime === undefined ? 1.0 : deltaTime; + + const finalDecoyLong = decoyLong * this.decoyMovementSpeed * dt; + const finalDecoyLat = decoyLat * this.decoyMovementSpeed * dt; + const finalDecoyYaw = decoyYaw * this.decoyRotationSpeed * dt; + + // If connected, call the real robot exactly once: + if (this.connectToRobot) { + const scaledLong = realLong; + const scaledLat = realLat; + const scaledYaw = realYaw; + + // print("[sendMovement] Real Robot -> long=" + scaledLong.toFixed(3) + // + ", lat=" + scaledLat.toFixed(3) + // + ", yaw=" + scaledYaw.toFixed(3)); + this.coordinationClient.sendMovement(scaledLong, scaledLat, scaledYaw); + } + + // === Decoy movement === + // print("[sendMovement] Decoy -> long=" + decoyLong.toFixed(3) + // + ", lat=" + decoyLat.toFixed(3) + // + ", yaw=" + decoyYaw.toFixed(3)); + + const robotTransform = this.robotDecoy.getTransform(); + const currentPosition = robotTransform.getWorldPosition(); + const currentRotation = robotTransform.getWorldRotation(); + + // Yaw rotation + if (finalDecoyYaw !== 0) { + const yawRotation = quat.angleAxis(finalDecoyYaw, new vec3(0, 1, 0)); + const newRotation = currentRotation.multiply(yawRotation); + robotTransform.setWorldRotation(newRotation); + } + + // Forward/backward + if (finalDecoyLong !== 0) { + const forward = robotTransform.forward; + const movement = new vec3(forward.x * finalDecoyLong, 0, forward.z * finalDecoyLong); + const newPosition = currentPosition.add(movement); + if (this.targetPosition) { + newPosition.y = this.targetPosition.y; + } + robotTransform.setWorldPosition(newPosition); + } + + // Lateral + if (finalDecoyLat !== 0) { + const right = robotTransform.right; + const movement = new vec3(right.x * finalDecoyLat, 0, right.z * finalDecoyLat); + const newPosition = currentPosition.add(movement); + if (this.targetPosition) { + newPosition.y = this.targetPosition.y; + } + robotTransform.setWorldPosition(newPosition); + } + } + + processMovement(eventData: UpdateEvent) { + if (!this.isMoving || !this.targetPosition || !this.robotDecoy || !this.robotDecoy.enabled) return; + const deltaTime = eventData.getDeltaTime(); + + const robotTransform = this.robotDecoy.getTransform(); + const robotPosition = robotTransform.getWorldPosition(); + + if (this.movementPhase === 'rotating') { + const directionToTarget = new vec3( + this.targetPosition.x - robotPosition.x, + 0, + this.targetPosition.z - robotPosition.z + ).normalize(); + + const forward = robotTransform.forward; + const currentForward = new vec3( + forward.x, + 0, + forward.z + ).normalize(); + + const dot = currentForward.dot(directionToTarget); + const clampedDot = Math.max(Math.min(dot, 1.0), -1.0); + const angle = Math.acos(clampedDot); + + const cross = currentForward.cross(directionToTarget); + const rotationDirection = cross.y > 0 ? 1 : -1; + + const rotationThreshold = 0.05; + + if (angle < rotationThreshold) { + this.movementPhase = 'moving'; + this.sendMovement(0, 0, 0, 0, 0, 0, 1.0); + + const lookDirection = new vec3( + this.targetPosition.x - robotPosition.x, + 0, + this.targetPosition.z - robotPosition.z + ).normalize(); + + const worldForward = new vec3(0, 0, 1); + const dotProduct = worldForward.dot(lookDirection); + const exactAngle = Math.acos(Math.max(Math.min(dotProduct, 1), -1)); + + const exactCross = worldForward.cross(lookDirection); + const exactRotationDirection = exactCross.y >= 0 ? 1 : -1; + + const exactRotation = quat.angleAxis(exactAngle * exactRotationDirection, new vec3(0, 1, 0)); + + robotTransform.setWorldRotation(exactRotation); + } else { + const baseRotationSpeed = this.decoyRotationSpeed; + const angleRatio = Math.min(angle / (Math.PI / 4), 1.0); + const adjustedRotationSpeed = baseRotationSpeed * angleRatio; + + // Single call for both decoy + real robot + this.sendMovement( + 0, 0, rotationDirection * 1.0, // decoy + 0, 0, rotationDirection * 1.0, // real + deltaTime + ); + } + } else if (this.movementPhase === 'moving') { + const xzDistance = Math.sqrt( + Math.pow(this.targetPosition.x - robotPosition.x, 2) + + Math.pow(this.targetPosition.z - robotPosition.z, 2) + ); + + // print("Current position (x,z): " + robotPosition.x + ", " + robotPosition.z); + // print("Distance to target XZ = " + xzDistance); + + const arrivalThreshold = 2.0; + + if (xzDistance < arrivalThreshold) { + this.sendMovement( + 0, 0, 0, // decoy + 0, 0, 0, // real + 1.0 + ); + this.movementPhase = 'idle'; + this.isMoving = false; + } else { + this.sendMovement( + 1.0, 0, 0, // decoy logs as "1.000" + 1.0, 0, 0, // real + deltaTime + ); + } + } + } + + instanciateRobot() { + var cameraTransform = this.mainCamera.getTransform(); + this.robotDecoy.getTransform().setWorldPosition(cameraTransform.getWorldPosition()); + + const cameraForward = cameraTransform.forward; + const horizontalForward = new vec3(cameraForward.x, 0, cameraForward.z).normalize(); + const worldUp = new vec3(0, 1, 0); + const rotation = quat.lookAt(horizontalForward, worldUp); + + this.robotDecoy.getTransform().setWorldRotation(rotation); + } + + toggleDecoy() { + this.instanciateRobot(); + this.robotDecoy.enabled = !this.robotDecoy.enabled; + } + + public updateMoveSpeed(value: number) { + this.moveSpeedTitle.text = "Movement Speed: " + value.toString(); + this.decoyMovementSpeed = value * 100.0; + } + + public updateRotationSpeed(value: number) { + this.rotationSpeedTitle.text = "Rotation speed: " + value.toString(); + this.decoyRotationSpeed = value; + } + + public toggleTargetMovement() { + this.targetMovement = !this.targetMovement; + } +} diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/RobotDecoyController.ts.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/RobotDecoyController.ts.meta new file mode 100644 index 00000000..555824df --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/RobotDecoyController.ts.meta @@ -0,0 +1,56 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! ed8de5e7-d591-4775-8fe0-e8285af6851a + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! ed8de5e7-d591-4775-8fe0-e8285af6851a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + TypeScriptAsset: ! 328594c1-74b4-4454-bd86-29cb18c96b3a + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + connectToRobot: false + coordinationClient: false + mainCamera: false + moveSpeedTitle: false + robotDecoy: false + rotationSpeedTitle: false + toggleButton: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - robotDecoy: ! 00000000-0000-0000-0000-000000000000 + mainCamera: ! 00000000-0000-0000-0000-000000000000 + toggleButton: ! 00000000-0000-0000-0000-000000000000 + connectToRobot: false + moveSpeedTitle: ! 00000000-0000-0000-0000-000000000000 + rotationSpeedTitle: ! 00000000-0000-0000-0000-000000000000 + coordinationClient: ! 00000000-0000-0000-0000-000000000000 + ScriptTypes: + - + {} + InputLines: + - // @input SceneObject robotDecoy + - // @input Component.Camera mainCamera + - // @input SceneObject toggleButton + - // @input bool connectToRobot + - // @input Component.Text moveSpeedTitle + - // @input Component.Text rotationSpeedTitle + - // @input Component.ScriptComponent coordinationClient diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SimulationImage.ts b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SimulationImage.ts new file mode 100644 index 00000000..b409c152 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SimulationImage.ts @@ -0,0 +1,112 @@ +import * as FunctionTimingUtils from "SpectaclesInteractionKit/Utils/debounce"; + +/** + * Controller for the simulation image display + * Handles transitions between static and live feed + */ +export class SimulationImageController { + private image: Image; + private staticTextures: Texture[] = []; + private staticAnimationToken: ReturnType = null; + private isStatic: boolean = false; + private currentStaticFrame: number = 0; + private static STATIC_REFRESH_RATE: number = 100; // ms + private static STATIC_FRAME_COUNT: number = 8; // Number of precomputed static frames + + /** + * Creates a new simulation image controller + * @param image The image component to control + */ + constructor(image: Image) { + if (!image) { + throw new Error("SimulationImageController requires a valid Image component"); + } + this.image = image; + this.generateStaticFrames(); + this.showStatic(); + } + + /** + * Generate all static frames in advance + */ + private generateStaticFrames(): void { + const width = 512; + const height = 512; + + for (let frame = 0; frame < SimulationImageController.STATIC_FRAME_COUNT; frame++) { + const texture = ProceduralTextureProvider.create(width, height, Colorspace.RGBA); + const pixels = new Uint8Array(width * height * 4); + + // Fill with random static noise + for (let i = 0; i < pixels.length; i += 4) { + const value = Math.floor(Math.random() * 255); + pixels[i] = value; // R + pixels[i + 1] = value; // G + pixels[i + 2] = value; // B + pixels[i + 3] = 200; // A (some transparency) + } + + (texture.control as ProceduralTextureProvider).setPixels(0, 0, width, height, pixels); + this.staticTextures.push(texture); + } + } + + /** + * Display static noise on the image + */ + public showStatic(): void { + if (this.isStatic) return; + + this.isStatic = true; + this.currentStaticFrame = 0; + this.image.mainPass.baseTex = this.staticTextures[this.currentStaticFrame]; + this.startStaticAnimation(); + } + + /** + * Display a live feed image on the display + * @param data Image data to display + */ + public showLiveFeed(data: Uint8Array): void { + this.stopStaticAnimation(); + this.isStatic = false; + + const texture = ProceduralTextureProvider.create(512, 512, Colorspace.RGBA); + (texture.control as ProceduralTextureProvider).setPixels(0, 0, 512, 512, data); + this.image.mainPass.baseTex = texture; + } + + /** + * Start animating the static texture + */ + private startStaticAnimation(): void { + this.stopStaticAnimation(); + + this.staticAnimationToken = FunctionTimingUtils.setTimeout(() => { + if (this.isStatic) { + // Cycle through precomputed static frames + this.currentStaticFrame = (this.currentStaticFrame + 1) % SimulationImageController.STATIC_FRAME_COUNT; + this.image.mainPass.baseTex = this.staticTextures[this.currentStaticFrame]; + this.startStaticAnimation(); + } + }, SimulationImageController.STATIC_REFRESH_RATE); + } + + /** + * Stop the static animation + */ + private stopStaticAnimation(): void { + if (this.staticAnimationToken !== null) { + FunctionTimingUtils.clearTimeout(this.staticAnimationToken); + this.staticAnimationToken = null; + } + } + + /** + * Clean up resources + */ + public dispose(): void { + this.stopStaticAnimation(); + this.staticTextures = []; + } +} \ No newline at end of file diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SimulationImage.ts.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SimulationImage.ts.meta new file mode 100644 index 00000000..5d054266 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SimulationImage.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! ab0a1f33-d53a-474f-956a-ace3c55cd333 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! ab0a1f33-d53a-474f-956a-ace3c55cd333 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + TypeScriptAsset: ! ee34721d-38ba-4069-b7a5-60a8f5de23ab + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SingleObjectRaycaster.ts b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SingleObjectRaycaster.ts new file mode 100644 index 00000000..14bf8133 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SingleObjectRaycaster.ts @@ -0,0 +1,321 @@ +import { RobotDecoyController } from "./RobotDecoyController"; + +const WorldQueryModule = require("LensStudio:WorldQueryModule") +const SIK = require("SpectaclesInteractionKit/SIK").SIK; +const InteractorTriggerType = require("SpectaclesInteractionKit/Core/Interactor/Interactor").InteractorTriggerType; +const EPSILON = 0.01; + + +@component +export class SingleObjectRaycaster extends BaseScriptComponent { + private primaryInteractor; + private hitTestSession: HitTestSession; + private transform: Transform; + private targetInstance: SceneObject = null; + + @input + targetObject: ObjectPrefab; + + @input + objectToSpawn: ObjectPrefab; + + @input + filterEnabled: boolean; + + @input + isEnabled: boolean = true; // New bool to enable/disable functionality + + @input('Component.ScriptComponent') + decoyController: any; + + // For some reason changing the type of the above to RobotDecoyController -- or even just adding a commment to that line -- will cause the Lens to crash + + @input + objectsToCheck: SceneObject[]; + + private spawnedObject: SceneObject = null; + private hasSpawned: boolean = false; + private updateEvent; + private intersectingObjects: SceneObject[] = []; + private isIntersectingWithOther: boolean = false; + + onAwake() { + // create new hit session + this.hitTestSession = this.createHitTestSession(this.filterEnabled); + if (!this.targetObject) { + print("Please set Target Object input"); + return; + } + + // Instantiate the target object from prefab with no parent (same as objectToSpawn) + this.targetInstance = this.targetObject.instantiate(null); + this.transform = this.targetInstance.getTransform(); + + // disable target object when surface is not detected + this.targetInstance.enabled = false; + + // create update event + this.updateEvent = this.createEvent("UpdateEvent"); + this.updateEvent.bind(this.onUpdate.bind(this)); + } + + createHitTestSession(filterEnabled) { + // create hit test session with options + var options = HitTestSessionOptions.create(); + options.filter = filterEnabled; + + var session = WorldQueryModule.createHitTestSessionWithOptions(options); + return session; + } + + onHitTestResult(results) { + if (!this.isEnabled) { + this.targetInstance.enabled = false; + return; + } + + if (results === null || this.isIntersectingWithOther) { + this.targetInstance.enabled = false; + } else { + this.targetInstance.enabled = true; + // get hit information + const hitPosition = results.position; + const hitNormal = results.normal; + + //identifying the direction the object should look at based on the normal of the hit location. + var lookDirection; + if (1 - Math.abs(hitNormal.normalize().dot(vec3.up())) < EPSILON) { + lookDirection = vec3.forward(); + } else { + lookDirection = hitNormal.cross(vec3.up()); + } + + const toRotation = quat.lookAt(lookDirection, hitNormal); + //set position and rotation + this.transform.setWorldPosition(hitPosition); + this.transform.setWorldRotation(toRotation); + + // Only spawn or move on trigger release (click/tap) + if ( + this.primaryInteractor.previousTrigger !== InteractorTriggerType.None && + this.primaryInteractor.currentTrigger === InteractorTriggerType.None + ) { + if (!this.hasSpawned) { + // First time spawning - instantiate from prefab + this.spawnedObject = this.objectToSpawn.instantiate(null); + this.spawnedObject.getTransform().setWorldPosition(hitPosition); + this.spawnedObject.getTransform().setWorldRotation(toRotation); + this.hasSpawned = true; + // Call the decoy controller to update the robot's position + if (this.decoyController) { + this.decoyController.sendNewPositionToDecoy(hitPosition); + } + } else { + // Already spawned, just move the existing object on click + if (this.spawnedObject) { + this.spawnedObject.getTransform().setWorldPosition(hitPosition); + this.spawnedObject.getTransform().setWorldRotation(toRotation); + } + // Call the decoy controller to update the robot's position + if (this.decoyController) { + this.decoyController.sendNewPositionToDecoy(hitPosition); + } + } + } + } + } + + onUpdate() { + if (!this.isEnabled) { + this.targetInstance.enabled = false; + return; + } + + this.primaryInteractor = SIK.InteractionManager.getTargetingInteractors().shift(); + + if (this.primaryInteractor && + this.primaryInteractor.isActive() && + this.primaryInteractor.isTargeting() + ) { + const rayStartOffset = new vec3(this.primaryInteractor.startPoint.x, this.primaryInteractor.startPoint.y, this.primaryInteractor.startPoint.z + 30); + const rayStart = rayStartOffset; + const rayEnd = this.primaryInteractor.endPoint; + + // Clear previous intersections + this.intersectingObjects = []; + + // Check for objects intersecting with the ray + if (this.objectsToCheck && this.objectsToCheck.length > 0) { + this.checkRayIntersections(rayStart, rayEnd); + } else { + print("[SingleObjectRaycaster] No objects to check for intersection"); + } + + this.hitTestSession.hitTest(rayStart, rayEnd, this.onHitTestResult.bind(this)); + } else { + this.targetInstance.enabled = false; + } + } + + // Method to reset the spawned object if needed + resetSpawnedObject() { + if (this.spawnedObject) { + this.spawnedObject.destroy(); + this.spawnedObject = null; + this.hasSpawned = false; + } + } + + // Function to enable or disable the functionality + setEnabled(enabled: boolean) { + this.isEnabled = enabled; + + if (!enabled) { + // Hide the target instance when disabled + this.targetInstance.enabled = false; + } + } + + // Function to toggle the enabled status + toggleEnabled() { + this.isEnabled = !this.isEnabled; + + if (!this.isEnabled) { + // Hide the target instance when disabled + this.targetInstance.enabled = false; + } + + return this.isEnabled; // Return the new status if needed + } + + // Check if a ray intersects with a plane centered at each object's position + checkRayIntersections(rayStart: vec3, rayEnd: vec3) { + // Direction of the ray + const rayDirection = rayEnd.sub(rayStart).normalize(); + const rayLength = rayEnd.distance(rayStart); + + // Reset the intersecting objects array + this.intersectingObjects = []; + + // Check each object in the objectsToCheck array + for (let i = 0; i < this.objectsToCheck.length; i++) { + const object = this.objectsToCheck[i]; + if (!object || !object.enabled) { + continue; + } + + // Get object's transform + const objectTransform = object.getTransform(); + const objectPosition = objectTransform.getWorldPosition(); + const objectRotation = objectTransform.getWorldRotation(); + + // Define the plane normal based on the object's rotation (using forward vector) + let planeNormal = vec3.forward(); + planeNormal = objectRotation.multiplyVec3(planeNormal); + planeNormal = planeNormal.normalize(); + + // Calculate the dot product of ray direction and plane normal + let dirDotNormal = rayDirection.x * planeNormal.x; + dirDotNormal += rayDirection.y * planeNormal.y; + dirDotNormal += rayDirection.z * planeNormal.z; + + // Check if ray is parallel to the plane (or nearly parallel) + if (Math.abs(dirDotNormal) < 0.0001) { + // Ray is parallel to the plane, no intersection + continue; + } + + // Calculate the vector from ray start to plane point + const toPlane = new vec3( + objectPosition.x - rayStart.x, + objectPosition.y - rayStart.y, + objectPosition.z - rayStart.z + ); + + // Calculate the dot product of toPlane and plane normal + let planeDotNormal = toPlane.x * planeNormal.x; + planeDotNormal += toPlane.y * planeNormal.y; + planeDotNormal += toPlane.z * planeNormal.z; + + // Calculate the distance along the ray to the intersection point + const t = planeDotNormal / dirDotNormal; + + // Check if intersection is within the ray segment + if (t >= 0 && t <= rayLength) { + // Calculate the intersection point + const intersectionPoint = new vec3( + rayStart.x + rayDirection.x * t, + rayStart.y + rayDirection.y * t, + rayStart.z + rayDirection.z * t + ); + + // Check if the intersection point is within a rectangular area on the plane + const objectScale = objectTransform.getWorldScale(); + + // Define half-width and half-height of the rectangle + const halfWidth = objectScale.x * 0.65; // 65% of the object's width + const halfHeight = objectScale.y * 0.65; // 65% of the object's height + + // Calculate the vector from object position to intersection point + const toIntersection = new vec3( + intersectionPoint.x - objectPosition.x, + intersectionPoint.y - objectPosition.y, + intersectionPoint.z - objectPosition.z + ); + + // Calculate the component of toIntersection along the normal (perpendicular to plane) + let normalComponent = toIntersection.x * planeNormal.x; + normalComponent += toIntersection.y * planeNormal.y; + normalComponent += toIntersection.z * planeNormal.z; + + // Calculate the vector along the normal + const normalVector = new vec3( + planeNormal.x * normalComponent, + planeNormal.y * normalComponent, + planeNormal.z * normalComponent + ); + + // Calculate the component on the plane + const planeComponent = new vec3( + toIntersection.x - normalVector.x, + toIntersection.y - normalVector.y, + toIntersection.z - normalVector.z + ); + + // Get the right vector (x-axis) of the object + const rightVector = objectRotation.multiplyVec3(vec3.right()).normalize(); + + // Get the up vector (y-axis) of the object + const upVector = objectRotation.multiplyVec3(vec3.up()).normalize(); + + // Project the plane component onto the right and up vectors to get local x and y coordinates + let localX = planeComponent.x * rightVector.x; + localX += planeComponent.y * rightVector.y; + localX += planeComponent.z * rightVector.z; + + let localY = planeComponent.x * upVector.x; + localY += planeComponent.y * upVector.y; + localY += planeComponent.z * upVector.z; + + // Check if the point is within the rectangle + if (Math.abs(localX) <= halfWidth && Math.abs(localY) <= halfHeight) { + // We have a hit within the rectangular area of the plane + this.intersectingObjects.push(object); + print("[RayIntersection] PLANE HIT: " + object.name + " at distance " + t); + } + } + } + + this.isIntersectingWithOther = false; + if (this.intersectingObjects.length > 0) { + this.isIntersectingWithOther = true; + print("[RayIntersection] Found " + this.intersectingObjects.length + " intersecting objects"); + } + return this.intersectingObjects; + } + + // Get the list of objects currently intersecting with the ray + getIntersectingObjects(): SceneObject[] { + return this.intersectingObjects; + } +} diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SingleObjectRaycaster.ts.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SingleObjectRaycaster.ts.meta new file mode 100644 index 00000000..61cc7542 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/SingleObjectRaycaster.ts.meta @@ -0,0 +1,54 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 4a953906-5131-40bb-8522-f05a0d213b4f + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 4a953906-5131-40bb-8522-f05a0d213b4f + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + TypeScriptAsset: ! 375fedea-e7d9-43cc-887c-7a1974328630 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + decoyController: false + filterEnabled: false + isEnabled: false + objectToSpawn: false + objectsToCheck: false + targetObject: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - targetObject: ! 00000000-0000-0000-0000-000000000000 + objectToSpawn: ! 00000000-0000-0000-0000-000000000000 + filterEnabled: false + isEnabled: true + decoyController: ! 00000000-0000-0000-0000-000000000000 + objectsToCheck: ! + [] + ScriptTypes: + - + {} + InputLines: + - // @input Asset.ObjectPrefab targetObject + - // @input Asset.ObjectPrefab objectToSpawn + - // @input bool filterEnabled + - // @input bool isEnabled = true + - // @input Component.ScriptComponent decoyController + - "// @input SceneObject[] objectsToCheck" diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/Utils.ts b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/Utils.ts new file mode 100644 index 00000000..60b59f33 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/Utils.ts @@ -0,0 +1,63 @@ +/** + * Flatten a vec3, quat, or mat4. + * @param data The data to flatten. Can be a vec3, quat, or mat4. + * @returns Flattened array of numbers. + */ +export function flat(data: vec3 | vec4 | quat | mat4): number[] { + if (data instanceof vec3) { + return [data.x, data.y, data.z]; + } else if (data instanceof quat) { + return [data.x, data.y, data.z, data.w]; + } else if (data instanceof vec4) { + return [data.x, data.y, data.z, data.w]; + } else if (data instanceof mat4) { + return [data.column0, data.column1, data.column2, data.column3].flatMap(c => flat(c)); + } + throw new Error("Unknown type"); +} + +/** + * Create a 4x4 homogeneous transformation matrix from a position and rotation. + * @param pos Position of the transform. + * @param rot Rotation of the transform. + * @returns A 4x4 transformation matrix. + */ +export function tr(pos: vec3, rot: quat): mat4 { + // Create a new matrix + const matrix = new mat4(); + // Extract quaternion components + const x = rot.x; + const y = rot.y; + const z = rot.z; + const w = rot.w; + // Calculate rotation matrix components + // First column + matrix.column0 = new vec4( + 1 - 2 * (y * y + z * z), + 2 * (x * y + w * z), + 2 * (x * z - w * y), + 0 + ); + // Second column + matrix.column1 = new vec4( + 2 * (x * y - w * z), + 1 - 2 * (x * x + z * z), + 2 * (y * z + w * x), + 0 + ); + // Third column + matrix.column2 = new vec4( + 2 * (x * z + w * y), + 2 * (y * z - w * x), + 1 - 2 * (x * x + y * y), + 0 + ); + // Fourth column (translation) + matrix.column3 = new vec4( + pos.x, + pos.y, + pos.z, + 1 + ); + return matrix; +} \ No newline at end of file diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/Utils.ts.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/Utils.ts.meta new file mode 100644 index 00000000..0cb9252a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Scripts/TS/Utils.ts.meta @@ -0,0 +1,39 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! d6b68a5e-411f-4f10-9f7e-e47c49e2cd97 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! d6b68a5e-411f-4f10-9f7e-e47c49e2cd97 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + TypeScriptAsset: ! e940097f-198e-4a84-b74b-9414b09e843a + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + {} + ScriptTypesHidden: + {} + DefaultScriptInputs: + - + {} + ScriptTypes: + - + {} + InputLines: + [] diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial 1.mat b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial 1.mat new file mode 100644 index 00000000..082e80c2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial 1.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 6ed0b06e-a715-4bf2-af25-a4e128e69dc5 +- ! + CachedProperties: + - Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 0.500000} + baseTex: + typeIdx: 9 + value: + id: 6bc87d79-7748-4da4-8f90-a036bb6ada55 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! d331a7aa-ff7b-4e86-ac1e-52679d144976 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial 1.mat.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial 1.mat.meta new file mode 100644 index 00000000..413c5454 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial 1.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! a0b66315-3fae-4fb3-adc8-1b841065361b + ImporterName: MaterialImporter + PrimaryAsset: ! a0b66315-3fae-4fb3-adc8-1b841065361b + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial.mat b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial.mat new file mode 100644 index 00000000..05e97b21 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial.mat @@ -0,0 +1,73 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 32a9cc2d-eee6-4e4b-b3e2-bb5d297c55a1 +- ! + CachedProperties: + - Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: PremultipliedAlphaAuto + Properties: + Port_Default_N204: + typeIdx: 1 + value: 0.000000 + PreviewEnabled: + typeIdx: 0 + value: 0 + baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTex: + typeIdx: 9 + value: + id: 6bc87d79-7748-4da4-8f90-a036bb6ada55 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + mipmaps: false + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! d331a7aa-ff7b-4e86-ac1e-52679d144976 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial.mat.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial.mat.meta new file mode 100644 index 00000000..5a8f0b08 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/ImageMaterial.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 2ee1e7ce-a8b4-4555-8121-f7d85457c55c + ImporterName: MaterialImporter + PrimaryAsset: ! 2ee1e7ce-a8b4-4555-8121-f7d85457c55c + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/arrow_1.png b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/arrow_1.png new file mode 100644 index 00000000..166b94ea --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/arrow_1.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55209305db521011a783ef20d2367617ddcf2d5acf2e8522684c70e900dcafa4 +size 4017 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/arrow_1.png.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/arrow_1.png.meta new file mode 100644 index 00000000..1462c20a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/arrow_1.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 66ba4054-c03e-45f3-8bdb-b3a64009a9e9 + ImporterName: FileTextureImporter + PrimaryAsset: ! 66ba4054-c03e-45f3-8bdb-b3a64009a9e9 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 6yQcJ4RlWnxV20ryY0vhRY diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/simple-white-circle.png b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/simple-white-circle.png new file mode 100644 index 00000000..a776e2b7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/simple-white-circle.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5ecf112898e6f5037bfcace275df1ef3de3b892d68d28569bec60cda3d037ff +size 8470 diff --git a/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/simple-white-circle.png.meta b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/simple-white-circle.png.meta new file mode 100644 index 00000000..c5eb79ef --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unitree2Spectacles/Textures/simple-white-circle.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 6bc87d79-7748-4da4-8f90-a036bb6ada55 + ImporterName: FileTextureImporter + PrimaryAsset: ! 6bc87d79-7748-4da4-8f90-a036bb6ada55 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium diff --git a/Spectacles-2-Unitree/Assets/Unlit.mat b/Spectacles-2-Unitree/Assets/Unlit.mat new file mode 100644 index 00000000..75195ce7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unlit.mat @@ -0,0 +1,120 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 10b825d3-0bae-4ee3-ac6f-4500d292e97e +- ! + CachedProperties: + - Port_Depth_N004: + typeIdx: 1 + value: 1.000000 + - Port_FinalColor1_N004: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_FinalColor2_N004: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_FinalColor3_N004: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - Port_GSplatPointSize_N004: + typeIdx: 1 + value: 0.000000 + - Port_LODValue_N157: + typeIdx: 1 + value: 0.000000 + - Port_LODValue_N389: + typeIdx: 1 + value: 0.000000 + - Port_RayDirection_N004: + typeIdx: 4 + value: {x: 0.000000, y: 1.000000, z: 0.000000} + - Port_RayOrigin_N004: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + - Port_Speed_N022: + typeIdx: 1 + value: 1.000000 + - Port_Speed_N063: + typeIdx: 1 + value: 1.000000 + - Port_Value3_N001: + typeIdx: 1 + value: 0.000000 + - Port_Value4_N001: + typeIdx: 1 + value: 0.000000 + - Port_WorldNormal_N004: + typeIdx: 4 + value: {x: 0.000000, y: 1.000000, z: 0.000000} + - Port_WorldPosition_N004: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + - Port_WorldTangent_N004: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 1.000000} + - baseColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - baseTex: + typeIdx: 9 + value: + id: ffffffff-ffff-ffff-ffff-ffffffffffff + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: false + type: Texture2D + - baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + - baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + - baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: true + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - NODE_13_DROPLIST_ITEM 0 + - NODE_27_DROPLIST_ITEM 0 + - NODE_49_DROPLIST_ITEM 0 + - NODE_69_DROPLIST_ITEM 0 + BlendMode: Disabled + Properties: + Port_Default_N204: + typeIdx: 1 + value: 1.000000 + Port_Default_N369: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + overrideTimeDelta: + typeIdx: 1 + value: 0.000000 + overrideTimeElapsed: + typeIdx: 1 + value: 0.000000 + overrideTimeEnabled: + typeIdx: 0 + value: 0 + Pass: ! 506ff0f4-eeb3-48f2-8347-10e8cfe7ccb4 diff --git a/Spectacles-2-Unitree/Assets/Unlit.mat.meta b/Spectacles-2-Unitree/Assets/Unlit.mat.meta new file mode 100644 index 00000000..d1a42ad6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/Unlit.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! eacf8e40-e953-4ffc-bd26-bff04f254c11 + ImporterName: MaterialImporter + PrimaryAsset: ! eacf8e40-e953-4ffc-bd26-bff04f254c11 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/Plane.mat b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/Plane.mat new file mode 100644 index 00000000..64cddb17 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/Plane.mat @@ -0,0 +1,30 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 2bbc5387-95bd-45fc-821b-b6a26566d7fb +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + - ENABLE_BASE_TEX + - ENABLE_LIGHTING + - ENABLE_NORMALMAP + BlendMode: PremultipliedAlphaAuto + Properties: + Port_FinalColor_N004: + typeIdx: 5 + value: {x: 0.574151, y: 0.574166, z: 0.574151, w: 0.494820} + PreviewEnabled: + typeIdx: 0 + value: 0 + Pass: ! a9e4cdf3-bcdd-4c6e-87b0-39923d8ec159 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/Plane.mat.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/Plane.mat.meta new file mode 100644 index 00000000..e8fc935b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/Plane.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 3bb2dd7b-ed51-477c-b362-94ce6dd5a543 + ImporterName: MaterialImporter + PrimaryAsset: ! 3bb2dd7b-ed51-477c-b362-94ce6dd5a543 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/cloud.mat b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/cloud.mat new file mode 100644 index 00000000..cb154871 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/cloud.mat @@ -0,0 +1,118 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 40cfd03b-3ae2-4533-af2a-044d6bb742eb +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Disabled + Properties: + Port_Center_N016: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Emissive_N006: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_SpecularAO_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseTex: + typeIdx: 9 + value: + id: 4c0f7fd8-cebb-4b07-93b9-5d63390d37fe + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTex: + typeIdx: 9 + value: + id: 737784c7-550b-4f88-b39c-d8f68a4024fe + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + materialParamsTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + materialParamsTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTex: + typeIdx: 9 + value: + id: 87cb8275-9eca-4ff9-ae0c-5abb4db13604 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + uvScale: + typeIdx: 1 + value: 1.000000 + Pass: ! 5b7cd6c7-0afb-44e7-a868-0962d4b9e5ce diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/cloud.mat.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/cloud.mat.meta new file mode 100644 index 00000000..de53a5dd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/cloud.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! f8acb59d-83d8-4c62-9ce9-7a6d3ddf9665 + ImporterName: MaterialImporter + PrimaryAsset: ! f8acb59d-83d8-4c62-9ce9-7a6d3ddf9665 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/house.mat b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/house.mat new file mode 100644 index 00000000..e319be67 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/house.mat @@ -0,0 +1,118 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 094a9821-168c-4ae1-94ba-213d20d51cd2 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Disabled + Properties: + Port_Center_N016: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Emissive_N006: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_SpecularAO_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseTex: + typeIdx: 9 + value: + id: d93d4f3d-e26f-49c6-a85c-19599bee935e + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTex: + typeIdx: 9 + value: + id: 4d3d21f1-c0e9-4cc0-aa98-877a31f30317 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + materialParamsTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + materialParamsTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTex: + typeIdx: 9 + value: + id: 35b2684a-2000-45d8-b71b-4a265e676d8a + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + uvScale: + typeIdx: 1 + value: 1.000000 + Pass: ! 5b7cd6c7-0afb-44e7-a868-0962d4b9e5ce diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/house.mat.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/house.mat.meta new file mode 100644 index 00000000..32bfb439 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/house.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + ImporterName: MaterialImporter + PrimaryAsset: ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/statue.mat b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/statue.mat new file mode 100644 index 00000000..f25d3f20 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/statue.mat @@ -0,0 +1,118 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 020b7225-3e18-4233-ac00-9a000c313a18 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Disabled + Properties: + Port_Center_N016: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Emissive_N006: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_SpecularAO_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseTex: + typeIdx: 9 + value: + id: 30f15d14-831b-4e1c-bafe-7f440bccfc08 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTex: + typeIdx: 9 + value: + id: 29746540-73db-42f4-bfb3-a0d1efeb3134 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + materialParamsTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + materialParamsTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTex: + typeIdx: 9 + value: + id: 05f97cb0-e934-4dbb-bebd-9d39a5545190 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + uvScale: + typeIdx: 1 + value: 1.000000 + Pass: ! 5b7cd6c7-0afb-44e7-a868-0962d4b9e5ce diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/statue.mat.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/statue.mat.meta new file mode 100644 index 00000000..fb78ceea --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/statue.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 03ade6aa-3833-492c-a811-8a61b24b15ed + ImporterName: MaterialImporter + PrimaryAsset: ! 03ade6aa-3833-492c-a811-8a61b24b15ed + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/tree.mat b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/tree.mat new file mode 100644 index 00000000..80616119 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/tree.mat @@ -0,0 +1,118 @@ +- ! + PackagePath: "" + PassesInfo: + - ! 8ea65807-08ba-4fa7-8a6d-e96e9ae60947 +- ! + CachedProperties: + [] + DepthWrite: true + DepthTest: true + DepthFunction: LessEqual + TwoSided: false + ColorMask: {x: true, y: true, z: true, w: true} + CullMode: Back + PolygonOffset: {x: 0.000000, y: 0.000000} + FrustumCulling: Auto + FrustumCullPad: 0.000000 + InstanceCount: 1 + Defines: + [] + BlendMode: Disabled + Properties: + Port_Center_N016: + typeIdx: 3 + value: {x: 0.000000, y: 0.000000} + Port_Emissive_N006: + typeIdx: 4 + value: {x: 0.000000, y: 0.000000, z: 0.000000} + Port_SpecularAO_N006: + typeIdx: 4 + value: {x: 1.000000, y: 1.000000, z: 1.000000} + PreviewEnabled: + typeIdx: 0 + value: 0 + baseTex: + typeIdx: 9 + value: + id: fe4203a5-42de-4ca3-bd8e-470278a1a8d2 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + baseTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + baseTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + baseTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTex: + typeIdx: 9 + value: + id: 20414496-6247-4392-996b-6b861333647e + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + materialParamsTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + materialParamsTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + materialParamsTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTex: + typeIdx: 9 + value: + id: 2c40b49e-198a-48d2-a1a6-d69f1ebb1ac8 + sampler: + filteringMode: Trilinear + wrapModeU: Repeat + wrapModeV: Repeat + wrapModeW: Repeat + borderColor: {x: 0.000000, y: 0.000000, z: 0.000000, w: 0.000000} + mipmaps: true + type: Texture2D + normalTexBorderColor: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexDims: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + normalTexTransform: + typeIdx: 7 + value: + 0: {x: 1.000000, y: 0.000000, z: 0.000000} + 1: {x: 0.000000, y: 1.000000, z: 0.000000} + 2: {x: 0.000000, y: 0.000000, z: 1.000000} + normalTexUvMinMax: + typeIdx: 5 + value: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + uvScale: + typeIdx: 1 + value: 1.000000 + Pass: ! 5b7cd6c7-0afb-44e7-a868-0962d4b9e5ce diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/tree.mat.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/tree.mat.meta new file mode 100644 index 00000000..aaba16dd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Materials/tree.mat.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + Material: ! 4361b8db-869b-4959-a4f4-56af6d5428eb + ImporterName: MaterialImporter + PrimaryAsset: ! 4361b8db-869b-4959-a4f4-56af6d5428eb + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/Plane.mesh b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/Plane.mesh new file mode 100644 index 00000000..19129e99 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/Plane.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b321d02694706f032870bec8bfc42b552497b543bf875125776b21570046bedf +size 1332 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/Plane.mesh.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/Plane.mesh.meta new file mode 100644 index 00000000..dfa4cad4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/Plane.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 0734656f-6ee0-45b3-811d-0012ad8a7aab + ImporterName: FileMeshImporter + PrimaryAsset: ! 0734656f-6ee0-45b3-811d-0012ad8a7aab + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/cloud.mesh b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/cloud.mesh new file mode 100644 index 00000000..f9ee0711 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/cloud.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8880557483d259b97488ce6fa285ffee4bed656063b45e86b5256544a5c4c118 +size 33864 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/cloud.mesh.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/cloud.mesh.meta new file mode 100644 index 00000000..3eeed220 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/cloud.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 8de39f36-b2bf-482a-b8d3-a66f3ac16e0a + ImporterName: FileMeshImporter + PrimaryAsset: ! 8de39f36-b2bf-482a-b8d3-a66f3ac16e0a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/eyes.mesh b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/eyes.mesh new file mode 100644 index 00000000..ad82dbad --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/eyes.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11b609c5fd89bd0b44acf269bbc54e6ff5397d49031f36cadf4080480f93421c +size 2952 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/eyes.mesh.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/eyes.mesh.meta new file mode 100644 index 00000000..fb8e46e6 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/eyes.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 7109a8d1-3f2f-46f4-beb0-f0635ef85529 + ImporterName: FileMeshImporter + PrimaryAsset: ! 7109a8d1-3f2f-46f4-beb0-f0635ef85529 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_open.mesh b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_open.mesh new file mode 100644 index 00000000..429fd8a8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_open.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:676363c79b6a945dd2e60106ecb92bd268fc1c9b67f4aa27f1cb42bb9246f345 +size 7896 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_open.mesh.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_open.mesh.meta new file mode 100644 index 00000000..227315a3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_open.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 0baf40f2-9bd4-44d1-8cd4-a08ac2edcf47 + ImporterName: FileMeshImporter + PrimaryAsset: ! 0baf40f2-9bd4-44d1-8cd4-a08ac2edcf47 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_smile.mesh b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_smile.mesh new file mode 100644 index 00000000..c2d34e97 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_smile.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9344abdda19ce7af697fd27cd1e5c3ab7f8eed21c555bb45eb8e6b1d4724475 +size 6600 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_smile.mesh.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_smile.mesh.meta new file mode 100644 index 00000000..7ccc1a66 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/mouth_smile.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 3fd9d803-a5d2-4485-b456-39a74213bf52 + ImporterName: FileMeshImporter + PrimaryAsset: ! 3fd9d803-a5d2-4485-b456-39a74213bf52 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/sit.mesh b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/sit.mesh new file mode 100644 index 00000000..8079812f --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/sit.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:554c8cf80cd7102dba5a745965cf865037f57872a3656c5d603d99cb6c86baf1 +size 11880 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/sit.mesh.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/sit.mesh.meta new file mode 100644 index 00000000..a2ec49a8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/sit.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 3b86289a-3408-4a79-a01c-11ed5f124659 + ImporterName: FileMeshImporter + PrimaryAsset: ! 3b86289a-3408-4a79-a01c-11ed5f124659 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/stand.mesh b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/stand.mesh new file mode 100644 index 00000000..62b93388 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/stand.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7160326239e48208e5118ea5822156fae14f34610f2f764a6f052b0dcffb6d8 +size 14136 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/stand.mesh.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/stand.mesh.meta new file mode 100644 index 00000000..0c18f108 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/stand.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 664395a9-c251-45e3-af62-29297a42ca54 + ImporterName: FileMeshImporter + PrimaryAsset: ! 664395a9-c251-45e3-af62-29297a42ca54 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/statue.mesh b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/statue.mesh new file mode 100644 index 00000000..82ae6e43 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/statue.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cd887e3be7cd0e1cec60494c0620aed1860dfeea5c6d1bd02a4102e0b2c9399 +size 23916 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/statue.mesh.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/statue.mesh.meta new file mode 100644 index 00000000..3a2a74d9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/statue.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 2dc61a35-e6cf-4f05-9460-04dfe08309be + ImporterName: FileMeshImporter + PrimaryAsset: ! 2dc61a35-e6cf-4f05-9460-04dfe08309be + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tail.mesh b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tail.mesh new file mode 100644 index 00000000..2c70185a --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tail.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37a84fdc16f1f45203dfbd9ea7817d8fbed7747ebc741000904a4a4f64ca2e43 +size 5256 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tail.mesh.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tail.mesh.meta new file mode 100644 index 00000000..e3c2d9a8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tail.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 166dbb28-a91c-46a7-8801-2060fa16640a + ImporterName: FileMeshImporter + PrimaryAsset: ! 166dbb28-a91c-46a7-8801-2060fa16640a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tree.mesh b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tree.mesh new file mode 100644 index 00000000..90c2da90 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tree.mesh @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:521ab9a9c18e4d78d2c9a116d9142ad71355ea0bc613b43de608217fff73a8c2 +size 5568 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tree.mesh.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tree.mesh.meta new file mode 100644 index 00000000..f42ea6ee --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Meshes/tree.mesh.meta @@ -0,0 +1,22 @@ +- ! + ImportedAssetIds: + FileMesh: ! 883e012a-ff32-45b7-bee4-68774edf2471 + ImporterName: FileMeshImporter + PrimaryAsset: ! 883e012a-ff32-45b7-bee4-68774edf2471 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + ModifiedVertexFormats: + normal: Float + position: Float + tangent: Float + texture0: Float + CompressionSettings: ! + CompressorName: None + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/cloud.ss_graph b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/cloud.ss_graph new file mode 100644 index 00000000..e8e45f23 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/cloud.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9dff129dc3f0330d72d0d4c6bdfe3eec3f861f2b7e3b398ab8234709ee18ebd +size 76138 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/cloud.ss_graph.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/cloud.ss_graph.meta new file mode 100644 index 00000000..25dbc6f9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/cloud.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 5b7cd6c7-0afb-44e7-a868-0962d4b9e5ce + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 5b7cd6c7-0afb-44e7-a868-0962d4b9e5ce + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/pbr.ss_graph b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/pbr.ss_graph new file mode 100644 index 00000000..e392438c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/pbr.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39a229144011addc8f8a21fba81394673898c02e521c619bceb54a8df51530f3 +size 13023 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/pbr.ss_graph.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/pbr.ss_graph.meta new file mode 100644 index 00000000..3154bfdf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Shaders/pbr.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! a9e4cdf3-bcdd-4c6e-87b0-39923d8ec159 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! a9e4cdf3-bcdd-4c6e-87b0-39923d8ec159 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_base.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_base.png new file mode 100644 index 00000000..2c25a417 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_base.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dec94eba924f6be32131b6ede55a15381673093a0f6522487ebd8671bff092a +size 154581 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_base.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_base.png.meta new file mode 100644 index 00000000..34505437 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_base.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! fe4203a5-42de-4ca3-bd8e-470278a1a8d2 + ImporterName: FileTextureImporter + PrimaryAsset: ! fe4203a5-42de-4ca3-bd8e-470278a1a8d2 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_normal.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_normal.png new file mode 100644 index 00000000..22efc0af --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_normal.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30065ad43831d28c6adcab6bc691c8a0a88059c8a9384146ba22e5c8eafafcf7 +size 283354 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_normal.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_normal.png.meta new file mode 100644 index 00000000..3acee3f5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_normal.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 2c40b49e-198a-48d2-a1a6-d69f1ebb1ac8 + ImporterName: FileTextureImporter + PrimaryAsset: ! 2c40b49e-198a-48d2-a1a6-d69f1ebb1ac8 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_params.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_params.png new file mode 100644 index 00000000..5f87b5dd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_params.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93f990f74bc8862eb87c1985f0f23fb75ad8354067400baa83c4a50e2fc70ed7 +size 217815 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_params.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_params.png.meta new file mode 100644 index 00000000..b4933c30 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/Tree_params.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 20414496-6247-4392-996b-6b861333647e + ImporterName: FileTextureImporter + PrimaryAsset: ! 20414496-6247-4392-996b-6b861333647e + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_base.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_base.png new file mode 100644 index 00000000..d3407ee8 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_base.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f004ad5f042b0ae4b949457ad74440d7d43b298acdbb4e4688d211525edff947 +size 1144 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_base.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_base.png.meta new file mode 100644 index 00000000..f6185097 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_base.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 4c0f7fd8-cebb-4b07-93b9-5d63390d37fe + ImporterName: FileTextureImporter + PrimaryAsset: ! 4c0f7fd8-cebb-4b07-93b9-5d63390d37fe + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_normal.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_normal.png new file mode 100644 index 00000000..422aba47 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_normal.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c82870881f4f0beaf95a5fcc2966407c446cbd55d5eb96fa0720d5972f6a6456 +size 447694 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_normal.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_normal.png.meta new file mode 100644 index 00000000..557e7f75 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_normal.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 87cb8275-9eca-4ff9-ae0c-5abb4db13604 + ImporterName: FileTextureImporter + PrimaryAsset: ! 87cb8275-9eca-4ff9-ae0c-5abb4db13604 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_params.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_params.png new file mode 100644 index 00000000..5f235bd7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_params.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e385b4281086a7cb81c57fb0670cdba9df79715f496d374035348ad58d3e7d23 +size 107232 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_params.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_params.png.meta new file mode 100644 index 00000000..b6806eb2 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/cloud_params.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 737784c7-550b-4f88-b39c-d8f68a4024fe + ImporterName: FileTextureImporter + PrimaryAsset: ! 737784c7-550b-4f88-b39c-d8f68a4024fe + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_base.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_base.png new file mode 100644 index 00000000..5bb377a9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_base.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26b904512cb8104405f5913682b407b65e67666ba9249dfa643e025a8efcd0b0 +size 19040 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_base.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_base.png.meta new file mode 100644 index 00000000..251a77f1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_base.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! d93d4f3d-e26f-49c6-a85c-19599bee935e + ImporterName: FileTextureImporter + PrimaryAsset: ! d93d4f3d-e26f-49c6-a85c-19599bee935e + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_normal.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_normal.png new file mode 100644 index 00000000..18acd1bd --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_normal.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f2b5907cca2113afaf7ed52f2b24dd0935508bbb46781cc6aa17fef2b966fff +size 185541 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_normal.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_normal.png.meta new file mode 100644 index 00000000..9bc455b7 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_normal.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 35b2684a-2000-45d8-b71b-4a265e676d8a + ImporterName: FileTextureImporter + PrimaryAsset: ! 35b2684a-2000-45d8-b71b-4a265e676d8a + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_params.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_params.png new file mode 100644 index 00000000..a42f6810 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_params.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02f6137c73bbd9719dc2849b56b645ec83323371298a30206ab74ca1ef18529a +size 56529 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_params.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_params.png.meta new file mode 100644 index 00000000..add6a4de --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/house_params.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 4d3d21f1-c0e9-4cc0-aa98-877a31f30317 + ImporterName: FileTextureImporter + PrimaryAsset: ! 4d3d21f1-c0e9-4cc0-aa98-877a31f30317 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_base.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_base.png new file mode 100644 index 00000000..84ee81a3 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_base.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab87e0c7be631f17e79074a768f3b2f4cac77d33470d95b04650b85c4c75c8d4 +size 62669 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_base.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_base.png.meta new file mode 100644 index 00000000..7b144ce5 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_base.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 30f15d14-831b-4e1c-bafe-7f440bccfc08 + ImporterName: FileTextureImporter + PrimaryAsset: ! 30f15d14-831b-4e1c-bafe-7f440bccfc08 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_normal.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_normal.png new file mode 100644 index 00000000..aedef1f9 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_normal.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b1a7992c5f54ad1dc989feec4e4872210c647c80aea3503f3109585eee9c7f4 +size 110607 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_normal.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_normal.png.meta new file mode 100644 index 00000000..ed9300eb --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_normal.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 05f97cb0-e934-4dbb-bebd-9d39a5545190 + ImporterName: FileTextureImporter + PrimaryAsset: ! 05f97cb0-e934-4dbb-bebd-9d39a5545190 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_params.png b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_params.png new file mode 100644 index 00000000..871addaf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_params.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d5f30b15ec8af56a556856e920d32aeab9186157a33062a236336d1a3f20e01 +size 126983 diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_params.png.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_params.png.meta new file mode 100644 index 00000000..174234bf --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/Textures/statue_params.png.meta @@ -0,0 +1,19 @@ +- ! + ImportedAssetIds: + Texture: ! 29746540-73db-42f4-bfb3-a0d1efeb3134 + ImporterName: FileTextureImporter + PrimaryAsset: ! 29746540-73db-42f4-bfb3-a0d1efeb3134 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! + CompressorName: Performance + CompressionSettings: ! + Level: Medium + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/World Query Hit Example.prefab b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/World Query Hit Example.prefab new file mode 100644 index 00000000..e79b2327 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/World Query Hit Example.prefab @@ -0,0 +1,478 @@ +- ! + PackagePath: "" + objects: + - ! c34ef930-7872-485d-98fb-0d1f2a526ee1 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: component_1 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 03ade6aa-3833-492c-a811-8a61b24b15ed + Mesh: ! 2dc61a35-e6cf-4f05-9460-04dfe08309be + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Sit + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 201e3378-90b2-4fdb-a9f7-14fb6ad810ea + Components: + - ! da3bfe38-abf7-42ee-aa0f-71e44e38bb02 +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 3bb2dd7b-ed51-477c-b362-94ce6dd5a543 + Mesh: ! 0734656f-6ee0-45b3-811d-0012ad8a7aab + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Mouth_Smile + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.003713, y: 89.758713, z: -158.852646} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 4adac890-d736-4fea-a137-18664e3df81a +- ! + PrefabRemaps: + [] + Name: Cloud + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.414738, z: 0.000000} + rotation: {x: -180.000000, y: -0.000000, z: 180.000000} + scale: {x: 0.034598, y: 0.034598, z: 0.034598} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! e3ddb21b-a5c4-47e5-94c1-2573bc833b7d +- ! + PrefabRemaps: + [] + Name: component_1 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 7109a8d1-3f2f-46f4-beb0-f0635ef85529 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 166dbb28-a91c-46a7-8801-2060fa16640a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: 2. Add Spectacles Interaction Kit to project + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_4 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 3fd9d803-a5d2-4485-b456-39a74213bf52 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Eyes + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.142366, y: 118.308319, z: -158.286438} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 2ea64cf3-41d1-4ad2-847f-f1b90b69ad0d +- ! + PrefabRemaps: + [] + Name: Statue + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 0.100000, y: 0.100000, z: 0.100000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 000f720c-17f8-4a81-b4ab-aa508664aa5c +- ! + PrefabRemaps: + [] + Name: component_5 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 664395a9-c251-45e3-af62-29297a42ca54 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Tail + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -2.294500, y: 16.376749, z: 134.126617} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 3f496510-4b23-421e-af4c-0f699804f95f +- ! + PrefabRemaps: + [] + Name: Plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 30.951649, y: 30.951649, z: 30.951649} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 1759a169-567f-41ac-91cf-acf19c3aae43 +- ! + PrefabRemaps: + [] + Name: Stand + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! fc4634fd-12a1-451c-96ed-f139611febf2 + Components: + - ! 620a9680-aea2-437c-9605-ce3336bfecc1 +- ! + PrefabRemaps: + [] + Name: component_6 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 0baf40f2-9bd4-44d1-8cd4-a08ac2edcf47 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: "Objects to spawn [EDIT]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 60a552ed-064a-4254-8120-1ba7213fc2fe + - ! aada7af9-8f64-4a85-8112-890b337fc49e + - ! e79a7204-10bd-4919-93e0-92412b109073 + - ! 252cecd1-a845-4559-aef9-671630854c93 + Components: + [] +- ! + PrefabRemaps: + [] + Name: House + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 180.000000, y: 26.814974, z: 180.000000} + scale: {x: 0.033425, y: 0.033425, z: 0.033425} + hasSegmentScaleCompensation: false + Children: + - ! 5bcba7d3-d033-4fe1-b702-28b2c329d5b7 + - ! 66c626ff-d915-43bb-b9a0-ea1930e7b590 + - ! 02888fa9-9aa0-4b7c-8d76-92dcfb09934c + - ! 8877a2b6-fbc6-4e64-ac40-1569bd2ac5c1 + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 4361b8db-869b-4959-a4f4-56af6d5428eb + Mesh: ! 883e012a-ff32-45b7-bee4-68774edf2471 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: 1. Configure project for Spectacles + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: World Query Hit Example + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! bb6503a3-22bd-4a30-b923-7b77ce00a184 + - ! 4a9631af-0b16-458e-9349-5b66ed8735db + - ! e569c532-3e4b-45f8-b5b2-82379e27615f + Components: + [] +- ! + PrefabRemaps: + [] + Name: component_3 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 3b86289a-3408-4a79-a01c-11ed5f124659 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f8acb59d-83d8-4c62-9ce9-7a6d3ddf9665 + Mesh: ! 8de39f36-b2bf-482a-b8d3-a66f3ac16e0a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: "3. World Query Example [EDIT ME]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 70f81438-793f-4147-9719-c25e61efb4ba + - ! 986fad9f-6293-4e43-a165-2c2a14fd847b + Components: + - ! facc59d1-750a-447d-85d7-f2da208956fe +- ! + PrefabRemaps: + [] + Name: Tree + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.032425, y: 0.032427, z: 0.032427} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! ab1adf31-79bd-4825-9637-1f98f02c09d9 +- ! + PrefabRemaps: + [] + Name: WorldQueryHitExample + Enabled: true + ScriptAsset: ! 4af91f0b-dfd5-4e60-9ae1-e13c6ac3c8f7 + ScriptInputsDefault: + filterEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + indexToSpawn: ! 2.000000 + targetObject: ! 986fad9f-6293-4e43-a165-2c2a14fd847b + objectsToSpawn: ! + - ! 60a552ed-064a-4254-8120-1ba7213fc2fe + - ! aada7af9-8f64-4a85-8112-890b337fc49e + - ! e79a7204-10bd-4919-93e0-92412b109073 + - ! 252cecd1-a845-4559-aef9-671630854c93 + filterEnabled: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Mouth_Open + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 92.195312, z: -157.735001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 8eb07302-5280-4cdd-87a5-8becfdf6c4ff diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/World Query Hit Example.prefab.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/World Query Hit Example.prefab.meta new file mode 100644 index 00000000..870797ac --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/World Query Hit Example.prefab.meta @@ -0,0 +1,524 @@ +- ! + ImportedAssetIds: + ObjectPrefab: ! ff512c1a-da17-4a45-a199-defd6536fcf9 + ImporterName: ObjectPrefabImporter + PrimaryAsset: ! ff512c1a-da17-4a45-a199-defd6536fcf9 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + ObjectPrefab: ! de684141-4490-437e-9cd3-363c45484694 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy +- ! + PrefabRemaps: + [] + Name: Eyes + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.142366, y: 118.308319, z: -158.286438} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 91d768b9-df7e-4abd-9f99-367d9395824d +- ! + PrefabRemaps: + [] + Name: House + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 180.000000, y: 26.814974, z: 180.000000} + scale: {x: 0.033425, y: 0.033425, z: 0.033425} + hasSegmentScaleCompensation: false + Children: + - ! 00c2c419-ba85-4fbd-af5b-8edf541ac66b + - ! 7a60ab9a-a369-4dd3-a4f9-4232ead5b563 + - ! 1de66b48-21d6-4200-a87f-90dfb5100bd9 + - ! d1cf728a-f434-4c6f-a611-bf26c35daf7b + Components: + [] +- ! + PrefabRemaps: + [] + Name: Sit + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! d1a0d0b8-aca8-49ee-857e-63b8bfe8f3ef + Components: + - ! 1f474e4c-0949-4db6-92a6-5997fa73542c +- ! + PrefabRemaps: + [] + Name: component_3 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 3b86289a-3408-4a79-a01c-11ed5f124659 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Tree + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 0.032425, y: 0.032427, z: 0.032427} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! bfa4337d-5dd3-4dc6-af17-ce201094fafb +- ! + PrefabRemaps: + [] + Name: 1. Configure project for Spectacles + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: 2. Add Spectacles Interaction Kit to project + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + [] +- ! + PrefabRemaps: + [] + Name: Mouth_Open + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 92.195312, z: -157.735001} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! 9a7fa4dd-03ff-4098-a3eb-e054041f67ac +- ! + PrefabRemaps: + [] + Name: Tail + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -2.294500, y: 16.376749, z: 134.126617} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! cf83b7bc-dff5-46e1-b753-867b18b44726 +- ! + PrefabRemaps: + [] + Name: WorldQueryHitExample + Enabled: true + ScriptAsset: ! 4af91f0b-dfd5-4e60-9ae1-e13c6ac3c8f7 + ScriptInputsDefault: + filterEnabled: true + ScriptTypesDefault: + {} + ScriptInputs: + "": + indexToSpawn: ! 2.000000 + targetObject: ! 9762a85a-8dbd-4697-a7dd-e9d42658a6c2 + objectsToSpawn: ! + - ! b26a22e9-5374-40ad-8dcc-c428c004d10f + - ! 1ca71665-b12e-41a5-a6a3-473ee34cea88 + - ! 42b48979-31cc-478e-8fe3-0f3141b128b0 + - ! 990751e8-984a-4d3f-9bf9-8315a0a64d70 + filterEnabled: false + ScriptTypes: + "": + {} +- ! + PrefabRemaps: + [] + Name: Plane + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 30.951649, y: 30.951649, z: 30.951649} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! c76613f6-21b3-4641-96ad-72fee69a7a37 +- ! + PrefabRemaps: + [] + Name: component_1 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 7109a8d1-3f2f-46f4-beb0-f0635ef85529 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: "Objects to spawn [EDIT]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! b26a22e9-5374-40ad-8dcc-c428c004d10f + - ! 1ca71665-b12e-41a5-a6a3-473ee34cea88 + - ! 42b48979-31cc-478e-8fe3-0f3141b128b0 + - ! 990751e8-984a-4d3f-9bf9-8315a0a64d70 + Components: + [] +- ! + PrefabRemaps: + [] + Name: Cloud + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.414738, z: 0.000000} + rotation: {x: -180.000000, y: -0.000000, z: 180.000000} + scale: {x: 0.034598, y: 0.034598, z: 0.034598} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a1f90dbd-ca04-43eb-8eea-e2a374aaf39f +- ! + PrefabRemaps: + [] + Name: component_6 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 0baf40f2-9bd4-44d1-8cd4-a08ac2edcf47 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! f8acb59d-83d8-4c62-9ce9-7a6d3ddf9665 + Mesh: ! 8de39f36-b2bf-482a-b8d3-a66f3ac16e0a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_1 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 03ade6aa-3833-492c-a811-8a61b24b15ed + Mesh: ! 2dc61a35-e6cf-4f05-9460-04dfe08309be + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Statue + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 0.100000, y: 0.100000, z: 0.100000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! a2ef3c24-09c6-4788-bdd8-cb2bc38818ed +- ! + PrefabRemaps: + [] + Name: component_4 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 3fd9d803-a5d2-4485-b456-39a74213bf52 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_0 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 4361b8db-869b-4959-a4f4-56af6d5428eb + Mesh: ! 883e012a-ff32-45b7-bee4-68774edf2471 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Render Mesh Visual + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 3bb2dd7b-ed51-477c-b362-94ce6dd5a543 + Mesh: ! 0734656f-6ee0-45b3-811d-0012ad8a7aab + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: component_2 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 166dbb28-a91c-46a7-8801-2060fa16640a + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: Mouth_Smile + Enabled: true + Layers: 1 + LocalTransform: + position: {x: -0.003713, y: 89.758713, z: -158.852646} + rotation: {x: 0.000000, y: -0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + [] + Components: + - ! b4e0ecec-d7dd-4007-b6c8-343f5917648d +- ! + PrefabRemaps: + [] + Name: Stand + Enabled: false + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 52a85f2b-f6da-4be7-a32f-153256578006 + Components: + - ! d5d5527f-e1d2-4d1e-9568-644cd8ed389e +- ! + PrefabRemaps: + [] + Name: component_5 + Enabled: true + RenderOrder: 0 + StretchMode: Stretch + VerticalAlignment: Center + HorizontalAlignment: Center + MeshShadowMode: None + ShadowColor: {x: 1.000000, y: 1.000000, z: 1.000000, w: 1.000000} + ShadowDensity: 1.000000 + Materials: + - ! 85c137db-1037-4cd6-a5cf-2604a32c0b0a + Mesh: ! 664395a9-c251-45e3-af62-29297a42ca54 + Skin: ! 00000000-0000-0000-0000-000000000000 + BlendShapesEnabled: true + BlendNormals: false + BlendShapes: + {} +- ! + PrefabRemaps: + [] + Name: "3. World Query Example [EDIT ME]" + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 8d299477-ec33-4c5a-b55b-ebad53348c2f + - ! 9762a85a-8dbd-4697-a7dd-e9d42658a6c2 + Components: + - ! 8c1e1b80-b014-41ae-a74c-b1e1dd4c223d +- ! + SourceRemaps: + - 000f720c-17f8-4a81-b4ab-aa508664aa5c: a2ef3c24-09c6-4788-bdd8-cb2bc38818ed + - 02888fa9-9aa0-4b7c-8d76-92dcfb09934c: 1de66b48-21d6-4200-a87f-90dfb5100bd9 + - 1759a169-567f-41ac-91cf-acf19c3aae43: c76613f6-21b3-4641-96ad-72fee69a7a37 + - 201e3378-90b2-4fdb-a9f7-14fb6ad810ea: d1a0d0b8-aca8-49ee-857e-63b8bfe8f3ef + - 252cecd1-a845-4559-aef9-671630854c93: 990751e8-984a-4d3f-9bf9-8315a0a64d70 + - 2ea64cf3-41d1-4ad2-847f-f1b90b69ad0d: 91d768b9-df7e-4abd-9f99-367d9395824d + - 3f496510-4b23-421e-af4c-0f699804f95f: cf83b7bc-dff5-46e1-b753-867b18b44726 + - 4a9631af-0b16-458e-9349-5b66ed8735db: 525782ce-da8f-432f-82e3-9f018f14ab2c + - 4adac890-d736-4fea-a137-18664e3df81a: b4e0ecec-d7dd-4007-b6c8-343f5917648d + - 5bcba7d3-d033-4fe1-b702-28b2c329d5b7: 00c2c419-ba85-4fbd-af5b-8edf541ac66b + - 60a552ed-064a-4254-8120-1ba7213fc2fe: b26a22e9-5374-40ad-8dcc-c428c004d10f + - 620a9680-aea2-437c-9605-ce3336bfecc1: d5d5527f-e1d2-4d1e-9568-644cd8ed389e + - 66c626ff-d915-43bb-b9a0-ea1930e7b590: 7a60ab9a-a369-4dd3-a4f9-4232ead5b563 + - 70f81438-793f-4147-9719-c25e61efb4ba: 8d299477-ec33-4c5a-b55b-ebad53348c2f + - 8877a2b6-fbc6-4e64-ac40-1569bd2ac5c1: d1cf728a-f434-4c6f-a611-bf26c35daf7b + - 8eb07302-5280-4cdd-87a5-8becfdf6c4ff: 9a7fa4dd-03ff-4098-a3eb-e054041f67ac + - 986fad9f-6293-4e43-a165-2c2a14fd847b: 9762a85a-8dbd-4697-a7dd-e9d42658a6c2 + - aada7af9-8f64-4a85-8112-890b337fc49e: 1ca71665-b12e-41a5-a6a3-473ee34cea88 + - ab1adf31-79bd-4825-9637-1f98f02c09d9: bfa4337d-5dd3-4dc6-af17-ce201094fafb + - bb6503a3-22bd-4a30-b923-7b77ce00a184: 492d21da-d6fa-4bea-ada5-0f2c4080abca + - c34ef930-7872-485d-98fb-0d1f2a526ee1: ee4d2a5b-3516-490e-b00c-1d49445accf2 + - da3bfe38-abf7-42ee-aa0f-71e44e38bb02: 1f474e4c-0949-4db6-92a6-5997fa73542c + - e3ddb21b-a5c4-47e5-94c1-2573bc833b7d: a1f90dbd-ca04-43eb-8eea-e2a374aaf39f + - e569c532-3e4b-45f8-b5b2-82379e27615f: daa92ff9-6480-4814-8b4f-3030bf71f6c6 + - e79a7204-10bd-4919-93e0-92412b109073: 42b48979-31cc-478e-8fe3-0f3141b128b0 + - facc59d1-750a-447d-85d7-f2da208956fe: 8c1e1b80-b014-41ae-a74c-b1e1dd4c223d + - fc4634fd-12a1-451c-96ed-f139611febf2: 52a85f2b-f6da-4be7-a32f-153256578006 + SourceState: ! ea774ea5-2c80-46c7-b824-290852491377 +- ! + PackagePath: "" + objects: + - ! ee4d2a5b-3516-490e-b00c-1d49445accf2 + LazyLoading: false + RetainAssets: true +- ! + PrefabRemaps: + [] + Name: World Query Hit Example + Enabled: true + Layers: 1 + LocalTransform: + position: {x: 0.000000, y: 0.000000, z: 0.000000} + rotation: {x: 0.000000, y: 0.000000, z: 0.000000} + scale: {x: 1.000000, y: 1.000000, z: 1.000000} + hasSegmentScaleCompensation: false + Children: + - ! 492d21da-d6fa-4bea-ada5-0f2c4080abca + - ! 525782ce-da8f-432f-82e3-9f018f14ab2c + - ! daa92ff9-6480-4814-8b4f-3030bf71f6c6 + Components: + [] diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/WorldQueryHitExample.ts b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/WorldQueryHitExample.ts new file mode 100644 index 00000000..11e34b9e --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/WorldQueryHitExample.ts @@ -0,0 +1,124 @@ +// import required modules +const WorldQueryModule = require("LensStudio:WorldQueryModule") +const SIK = require("SpectaclesInteractionKit/SIK").SIK; +const InteractorTriggerType = require("SpectaclesInteractionKit/Core/Interactor/Interactor").InteractorTriggerType; +const EPSILON = 0.01; + + +@component +export class NewScript extends BaseScriptComponent { + + + private primaryInteractor; + private hitTestSession: HitTestSession; + private transform: Transform; + @input + indexToSpawn: number; + + @input + targetObject: SceneObject; + + @input + objectsToSpawn: SceneObject[]; + + @input + filterEnabled: boolean; + + onAwake() { + // create new hit session + this.hitTestSession = this.createHitTestSession(this.filterEnabled); + if (!this.sceneObject) { + print("Please set Target Object input"); + return; + } + this.transform = this.targetObject.getTransform(); + // disable target object when surface is not detected + this.targetObject.enabled = false; + this.setObjectEnabled(this.indexToSpawn) + // create update event + this.createEvent("UpdateEvent").bind(this.onUpdate.bind(this)); + } + + + createHitTestSession(filterEnabled) { + // create hit test session with options + var options = HitTestSessionOptions.create(); + options.filter = filterEnabled; + + + var session = WorldQueryModule.createHitTestSessionWithOptions(options); + return session; + } + + + onHitTestResult(results) { + if (results === null) { + this.targetObject.enabled = false; + } else { + this.targetObject.enabled = true; + // get hit information + const hitPosition = results.position; + const hitNormal = results.normal; + + + //identifying the direction the object should look at based on the normal of the hit location. + + + var lookDirection; + if (1 - Math.abs(hitNormal.normalize().dot(vec3.up())) < EPSILON) { + lookDirection = vec3.forward(); + } else { + lookDirection = hitNormal.cross(vec3.up()); + } + + + const toRotation = quat.lookAt(lookDirection, hitNormal); + //set position and rotation + this.targetObject.getTransform().setWorldPosition(hitPosition); + this.targetObject.getTransform().setWorldRotation(toRotation); + + + if ( + this.primaryInteractor.previousTrigger !== InteractorTriggerType.None && + this.primaryInteractor.currentTrigger === InteractorTriggerType.None + ) { + // Called when a trigger ends + // Copy the plane/axis object + let parent = this.objectsToSpawn[this.indexToSpawn].getParent(); + let newObject = parent.copyWholeHierarchy(this.objectsToSpawn[this.indexToSpawn]); + newObject.setParentPreserveWorldTransform(null); + } + } + } + + + onUpdate() { + this.primaryInteractor = SIK.InteractionManager.getTargetingInteractors().shift(); + + + if (this.primaryInteractor && + this.primaryInteractor.isActive() && + this.primaryInteractor.isTargeting() + ) { + const rayStartOffset = new vec3(this.primaryInteractor.startPoint.x, this.primaryInteractor.startPoint.y, this.primaryInteractor.startPoint.z + 30); + const rayStart = rayStartOffset; + const rayEnd = this.primaryInteractor.endPoint; + + + this.hitTestSession.hitTest(rayStart, rayEnd, this.onHitTestResult.bind(this)); + + + } else { + this.targetObject.enabled = false; + } + } + + setObjectIndex(i) { + this.indexToSpawn = i; + } + + setObjectEnabled(i) { + for (let i = 0; i < this.objectsToSpawn.length; i++) + this.objectsToSpawn[i].enabled = i == this.indexToSpawn; + } +} diff --git a/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/WorldQueryHitExample.ts.meta b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/WorldQueryHitExample.ts.meta new file mode 100644 index 00000000..f4033164 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/World Query Hit - Spawn On Surface/WorldQueryHitExample.ts.meta @@ -0,0 +1,48 @@ +- ! + ImportedAssetIds: + TypeScriptAsset: ! 4af91f0b-dfd5-4e60-9ae1-e13c6ac3c8f7 + ImporterName: TypeScriptAssetImporter + PrimaryAsset: ! 4af91f0b-dfd5-4e60-9ae1-e13c6ac3c8f7 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + AssetDataMap: + TypeScriptAsset: ! 7c22d378-8820-4894-85b8-1b5f42c71395 + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 + ExtraData: + AssetLibraryId: 3pSS78N86NN7AmQn7vDmZy +- ! + SvgIcon: "" + Description: "" + InternalVersion: 0 + VersionMajor: 0 + VersionMinor: 0 + VersionPatch: 0 + ComponentUid: 00000000-0000-0000-0000-000000000000 + ExportUid: 00000000-0000-0000-0000-000000000000 + CurrentVisibility: Editable + MaxVisibility: Editable + ScriptInputsHidden: + filterEnabled: false + indexToSpawn: false + objectsToSpawn: false + targetObject: false + ScriptTypesHidden: + {} + DefaultScriptInputs: + - indexToSpawn: ! 0.000000 + targetObject: ! 00000000-0000-0000-0000-000000000000 + objectsToSpawn: ! + [] + filterEnabled: false + ScriptTypes: + - + {} + InputLines: + - // @input float indexToSpawn + - // @input SceneObject targetObject + - "// @input SceneObject[] objectsToSpawn" + - // @input bool filterEnabled diff --git a/Spectacles-2-Unitree/Assets/flat.ss_graph b/Spectacles-2-Unitree/Assets/flat.ss_graph new file mode 100644 index 00000000..17934f39 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/flat.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99a0695559ec6c4d86f7697aac53b69ae41ad6f084be84a10d0dfbaeb93246cc +size 513163 diff --git a/Spectacles-2-Unitree/Assets/flat.ss_graph.meta b/Spectacles-2-Unitree/Assets/flat.ss_graph.meta new file mode 100644 index 00000000..34a2572b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/flat.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 11d16b8f-d694-4051-b9fb-fd4d097b0cb8 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 11d16b8f-d694-4051-b9fb-fd4d097b0cb8 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/image_unlit.ss_graph b/Spectacles-2-Unitree/Assets/image_unlit.ss_graph new file mode 100644 index 00000000..507ec63c --- /dev/null +++ b/Spectacles-2-Unitree/Assets/image_unlit.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e4b3adac8255b848e2f2766c1924497ddeccdf591485f9c16b319260cb2d1e3 +size 491882 diff --git a/Spectacles-2-Unitree/Assets/image_unlit.ss_graph.meta b/Spectacles-2-Unitree/Assets/image_unlit.ss_graph.meta new file mode 100644 index 00000000..a2d90f4d --- /dev/null +++ b/Spectacles-2-Unitree/Assets/image_unlit.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! d331a7aa-ff7b-4e86-ac1e-52679d144976 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! d331a7aa-ff7b-4e86-ac1e-52679d144976 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/pbr.ss_graph b/Spectacles-2-Unitree/Assets/pbr.ss_graph new file mode 100644 index 00000000..cce9f7d4 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/pbr.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5afd1a9df82b7e7e24c059cebc8d40287ab8dd862c5445c3bcf7eeedcd434ced +size 75712 diff --git a/Spectacles-2-Unitree/Assets/pbr.ss_graph.meta b/Spectacles-2-Unitree/Assets/pbr.ss_graph.meta new file mode 100644 index 00000000..3b41bf6b --- /dev/null +++ b/Spectacles-2-Unitree/Assets/pbr.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! d35f7a7c-916b-4eed-b78e-63022648b19f + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! d35f7a7c-916b-4eed-b78e-63022648b19f + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Assets/unlit.ss_graph b/Spectacles-2-Unitree/Assets/unlit.ss_graph new file mode 100644 index 00000000..f03e26c1 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/unlit.ss_graph @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c664186cb52ef889567268ceed627d06f932e19d42bec8e9ad9161c6370561f4 +size 522897 diff --git a/Spectacles-2-Unitree/Assets/unlit.ss_graph.meta b/Spectacles-2-Unitree/Assets/unlit.ss_graph.meta new file mode 100644 index 00000000..6fa78262 --- /dev/null +++ b/Spectacles-2-Unitree/Assets/unlit.ss_graph.meta @@ -0,0 +1,16 @@ +- ! + ImportedAssetIds: + ShaderGraph: ! 506ff0f4-eeb3-48f2-8347-10e8cfe7ccb4 + ImporterName: ShaderGraphPassImporter + PrimaryAsset: ! 506ff0f4-eeb3-48f2-8347-10e8cfe7ccb4 + PackageType: NotAPackage + PackagePolicy: CannotBeUnpacked + ExtraData: + {} + AssetDataMap: + {} + DependentFiles: + [] + ImporterSettings: ! + {} + CompressionSettings: ! 00000000-0000-0000-0000-000000000000 diff --git a/Spectacles-2-Unitree/Dockerfile b/Spectacles-2-Unitree/Dockerfile new file mode 100644 index 00000000..e877d6a0 --- /dev/null +++ b/Spectacles-2-Unitree/Dockerfile @@ -0,0 +1,96 @@ +FROM ubuntu:noble AS dev + +LABEL org.opencontainers.image.description="Spectacles-2-Unitree dev container" + +ARG UV_VERSION=0.6.2 + +ENV CYCLONEDDS_HOME=/usr/local \ + DEBIAN_FRONTEND=noninteractive \ + PATH="/opt/conda/bin:${PATH}" + +RUN apt-get update && apt-get install -y --no-install-recommends \ + ca-certificates \ + apt-transport-https \ + curl \ + gnupg \ + # Needed for some Python dependencies that want the full non-headless version of OpenCV. + libgl1 \ + libglib2.0-0 \ + lsb-release \ + python3.12 \ + && apt-get clean && rm -rf /var/lib/apt/lists/* + +RUN . /etc/lsb-release \ + # Git LFS + && curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey \ + | gpg --dearmor -o /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg \ + && curl -fsSL "https://packagecloud.io/install/repositories/github/git-lfs/config_file.list?os=${DISTRIB_ID}&dist=${DISTRIB_CODENAME}" > /etc/apt/sources.list.d/github_git-lfs.list \ + # GitHub CLI + && curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg -o /usr/share/keyrings/githubcli.gpg \ + && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli.gpg] https://cli.github.com/packages stable main" > /etc/apt/sources.list.d/github-cli.list \ + # Docker + && curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc \ + && echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" > /etc/apt/sources.list.d/docker.list + +# Additional dev packages +RUN apt-get update && apt-get install -y --no-install-recommends \ + build-essential \ + cmake \ + docker-buildx-plugin \ + docker-ce-cli \ + gcc-aarch64-linux-gnu \ + gh \ + git \ + git-lfs \ + htop \ + iputils-ping \ + jq \ + less \ + linux-tools-common \ + linux-tools-generic \ + micro \ + net-tools \ + openssl \ + pipx \ + python3-pip \ + ssh \ + unzip \ + && apt-get clean && rm -rf /var/lib/apt/lists/* + +# Install act +RUN --mount=type=cache,target=/root/.cache/act \ + curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/nektos/act/master/install.sh | bash + +# Install uv +RUN pipx ensurepath && pipx install "uv==$UV_VERSION" + +# Install conda +RUN curl -fsSL https://github.com/conda-forge/miniforge/releases/download/25.3.0-1/Miniforge3-25.3.0-1-Linux-aarch64.sh -o /tmp/miniforge.sh \ + && chmod +x /tmp/miniforge.sh \ + && /tmp/miniforge.sh -b -p /opt/conda \ + && rm /tmp/miniforge.sh + +# Build CycloneDDS +RUN git clone https://github.com/eclipse-cyclonedds/cyclonedds /tmp/cyclonedds \ + && cd /tmp/cyclonedds \ + # The unitree-sdk2py depends on CycloneDDS 0.10.2 + && git checkout 0.10.2 \ + && mkdir build && cd build \ + && cmake -DCMAKE_INSTALL_PREFIX=/usr/local .. \ + && cmake --build . --target install \ + && cd / && rm -rf /tmp/cyclonedds + +SHELL ["/bin/bash", "-c"] + +COPY unitree-client/environment.yml environment.yml + +RUN source /opt/conda/etc/profile.d/conda.sh \ + && conda env create -f environment.yml \ + && conda clean -afy + +RUN source /opt/conda/etc/profile.d/conda.sh \ + && conda activate unitree-client \ + && pip install --no-cache-dir \ + meshcat@git+https://github.com/TastyDucks/meshcat-python.git \ + unitree_sdk2py@git+https://github.com/TastyDucks/unitree_sdk2_python.git \ + cyclonedds==0.10.2 \ No newline at end of file diff --git a/Spectacles-2-Unitree/LICENSE b/Spectacles-2-Unitree/LICENSE new file mode 100644 index 00000000..230a053b --- /dev/null +++ b/Spectacles-2-Unitree/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2025 Patrick Rose, Vincent Trastour, Arthur Baney, Alessio Grancini + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/Spectacles-2-Unitree/README-ref/dex-3.png b/Spectacles-2-Unitree/README-ref/dex-3.png new file mode 100644 index 0000000000000000000000000000000000000000..e2b0e736022d32289be9ac0f97396b21e2668f2e GIT binary patch literal 75349 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�o)fhJKH`9!9a0FSCU2<>)Oz+=YpKuE_Ijz6dYB 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 OpLwzCS~_hQv;Wx}*V6j{ literal 0 HcmV?d00001 diff --git a/Spectacles-2-Unitree/README-ref/high-five.gif b/Spectacles-2-Unitree/README-ref/high-five.gif new file mode 100644 index 0000000000000000000000000000000000000000..09489a874cd9e754b2b3a1f9fa3ee650d59dac62 GIT binary patch literal 5143642 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

OymNVF|)v6aVMAw7g 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

(3Dc-Fa|b&C3?hA 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

M(nsT%F`QrDIs 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

|qE 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

TUuFrwi8u+vD02APzMRuX<9 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 Dv^IT@w_oPOTQbDj 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 z

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≠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

`nVm9j;YYDML$@jco(2{Ri{4 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

-y%d`X6+NJm#_&-2kWRMnq;_}f- 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 }Svi zl@liWnzNkS*x6ZpV3y8Hv+0*|2%J#MDz#PwzY^!*o`+17) zT@d@UY);>$hjENf%HR0r5w}t41FMB6M!XoAkmVUmwLB7f$Qs^fy%;BlPne4$zp<)zF&>Z`mN6HT7ouCnbJQJWm9mSp( z4CCT{Dhfjm;rcqfQY@{E3YS#EYleafx?Y7O992V4;^pE1p)D1f2VfrWDA&ci_ zGiFGOE|lYk7wNRw9~xm;%bn7XJ2`y7x`0q6CQz6R^9}~yFb|N)NYau`uQi2W_rZVI zkrzob4szALzwSghCch|qQ@j^v=+V%w@2;O%iei+*l#|zuG$ROec7PUA8_lPsJnFf!bc(w954^? zfAsaD;;oN5pU=w_X*w>CTo^T$85P#e_lz*vGFgO*SJffk^bh;EI7nnNoQf$qdI^0_}VjPEZ#P|kxH z3jN0MgL21ThT@Lbe_da$v3#_1zjQ|~&nB)}fie218pM5*{Z94zy_~mZ59zh8O^HJ3 zsWT5p=HK^G4@CCA2EoDn)MrCX(EGo4yI3FCXRGc0-JP_W8@u_8UXwgCog1Tl(8Lda zapCvoA9xJm_Jm*$J8SLWPv})swp)=vH^e7F z?~R&LewNmbs=&VziJyaImpD(OeipKgZ#jGtsf|B1o`gnVxv&%pn|vA@n}`S{mn}6< zL_xu@giD2DrJ`bNe4YWXr&B_o(Y#ROcVB zNhJ*Qw5S}*15bj5WO_&_Jv6FOr;AA0pmXRLaTrnF?leMxsdzVv7!cM7`?$!2rYfbe zr@kyo6VlI`5W|8|Xfbo5ov(WbH&ReRtay7I1WTg&{th9JL2N`4qlJ#70VhYFhn4ow zSV41Iii4{s!fqR=>G9PW)w_mcw`#uwRFYkD(QH#vI z?w@0q*7ERvv4S~FP*$T+vnp&qw`=&O5vui1*jcQO4G@-c)F4K@KXUD0&-O?ZhA~JL zz{|DT*6CLxWyy?*A6yN^&G5o{wilpqDA8<(kz>4@&DXBpvIy~p0} zcW;U+qO!TyUXjFP5ib|^{?(JXsZ#8(Hg)TrbK;+cH@|r!9zP&!n!hc^Nl#F|aJwYq z9zEX|`qK1{R>OML2;C?}b4pK~^OkAI)Z=czXOHLhgDkxO&>;iM6yI>L5=$aE#Y}yY zTmXa>sXaZfbND3RUr@?K(1gwF0Ym1lu+O&adiBvVkO$ASV>ga4O3J*%H;6X1a^{{3 zHS>Dc5b6FinI(JOT!keV&?%a(<~v!iz@emx8P~KniP=6E_a`Lr9Az%-s%X?F_(LPK zvjajxHSwrGqcI#d=ZDE@)S&dk;WwN;~fC_V2Z*Xre8Ge7Kb z6zaaDA33Wu|0-D$QX`dg^kl&l9#1m>enAtns=;W|C1AYClDl{=y8T&_b!2pET&8Z~#$tq=Thry3EOg!4=ofrv)crbB(U9MZjp}bxzfPThM-!7u zVDe#%agl#HyC$wg?tKJ!ZpxYfObFwop0rNZn9*FQUrY5j2n(ns@R6AuKsn@kre6_m zuxmY{BwjRhE`7ZhKKmym=`8*4_X&|pR#TAtj*kT@_rAo+*(>WM9UD(4T*I5cYzJwW zTcDRsJl>o~e2oeg1-k+aaF<#!AOVW&0h~KLPT%zOl@04D;ULD!jsQ@Qeo0q}*M_fm zYd)-J!tIxr3%F16X-0XOtP`8P3-@OD^IQpQy zBNcHrSk!VL%MM`eC!22$p8{wpWC%qwGM4B=Dj!~G>r?Bi-__#Kwb?qcqSB;EAeD69 z{Dp^~* zV;TcTL$w!V8f>&I@ez3$Y^0SWe>cAe>@SO%W>xR6-hW+zq%SG8cz(Ki47&O+SwH>L zy;(NJs&SD4INQH7bbe35*bd4%Gv6~UvT}SQZ{PHvmKSF7L<=!&$i9jlde2pbn8=^d zkR(&a@T~-~1$~E)5)4B94Ue$=oq+R_egs*e{|tqu8sJ}KkT(IlmnBeX20Zt(PT)ML zJa(-Qon+1ect)!A&X23Qq9uJVuvLUck5`KDQR&A8MG_x0O=qeu;62EDjZ{r>qqjz1 zBbNNCL5gZ;t=wD8QW5nwfa(n^Yh0lpkAvk%{t6lx8I2|UWpmz|TAeTtcW^T!W(efy%tyEish!oBNp z^V_7m){AWsIM-=BD#D|0f=h8)N6Kb&QJp#e;_zP^L-a$d;zi*R69c6A&_mVV#iItD zoU(1hEu1;QqX)S9k~TRRh1ON*`I}p(d=`#h%7Wgn8tmAl(3u#1Gg~QZzv2`4w2Z@p zEH-6aZq;3Vs&D4n+?Ap44NkforZX1nA_d$E8stf{Cnrz!hN`LIP4DZ2Hagpn^2!G~ z+zicEB<)@--F~67d=4d;>GGYUw{c%u;AlTx)u}F3dPf>X7syuI-C`Hco)C)-W$Pky zR-9Twcm&TO4@YjrN~+yugmQiNNmD|H5Ze3%OAn4kA__Jt!*}-5XAoM zc+Zi%AWfjPBqs}ZGdBg%O}Cu)5r^3xEy7!b+qlU-=87iFpXYjfCxzkZv3ZG}fZ_^_rQ z6${rZaD4di&$zdiTgF)P+Hku~r=Z7g_!*WyW87%=s-w_U9zPyNqX9^VI!~=_`0Gnf zzCp~2JONJz|GDv^*?wnr*FV4B$nr7>WC^^ySthmw_x(4M@2>IYt$_$1hh@i_+pg%8 z^r!S`!;VXIIPS^~4!aY8Gp;G6i1)^7Mu12S8P0E>FDwJFPc6-7lV@Aq%ab2ccF zM)3Nga7L2xd>uK2wW(kL+{8kDR9k^AGg&@v z_MR`BeqChu_qlUAwR}1ASg*;x)AN-rpWW5G%g%g3U*^M&7+PkSd>V=@ z>}#CVj|g`^W71nvud;fcW7;2R74*{ge*eX#;cM9y@~;mIL{{#IJxlmyh!=0sq)E&= z$m#xjbc)CfNd8>3cP@Pq}pAHXW^Fp}(U5S=C$OR!v`VL)qAGb=$F1~&zctgTrb znNtZCX;;hZFTXr_=K+l03?`|ygdrv3C+YxiZ4y!e#zoR$6q=v5FaNtJAz=fHsfbYN z^vfw4L6(5iXBPPyY}J#K-RE!t4?j7 zC(=@_YcfoytG$vS{C?$1b z(eT~fA*P%(fXU)L-?&@gl=Fp2nB}ZcC;M9}39o$=HJVUMKlI*(f+T6_O$$biOrRmi zOS=9TtV77%Q`LzxP09BaOC})x=?4}OL%ndo%sQ`s>dtvtQ?WAeSQh-bpI~2Ijvo?|n9u`$VDuv=lFqsB_y`0LY=`ioUn#B&a`JTVH8io}O?}~r5F>+DTBFWDZQy(H zp&3b8X8tC_VJs($3KB?=NPnsxWH9dgN*&cA9cOj`;X}q;IWVRjCW!duRv?bCT>F>3 zu_`(c$<2K}u2fgR&{-z))a*DqbRQb>HrSsG4I&aa_>gjka?Kg+Ym@G%WQR|KXv+pv z`JQtR87RX5J%;404yHddtq5opq`%8&_y}i3$-XcJYBm6_mlwP97YBM&&Qaw#Ho+qN z4s)B8*UTt+N)S{qsY0MI7{$d5mWypG^&wWX{|E+S2vT-FV-h5g znrS1;V%u7uUEAe9S#DtrNU^`B%32$x8iZ+22uCD8RLa!~gIF}8IusK#WSJL{(%Jjipd)o>Q z1ZY0xGTe&DLZ-X9GYM+8HD7u3rQbN{St#JkRr&rxmUtuvJ8(Xd75)F%Kz46w7E>qA3Y7l9VmBp$@sPH7<)C~@&Wkmcu* z>yR1)n9!`csd0Co!yQ;KT>=a!eqQZo{mqoJ9q2KjW4CN}CV@@aq@38XvnMP<>ME4I z`sRUWo)OJoz}+q)-I}Xy{Rbv_Dyq&IY;6}Exd^R16x3z`M}EpS3bbc`In$g)Y_*X4 z4#Oxgf!T=|K0H5DfbDuarofj!1;d`tpOt{|p^%|2WDv)?<6XGni*lT91S;to;J+!y6fh;ij9}rs*8qk!RUl>qdml9N9|0c4<3sfBO~E2v9W*84}+G&#G7H za*8PdV0Z?|o7OwGaM{qd)wR9W;-{dJyQ29W!*(D3?*l+IHRD4X-=;PHS0YUMIs9@5 z^fFDY)5dB8%+_p{bwi2(Rg0?POBE|S7F*4-=J=8(s^lV<+AX?TE**Ck#CC&TnyY>7 z_6IvidJkaA7N9!{5c&$7jpS1TfV@dIJI{B1254>{_2YFfOuf8G zyZgQ%gW4oO8|~x&50`d`HSkdn;BB~0fXnTp0ya++R|eyU|Ez)8q;POlQ%i0GJr&|6&$9vc@VH-sq$+AJ**l(LO7!O&t$3**xb? zh9sWDNYo*Y-nG78=&iT2_-9ykf21V4zCHXW{(AjD|1ZqvFxy}LQji6>zaxT82kuK8 z4*_^gjT*#p!FSx@kr>$4fi&pLnEqJRzCr6c9ix5yzK!UZs6sP_TqjQA_z)~&{Tug# z%;AxO*t4|$a=VfZ4~yMAcNH@&{A7$mg=X$!*cQ2bPPztyNdF#2ZCjZBbFKST6p!bH zb%K$NDa&M4zih2w9f{)5gFnacN;h_#Z2cb1bkM11w4g;c3!wHlV0Z6t6k?1Y^dyE}#h1?E!q=d_c#r+x#-l_^)%GMCsFx6%J6lXw&d=aoLBb znXatBz6Gzn+iz(F)n~KZXHlNg zWzT(iD60hu1YY_`oEyq6^j1CfpEZZ!+|md^AB%y-lHm?y_>(#JWXb83ocYz?T+`{0 ztOdZy%qwp3fl=4pUuurxuI<)cxg`1Ux;u})^8^&3?@^wY-2YJGMC)h#HmFyC#4tc2 z)Z=p>vnJq$qSyc2At6Ey9mkG(mC`hl#)g6AnM*YbzCEl z3a?MJO5-PE=AAD;{`&wd7Yvi;K^z`ScK(2XOR+rW`+Yi{sbR!)*v0qqxU|wrai&%j4T5Nk$*&l9eJ* z$pm};dsKNKFQ71b-zk<1E&l67S(we|-qF8^GQEXRxH}KUK)XpzrAFqBjy27JXO7yD zT)}VT=g~buZ?JOs*n1$?GaZwGY8;|Kg$?*OSEwr)>PCk0u@HGoQ9{@fm+Va$Wtk@3 zb=IBhKl#~UnC+V_4~Y_E4w-cxN;N;+?dHgK;Zbv1@s4k??OD4J4|0S*1MUxarmXuC za#Jo*fxRgA9^2x-I_#&j_U};^fc3HN`|pJ6rG@@ZL-sP4-_GpcPB?xf5MRTYKU1)A zcQX{CK!x6_jHA$~f@H`oe@&Sg_L-QOLj9^Uqf(DhZ$F+ZZqh|da&8mNT}3MR#$!;j z)H!M$yILl0ZiKM0e|c}Li60O2q{1B-@MyxnJ6(rY@vulD>&dxiZ*yNNUZ3t34xljs zCJYc5AEdY@e6YR0n;nadeaETy;qpZk@9~a^<;40LMkIeFmHceAsv!0lCn38T)~)DZ zG_%$tJgaWo(l=Qb0RUo@I3Y%6i3)M~OFd*!1q+n5D=(WDzng<&t#18Z(BF7R=T9@Yvgf;o0kp8b)UU%=f~vyxe*CKEJhLk-&p;a^S9&nu9Lk{6 zVviu{jn6oRJLOLI+t~qrpz@=K%hq8PFJ4>e{VQ}LfsLh5lCQc`OtP{l?j}$tHYX>F z6V^%HOkEv|y;$z#>4_yG2nY%a)to}%@9OGg_V)D;v>Br0M}|$?F(a51%$@PE0Sz-I zagbuzr(Wz7Zz6btp=9e)pzxtzpf_*>*nW+!+1>Y#OyBlbQuI>vMaYZBUwRi0^nNfk z9=kaA+LL*zT*6%v%eW24m7&0}p(N4K3_czIH9|B&!)*dYEN4LH#5wz@)Ok} zX1Y*yok-4H8XqqAia(Z85LE@6t?LCAjxsHHO`c|Qy}4cODDm=yf4_2WfLG!qC9FVLyR+&jo10mf^-Np_eSqEkE_IU@qW<9*< zR8$=2my)<%!%DxUlH*^Gt+&i-w@uLCzH0hps{A=}$MHN& zgL*%#iGRvby*?E2;r2c4fLnjOFBTF=0d6*6?+(^*}@2z0H`zdRI}?NYfS_S#hZ{~esjY4DG)NAvlnf>Wu#|?N#kpi{2xPS z;nidxhT(Ue!047SYNVrEMyE1DLJ&uXAfrLRjZSei2ncEisSF6~DLX|&yr7C*Ag9AH!|-)C{KcM8$Zb4o+k zn^ORsFtW%rS1z4wpTcV4jYu3?DQ%jOj+1&5Lwyam|BU(N%=CfRKn5BQ^v z<|$qn^`=6JH>VBpM8id^gyMUiEwTIDqoWFOws;*7mVHYX<+X(8rZV8A=nKmbpzDiaG(tbsXN%a7#SceE8*2jo0qCr z(48AUX#lln>r@W{}LgZ|K^diqF?F{()j593DL5BJS<86fIWjwsk2!)Eip#?1*?PoKWA*uF3G5 z{yOi`+B;M>g~_3iv9QHYu7@s`zEhh~IWL_+{-pfaAXQLpe_5iReC6(WKl3-&XM>*2 zK^vhU--)kN@uAcYrcEZ6Mi=Zos2K4t?~cBF^z-NXBo@a)ouIxtBA@oDwA@w33Q%uo zh7?Zm5uk3%(t7!j#{Y7nER7iVMJ1Cp;hnN#9Zt{UIJw2o*j?=|?=-upsGhM)gRxd^ zuOkZL;ac;duDaJp^v}`W&53d6t3G@KOWO)RRm2gI; zJpsCQt$(giYfC?W*WH;Z^>ZsZbhAm>j!~2E_j?5LP07XTCV6G9+sf)qy-Knc5pp#- zyRo|ZlEZTTb?rLi3}4Z<`eR)KzQC(MgKXLTb|sa|<0Y9z2gvU}*MT)y2vqC4&gdwb z8tU#_5rd=$6vyvlU+ZT_9KJTB<2Gm;*Ij1Rh00-M{Y^KglUnny2gu_3BW= zEaKdp#7LGyd1A9N%{tFPssXkP@DrIl$fIT`n0mroXjWm8nxscK%Pe}ovpU#AXOLPL@C2>7p@{f z^FbYlA?D?;f-3njs?TvW#1Xnx{ZrP6tb0SR|CI}6T!=ZZ*uW6kjyExs8(usdPd(Kg5DeZGyx-3~^QexQm&O#lXyVf>Ef-C2L z63Oid(dGbf0~uB-6h8qcQUgwma}YX_1pQEbM?3Bi6=o^3Z|82B(YMO80VJ()t4&yF zRtMq9wU$nunp(==aHtA9L=bTEu3mr)2TJiHu-K zeg0JgDi}eWv2BqY+oCxgXl#Xjdh`2WpF)W*>XG}fol_|&ht+YsUnCrrG&wuP0OqqR zk^e~ZHlxbINivf%WD;N?!Sfb6A7k@x<1`5{Y`Scw6ki)idit+j$U%`TKS8UBlpF7j z&Fp_hyjTHT>s9?l%Hs9jUVG1Ck75gqi!?1JPlygPwbS%vA!8&$%WP;~DGJA7OV~O;Ro-U;-_TD2Ja6A8S*`_jqtJ0I9+3TYXhRC6-Cb z9|DBKuwjCNpVuVW2Qv(j>FnK=<0^jmxG|v~xch4dah%GOi&i^!-;dptJyIW-UW%_T z{afJ$X5h{)JO>eiqZMLKEY!$j4(VRtrOH070{GPo5L|UOTi@iih*@%tlBILz%(@8H z7wTPx<>Y6<=;jU5tus09m(0dmqPI5z&0TwE#t{!^GDv+;YvP*v(fG5j?B`aw+7GyJ z)A7zP9@Y29;4;bnxyTBP$H>ZP;^maIvGjATDS-#RUcLA7fxY7SqQuD^lXj-VP_#nl zCnT(G07SF}&RIRTF{1(6We?esq4#>jbWZNoZansUKRDFo*Glp~VU^5?rUc7H(nH;_ zZ^nYoujLIvV~68*_94oSYk2Wy8cHP;I#;(BzKD9_n9kSS4pB&k(P+344!)nSXZHx+=jVUVu5>2|g*s7p2+HD2 zy)v`ht^Ib|yu7ZeMIYL;WE?z0S{ zEWF@*ZnY`3VK2<1mIPnfKo*1eFkW~wC+@aKy7};?wOat9T0S9!iSRluXaKA z05B9#;B0R>qHYOIRqHagycHSn5r8{tsdLg1*cv@4HA#|Ae#u5t9Y)n@=}uiF*VC4G_VCBglmYIt+jxa<0#T^)`{`aJF%{j;hFBD~Rt0s8yvOPCF(oax z3sflRJzXU>yaAs^Y(Moiz38S{Gdbh5^_nIO1l8U^R^~zTe1xIixbPk8%QE(b3uZ9( zAT?5Iz~sQ^Qc3ok6Ygb-YWCvtOnvC|t}jK9UHGzHjSA)E6lYtb-B&U?Qw|O?JIzm$ zo(EbqEu&q@$Rk;8>vfFKqfkdd9jEWTEms%%nx+VOMP>+6vH)5)a*8bmcJZ7ee&JzdL9B!>a!Z@-d!KV z#y1mDJ#}L8K^uyy-au6Ez%mZ}rbe*K(?}$Ag2R$;`^|MLIJVR;oj=OFi?9r47{1rm5+N9rbB=OaOgQav?F*vhX z`Mt_XJ$-RH-t563>iuJ(G%1q{D9jNHZ-yQG4mhU?f+;NB_mYwRKBiOwBH9T{SZOAk zyfsi{0Y8c%ox>mm2YQtO80Pglb31&)oRjL}^^pz5#*{%?r|G%Qrj=ke*Z9xf?1d=i zj^#)`tt(F6wbm!g1qWZRJyyaFu*|ev$++lo25#YqtQteKmv~SdMqNtiM5#WIn`V=N zAmgVWPW~x6@9QX>1V3hn%bLYcLA$h^pa7=rY1854ZWo*QJrEr}# zq(%j;8~{Bb16NhB#YcN5P4baLWRX;iioe9KE7uBHou41Y?d)VMXt0=_Sd}vA%Yh`} zU^|``xkWUAHE?=6!P7#i`3&@Gi@$NEKCp=j4n4A4U2J!2u=+KPEZiA3erAMM+!4oKi#6_OnTi{CIZu@z%>m9n4m!j*K?9wCy6T!cC(<8t zSzmF^JTlK`+NsP|!i^tq>#e^ZUZv{@ZBfFaR_agrX&C)4&9u3avQRhhm1E4p_Ij zJDP?}djjHQw~CMne5g^8rBd)BT*;nt?)Ky1FZvq0qvg4UFq)w$#mX3{*|{^CBI&qy z{I%#EnT0yp;<~ZsLpeT3mHU+)dxnz48^gp0LSwNcGs}1kB1wRYCnHSzAkt=ll|As; z!OVAQLdYQQ(2xCdk`FB;;zTK>`f;jz#4a?J066BASy0#vjPNU7)#psThnkt%s*%jD3*XSL ze{y>1{D*tkAT>(GF5G`Q?Q{<`GhcN@XsBNG}Fob{9EcAZbo;a%H*lOO5g#O9r}9*fTf5pQNo zAo=3eGXEulK{dyFZ%UgCBx4WXe;VM7VOTHHIdJ%;XNxPAr=hswc`4nmf!f?TW!-sq z;;8UvF`VAYYl2?!1`5M*C~u}~j3IJaCVFIK+(OY|dt{Afb17$;a0;%#1xa%DThcUJ zIbxTdSQu>xJ_P-9iSu#kFx>B-LsibwGUm+^<- z7fCQ{kT5CVmI;tJGf5rX%`WGYt>tchI06Z|`4<83;G!?EA|~)_2MLRaZvSxm{KdyQ zlq>}tu>2KUy)6dA$2vqqvw7DGQL{=1hJ5avnj8xHJA)A6?>@#oeWN$V^kB8nLHuZ6hQ(2)rI^AT2DLaI5gY zdl2Rq>giS;E-=d_#VH%;9WWWo3c2~rU}=BygLY%<5b*2k4KHXvq!6kPS3fwPGB-)4 zR2`LgU-$Ye<;fMO_S3S54Q4~nXB2)!tgURjH%;H|XTb!|ZeC9IHz`So|MaqHVPCp& z(K}-?=N|`ltspNYU6<)><@v|g-UIR_JdR8va<~W)X61>f8|G@w5T6#r;P-F4Sa+sk zE;WA9<;q~LMq7@CYN-aiC&G}IB@nO8Fem!=T&T)a+QhWFE8AR|;P~5Z{K(BK&^wdw zz{`J2Db0*FDBpd~g(yhV`*Ks_?#-d~UYFaJMWYSxAKjJ$kmk0CeNG8}e$i!q2~JJ{ z*y?H>Or5?`6J7r#z10Cmhr#L8Lxnmby z63c5mv^ag?BWRXXh03>av$)^H4xh<`f-U}X$()mpaW9%8?wO6h#L?eya{qL)7Rqge zEM!p#>fSRJH0X_~wN1M-GKR-elQ%nEOiq*glw0*7U|1*e=xV@Gyd(Qes6uxDuG2}Jl-93 z?AmvK*uZvsqiAgD+*9eWZyhU2p@6za_$`Hoy)Z>992o&}FcHGK5kfh zaMW6apCEtF>EpMA^*+v~!xaueOMtxP)!=^rV1(v4fT+>InwlfNJiY-jeq6wIgPm*AB z{7t+3|MR5(5r1U&=X$hep3@^!C*2>iUcercKN|0QJBnW^>2*AzK&0qqHQ0i|zOE-l zVSlEjOA;0HZ_6Y|sE6s7rFpL^5q*K?^0%LST4RliJIRAT>k9A1Ed4Qi7<;#lq#A2K zVK^~N$8lXj4`K)GO)PO6&y^g8%5<||OqHsEH{w#o>>YE=9iUF_66>i8k7M_#ZXtC9 z;{Gh&N#zm{FP1aeSt#x#AqM14bs-(mQxqFfW7|MduZ*k@)PQvBP6D;5SjCA=Ef9kI z(~xC!{+oMgW3rxeu3L(&?G6usewu;wbQQI0j`AlkC7$gh4uojMSX8>j!WrwgF=-Q` zUn+TIvF0`)eQ4Pw$i(eKJa3<+8aJhCn0A`g@4+HvEk(kf2A;8a6VtU|4v&ox)6*uA z3K$b>F53-rD+X<;S?AwK`s+*J$WxF%Nw#U7yo_;OC8IrsU2oMeI6L|HT8SK$-9=F3 zcl~)MIWHI$Dn>dXxA(sJh!gdT*m!&j+=)p1w(CMpwN*%4Y5P-M`ln@qQ`uB2BLJg1 zN(Q5dw8S)obt?Ws+{%Ah;jX{pS)8g*oX+9cuCaq%9(O8F%nk(`XPKtfS{`}u>qLi# zam3fYTm=}!KETcVmt$+r+XULbAdZq zMjZ$KZS~&#=|FH+Mr8Xr;{^(Mz?0>9H`D7X?3zvllH!G1n!Nho3s$j_HnTgP1D5(2 zDsrAzfZ3tr{BzpNM>rIj;l*qA!MxZhoap0V*7Z+++Y!$`{0DKs0c$)>Lnsgg)P$Z< zT3IzZ@_Uxak<|N;7N%b@cA9LbF%D<*3KrZ{ z5JDN{5qrrc*8^l_y{VUEp&QLyC}oy$rdGgmE0fBUh2>KV(ci{nl750o7Z$B;r#sw_>4t~ zSb`K38v&pOeobowwH2urk43NIATk`HvCT04)R$CSk)yO*V-LQI*x^7(3o0d;Spiv_ zT=)$x$B=(jR|%^fGUL}(0`aTCEt&C2+`=AA557)?%NclYbmg>Na%T-*!C#H3Hg`nT zx~93(w)HHtG5yu$`?H!(i9@1?U2qBtExH~B{u1=<%|KhD_g=Diu=Z<8?B&S`v6Zh% z1SuEwLEkX3xw)OyD?0Y|$0@0YV>Kb)%8!bejWZ9BoyKZ77t;S01fSXQ`yy9Fb^s4a zi=-mr;t$l;G%WmOK%VJlM%A0E>wg8?C$Tr&j$eFZ=oKcOt#@znY}veMY}-i}P-fqH z_-S31ZCGmE9LN+|7x&INe&}A_wl64OhUJuVZn1GyDq26`H8g<4D4)(W9@LpYTTlTU zj_h>fTO{pxTmi-k6nTviC$mRw|C<3l&F0V(4^rW>JI`NPtZTI7;JE$g^tvmT z1&d{G!T6_+kG0P;b*F?_%=}AmhU$h=^-T58`RAiY z8P`80j68p)nD|3*w>Dex?J4AFMp3-)I@m(g?EKERnup1m1KA+{V_a)S$YELfIcKNW z>vd2%tYkPIA~TQ#QgI;zxS#WkfB0Zbrr%>7;ou6pcoFuLRmk+u13&HNo~qIq!7v#j z229HC`OiLS6^`A_MQ=Ezw2nwWyqbIhk#}@=A}ud}{GJ2963zh6(Snoo z?8SDV5mkGF-m6-@Kdas??Os}7s2B%Oq5z)X%{e6aQLa@4f9E`zkQ4=s=7EgK@`K8G znl1v(dbp;HzHEk($w-CFU@#uE8?gQ1<)X>%|A(D)TFFF*cC{U z3eS^Q{*f`lh(1bD3ZsEwIOs&AuNfYu!2rDRFj)%tJR(KkxlE6s+Xr(1+C>s3JYR*` zC?o8`afl=;JdFz9egjM8K>Yb&J2n`>1|rBxl^mq(s-B1ADNmG1uD^RD5|#h!9#ZQ!TzNB12}O; zO;s#Pu{p1*jSW+$g&445LA0v<6qprGZ~{4!9@=&6@K#j(79wND`oFJCUwfTDrd321 zBrnD~f015X0-nJMi)dyR29ydp$%&7YwzECkr~p=tN^TB}v`^7n)tAha)yL~S_VSY_ z!XZqsgIPn5KX?WYQ=>rM^W8TM;^e$yEoEhy5)QAzfaY+|L_VC(R~#ird;CPCQ4oZk zJf94Uq*khPA^R3U#W>4@OUen%hPTb9Vq6>FmeLcO6PL)1U&RehXyV>xR_$gqeE12@ z*KE4IbAxO(3Vh{6N?OJW8T>vi<8vf^C;UWZ0gFtbCRFt(U@V2M*2QPazGvzV>-{Q9 zkw)2d--(fP&4y8JEy@IHz>0o&s04=VswE0Uu<{Z}0Ei9hB^saIcD_*tXqctta}CWq z(+>Se;}mFFhl7l`X+K{puCu_mBH&Rtz-F{PyxZonht*yNAv><-2e?pa84N2Sa|HfmmdGH17Q{9A&_X!Yzf& zCj)9!@C=te!)5+K7`Mn8A76@YZf=)9*}TLwFNl&8=IMTVOZsVq4kZD20L*bgMDh`l zOvJ@2Z5eJFnqDfsGy2#KvjBDfhjXYQ8Mi1*=}M!?8*RqYXb(s_r(0V5P4MiZBtLW z7S5g^t9|S23iEUu^~`=I?C6y7eZ`;Tw5+r=;wR0zrY? zM(-3_nU~CRN<$hVk)S_oxEdJ6o0vE-Z@LwzTtk!zvGw0gfp`odwy=$lxtN zG$~5&&s~@R;99`N=##LxdvOL#SQ~G6om?bb-}Ck8nV76I>x)pt`e60}0f@+jV1Gx! zE9%;)O(|#SpL(K3ss8`fW_;E#{+@-can}*~+1tjtSQUtEI(l}C3qHEiwB=*-=GECH zpl#tNBA%-lPZK^(P(g~iJ`NLkx+%OmEo{JnpZ`5f3mV#xt2WpGr%GzR-asf*;gk(c8V{f9IGd&_IkXLyZqL+tx=Z6o!A70(DY*ZXrYOJE6 z8uxR0fU6^amrxOf;P@vyzZO%te2k{y{|Dn4`|SkS)&Ewqu*88eC3hX6*s;PG?P%BZerxJW8qoW_A46w6~jL!}$pB#VpKBn!a0jH_R=X;*{JBwF^| zc!uI=%ZpPqq;ZIYIPiAEwbUKV7(isv>W;bB`~7TFWe`Ld*Ar+So-AZEfOU)M`Es;} zPQJmDKW#AEvzu1+<11m5Q5AG;dWkubjk&qR_bb(eZbgB$xTv`J5Zv>de=*~Kk({z~ zx2(gB0~eZ*3>)QvKRrE`@ffAS>w9o6;4rPfc^n4gNDg1A zO{f*h@l{~HYZdxBFjCr^K>82P;%{mxP--S>X@pBvr_ zgK}=;e2L!lZfkx-RI=Jl)UTU@CZTB^=#KnvE8VG$al7Q`LpvZ5_2HJm+_81`?X>Ql zs|I_@ic(f^Ful+#%c8;usCS<6uJpiFt8`ovQ?A~o-t9ay92+zp>o%PzKlxop-cb}j z6n~FKK^)}5vbd83a=!%yB+rJeKR)LC9E5W1H(>kUu0-y`PEYGh2LksG#aAWWxiQLV z4D%=rrrv*|19@rHP_i-DSiw5Egpgi;d<9>HgzG zbPkNj1KpJkf37om6!SPz=W(1Ar^t>yWzg@#IfD8SGTA?h`o&D|oyiWK9seByR)pE% zU`v$#$L9imXFC0I_V;7lPB6))8xe}qgdwav@TGArvebq1t*`L9DLxc}!ri@$xt)5L zT<)Up$GHkcVF(#^89TKt4fbcil{vT6`A};E(z6AcK7ygU#2usvjU9d({jL%Wabth^4wMJqMjdYY zUBP7X^?)t9;5nElTKv#_jI|0=_(kpM$YtoK^4Vxcbmrximw$kD%(LgS_tkFP20Xrp17|ESg2Mnil?#D>RDgAb@SG(qcJx%NcpOn;1>(* zFX%n{;$a*vQKO8behVm>*yvWj{dJY(pQleYv!15gdxIjGFkK2f=n&}K#JeMh*UKGm=(XOZxlfm9g@C9+a6B<@UpK>z zRbJH{_c5Bt5}aPp0hdt0-3hQZp%CxE!OeHep|jH~oco?YY1>`cwzTlktM3Z^#y+o| zDbEV=(=7px`N@_<8Hj&z2Y^#c zoCqtpc8&KQH;Vu@4lIySE~*7{Dgss`ts`+i_fz2e@i4_*kFK@cO?SJvb!_XA=ik^X zG9Z3Rh?nSJ>qAifNSn=${4L7*@aDVbQ|b(GDHV*{z2T*@Jw@J@5qb9E9%L;hdL2MY z(+djr7fMQs(078@DiKvZbsu6qk#4Q7PH(aEDJ-3iy zQBqzCs5%^qjN z@{lhVuTLja^c^ZHFb)-Rns)lrh0GA*(dVm1ydl!|1tleishh_lAD-yKsr_ z5&FK{bV=`8p+(!@6u;XjF#Y75)`}^)$W~FyH=Cln%mlt+4SQ`L%u7k(->(ztB|*gVfhX%E!`GxKaSlkQfB#Ph;&S-O`XO-uuvkUjw`i;7u1Ly zRNgyRpwq$JoDo-T{&t7j>Oqh~o$bv>dd{0|mKR^@%Fib#&k+iV9aMwGQk7V_R=m8-nOfk>--gFMStWxj08g*JG(g&IDrRAR>uRvA`cWFIMJ zYyr$-?vy@tl#bel2PcF99wf=NR(kGx&PegL@B1DRqTmN zq-G57ytPa(p-AaKrt-nS>C4Lcm)>rX10H3meN-1pGC&7z-q|J)xAfnV4K24Xk0bqr zz4OAW_e0Q8hDL^yN-v959w@!Uu8zl`n%o~6?2oWLVTP>pseCFf6|6yxV$9RJ{Ph)4*h zz38r1ikAUev9wzm@z-m-9Wz;9d?HyDiumhe36}6nrrwXrBLQ-Ij3*X7w^4P3UFB4%~4KW zxs?c8uVzmmq^*D{9v;XuMMv=Rz=(88^eqt_4UDoV)v)3KUr93?A-A)Na4I6$OJ#pLuU7AnC3t}`xXt*d58qW=_DG%5c1g2mhzDNUwmFIR z-0OdF<-*l4*g=EPK1;_H@g}B7sGAY;H>+KcckdUZ=|4UKT}%~9DxFj^Fhd&RCV;2E z?1yQN6)2-g8rvs7dIAJhC5{)B{`N3?t3RgI3YZuNOu^E(5eC?N>>MfIxNsXGT*^~c zM%pUCP1ujklR`5{1+ve%MerO*^5qmEAsxKz%Ru{#MnFVlYP; zT&&U%Gu;D_7Gv_D8h^&&QUZ#Cau+RMr*5U#T%vqplV76$rya0+{t*0+ec#4~2Y&6k zD%R{mdVKb?u;QNri8($LHl^46iIWGjqJm!Rb+=Zh2}^%_*Lv);xK&PFEov77Fe1@mf1?VZ!5t7q~5iI{^9d+Z+SwAGV5m6nF!NIE2(E{ zR~xx}hC(JBK{0zO7;~`)-oRK03v%b3*HZzty2B@eN?i!}wcdc&iK2=fIF;2@7n@bl z6D5zH>|Af3)2)2(DbO#cgy71&7``>NvrSQ^sJjhE`{`o@s7^3Y;aP)&70DKAkdkoK zs?5B|EP0JnEVA&wP@w|GXE|Rsd`vXVAoU|KTVCCCd4P9SsFXZ5HIsJ}27qmO1Qj=Y z5u$Ddw2}fxzR}Lte`Jc5ocf}~mxoF2Ky{uBZTRUH+m{|*_-?!mik~E!1Y7V08p^DJT;>BNo0XdMX~& z7y``M4t1#=%QN1;X?E6|;yq)oen->oSGe$g&qp#xv2Lba6$jfE>n1rq<+vJsh;H`M zP$^#d6sP)O>}Qdf?~cY#-Z$D9nxnVVT96!mA)vsKSL7LGxDhk4Ff1uj0-O z!NFft3CRBGo;#U#?_yR=?jLNi**4G~j=l3br-gdtPntaP2v-PlTj(W${6#eE@kueW zuf;8A8Mtdg_4xBtGpQ_+G&d9-dB&87>E&|N6uMD%*8&EY7dr zds~pF1nKcRP0eRY&@n~)!|-cP=pS$6mW#N>{0z&_g8f&5UYvs%S)Dl@<7sEQ{*`qI{G_82oI@v`M}<)rG6VFpJG(I8siYyQuQb^8qCw7tV_G2>MzBLVIJz&4 z$m7Z2i1aiGBh#N!U}-i4f{*c{9)wdZ2kkw-^FzL;Cq7@tyx-Bb^BcpDJcfy8&>xIL zejyAOa6oUEr7%19Sz|!yNI-wF*C{9Gdo*o14ZNF^b2pF`A&$~u$(PXRX9)t1BxK4 zexty?vX7-0njQmDU7;0LT+hD_h==VE%*f&Q8!EEmvZb3j$>HFmGqLK1$TXP~EWRR9 zbVtR9p4f7|$PvFlGuGv*&f|#3^ZafU$Tq16U|2lVf{PP2M;-EtBeKexkxYq+h~0~s zp#^~_>yY!jlCButCk5nd>(VV0cq-dKyOVrx*e{H6NMcIIpa$DWD_rO~bOQ%Fh|hiK z0=g`&AAqxsFU z62U(ULr+}}&7E?Now9xj*;T!kiH~x-0ca-W8JF>`2od1?&DiC6tRxvw+iBc+0Ysjp zx~Lc|-#GalvI)sli;9<@7gz2Hy1wRWZCidMPt2^AFk^=iQ-cnEYfhygHbKh64wxOr z4KrX%=fVrP@Q&_8065jQ0Gv7GbLu_YPFuZ~gW zeuy+Y_%SoUmj`=w+ZZM(Tcxiioo^nsmE*3p14SPCV$cvv0?jRvj`FF%ld)c3H=uve*3=Vdk1@Zod5K%2m9g&}7%TxK$iZswy7&hX`?%q4WL%f6- z01N`a3&cba8)}P^dq;+Rg&(>|f@|^QVN`%hIm1<+!YjVicXINo zZ{g!CC%_?A;`-wNodw;zh2UdN&r41~$ukbxzkQ<3P9)LcOrUDPtE@y^sul?x$Wr z-is&YdcDoT(^_Ghj|!u%0hifiG)~mRscm!2_@iNk{lX zR~D|HPDae55q*REQfXFJG_mUTel?2a-ql7d4V+&L_9S0;ekV9-B2?~4+~K1o@ykO7 zT%+Gaw=0jOIUH@lAaaHec1yBy9dDka0_ri~X=g=2mT_@;nR;4;^^b6m9+u3e&E`4z zj+o}Uqeve+p=EC&&Kfx_6A{DM=cRhGGHRfZBf7^3d8FV9X;T1SCV~x)re=RI$!8q$ zWYl`mL}6r@6Q?DX0R!)BUa6q#nxK?+AMrb-$~m**mQ;XPPewvGDUU z_56-g2BgLTOt0j6ahMvATwbw`z(MI@b>1D|CbB(9dO$^eE4-Ryf;Bd=`H?w;hlX%3 zX4YjzLxr#up}S%EzK|R}a*YBE+t_vU3TeDkqFwf$cXxnwZf1edNwG$@c-Rw63PfIr zZ=O(0@TV$iU9*kCx$lZlQU?m@Tjq1P$_o{T#)&b98_6tkRHAyP7a7pT$M{l@NbwLF zG(e2HKY)jz^ALW_JtBB0)OjBw${$fcr49(Fx_#g@9&B|RN1DW{k-(uJx}nq?G$J^r z>xSGfvbZzSmz)Nqxpe;k3!jwH)Mx#aFaL8-`$j!-h9VJ<&nu%D1W^q9IoPnQ2|cl( z@)it8j`d^grl6C3k?h>&5V3i5?8ZQKgJ!n2q^w8J!5=G^Zm_`B4Ng&7wrX;u7T(TN zde_hb`Qj(y_S>Qx_)c9hKnHJ%XTaecSwAKmM}O$=ENJJG|s z&B5ihj?z!Tsv^`$Itiph##q!7!}2f@>A6phv3sVJV!9JA|G`AtE+mPoz&XHdeW5xH zzMlgRAtBn!u15p+sU2WV4p1IN)vcrw;^`5;M+MPv$92|LoSi%L)J1WvQUpKg(1|o6_t*+udX%Dcgb@xjB6lt)1NBw)Z@L2&+EQiCf(IL^y?q79B6UWQXiSqS3o}V7-eH z@;(s{7F(yv-u!hW+aVbvW-NxuB^jAqqgo4m=N{kX5uA4-&L&d7Hgo*o*=ryORS8cK zViPChbsWp!2ML%$^&PC3f1FN!^uiV)0(wvwSXEDLDAK&xN>H ziRa=+mVR7hG1g{oc+ST@*|eHLgqFOkg?+y_)`~o%UPP$|P%(OT9o#7I!8hY}QU<`f zf4DKS>t%*r&0n+9%D*2as8 zg^uG(EEUlMQZ3{~@UQH;KPd4(z{eZdEMlDC`ORD;=F1J__fsc!^^1qX(awB~vxBKR z6&4H>rb^phiw8m*`08Za?z;z_GjAY;V&Wx1o&ea6O3Uu{HxLC5fz?fq&|coY9)bhQ z)4KjFC+GHI0v?F! z<$(jqd2fCG!}rTvcv`)9!5DvymYz4t?<90_SEg1`#Rukuf-xS0o65IJI$a_hO|mS( z^Al05U8o5K#ieBc;trrO&PeCGJylzndcB(|8h$2X`UZYV(Lrp?LL)G86-Kw+G-;Utr8AI>urw8|Y z^?O?PTV1#~JUZ&jz7VJ;NjC_x+FRcz(m)r{eejU`K=M9aRgZYvT9s~XZKtlKzDl>V zqp!YFA2qP^(fjPv_mrqBsisl?Q{?yU+26naZC&2>S%C`lA{S0xrd5A@c|o|(!b*k_ z20btIc=&NxWY2y@Ev19gs7v?i%ZQc#9L&$YI#Fsvq~^ysf(cVLa2ZBsn4NQ@jX#&A z@3VeFR?^t^uc+$V6OELMl-Cq4q^3*wr(Ud_ei)=s($%G~!=PMe$t&hmDQ@GnhTg7V zUQPJ-sYrLfk&rdrvI_Uz{#MuGL)9kz_k==&G%L3%sfN-|*r*TVl+ux8-jun)nSF}d zX}cfYX|nqz^3GXzSIo4(tE^oVTXFJDMw#SlEJ~mg(Yts#EMH|;T^D(t+8$Q~c6B*E)ylaf<|v`nJ0waG+N2ffU6^`&7ejlIpN|XS5bO_6 z;8i@r=SYV4m6&6^7K~o{Di@vpu$@XTlq<0N}t6scul^_Ek2 zyvH7bQooz>T0!M6m5st(zyT=2R~#Mv|Km+Dn+p=zn7I61c`chjq55zuF9u*;8Mt{2 zEtB2`_(?P>%S%Uow9h-u-@lrtH%?BJI3`~G>TTz#%=ziO^r7-;zFwnX++M|h#5Zmv zZG*3b1S_|!byF;px)phQq`8G(Z_(UdxgOSmwfPUFCL6!>A|s9je0;N6)R zCt-uKfiYJ+El-DL?<=*WQi1Xkpw-unL}DL`X$qOty!LlzS2wPzvPST5JLj1K_DX%{ zX@lEOFdgP&yOUz!h2w;H*oDGo!<$E1nyH7zN$V^F$`=5Ap^n)SbsIHt$kOw#`p3b7 zUo9ajq!&-fwt_k#AgIJU|336p6$C-ya9vQ5Pi2LzlqIr{k0 zZrM=fIBjJ0v2M=Gp@EwH1Dkj9W}hd8A2q<&rL1>+?35|z>wA8jPaocu_(hG$$u4Of z`f^|Nn60?8b+p1v>F-CA7rw`i|NBz<6uQ2T@wZoT_%Ko?o$*q^WC9Q=q6nqkm=aS6 zE^+ry1c7pAlsg0LJ`|p9(r$-{ZFVLIGqRvCI;{S-=RNtEj>GVUU_8&N{ALTa8Vrxa zq+fv460?LPfpB+T`XRij$Y;7pHzgX~eR>TpwszNbFFngo_#{35*I=yey#?2U|43SP zaanvOD0VMZ1S`bC{E8Jw{tfZX zpQlwV(Y_D2kguUGi3R&F}FaEohy|23O zAx0ySM+&f{vbrG`| zJ|87jT%GV(e1EleY`hFnaRLQnW-C)EGEgF2bA7p@UpcY*B?s&~v2#f%un1B#&W4je zGcWFXsc4?OY!JER=JPXFPvW<8ZhCtOpFov&kNQ#Pc#kY+)E19OxkAjhYu(X5*zztG zZq;oqH77fB>P3#w_ltcG`UISv`p#B=YgfFLb)qW3b9s9yeH8@H;Z;X|P6+vz&BwHo zvuN$NlctPJg^gHc1k*g6#{dBSppt? z&6wEqiK5!p+7($CK1;MjCRp@nR;!bJw8--QhvP3!6&~N0YVYQkD)Ksr<3MvWm!t$_ zWgQ69m=yXn;dVlQ@3M1$2-~ouh@QG4{Gf1)PCQFRwsP|UDihi*3)GMTDpr2a^IgIr zlRuxtmg$s3oVV$R1n`i1-s$|IIP2n|&u(L)den2pou{>@?(#`}#tI2%V_Gqy3ZEp; zb}wd&6Kw4D!Z+?dx}jj)Jv*GmP?fJ*6nj`(rem%-FZ}+7cicORMcw;4b9i1D9KKIc3sBKlE2-8VcNY)5Rlh4*rZtwKmqR{Z;M_v)}Jh*`XajW5_R5`p8n! zO{-IU`sNTGzEA=h!1?K>MqfZ^^GZFSq@9lw8WoxA>nPyMJbgwMGe;>D= zQYu#eP=-I2Rctmuz*>&j$_rYK%$ifL^|#|QUsPJfcHVrd(54iclTG}DH zM#r?0_K)gI_w=6*7|u`z#=rfPoT^^k4~1H+moJ?ORbjC-?lp})2+^%jUt?#WmKA({ z7VnwX@lMvi@qp-CG92#&N;%wkdZe{E&9)6^fAZ1PHFk!?$wbAfAHf3I2MozrKdL0hDjncJB7%)$M0YFnDk;qNd0q2KqFZZ9KgLtZ zB2RHaD!zz7HoVan8?l91#ACI#!-9-dLMo+`>>Rsm!hd`E{_k7Hmv0%Y#Jy9lj%T0G zWYgGU^)03}Qfi8a@c#@lOIlTBya1|lZryg7N zgyU|l8*TNDf~=sxLo1>ZbwH-{((}|*)Mq|^x7b2$2ftsf9-c%^b&SRUj;Rd9gg5pZT196}L2Yn5Sm zTSmESS-G+xt8CC-=vfM&Ia=QG9rpEY0N@1w^TTBLyLX5<7{^Zl)wIL z%-Y5tLI@n>B5i-~J4kJHdIGVpFC8u5e*hfC0(cr51dISDmeV{nbA+w3moMp&u4QRP zi4&IZrD}$S_~EBjJpdSt6I44OfSwim!8Pw@0^$@f3WlEg0jQG8E6j3aIy@AHK2g1PU1P-Pk{=htwNRPo=*S+?~ycWHrBU7XeJw?N3DF7##EOQdb%k5 z6hK(1Cq^2Wj(kz+UWDtp$E2rs$U=l{nN9rMBNEG3T_>OjAOH3@@RNAhmte>^0_o42 z3p0?isIpjUXAi#9ehdD+t@ONmi^-D=996R0v3I!Wz#EuArgHbXO1JG;kgfFDEx!x7 zKP{h*%KTyMp|0-(7BoTFQqHk!e9Mn?KN95iCKxMOd}2Q7-DJRo)6=sGK4J6wfkIPi z#>-=rCrl_OPYh9ZMke}nF%_P=1Zr`h4vVBPt{WpQbhQR1N|h+}zjho2F=PWGT%-pp zit!E;=8ilHxE|ZoApF)KJZ_*-npe4l)jygC*D?Onm;i=-$O*!)HJ_`={izkis>QNy z>+1F4{?o7cb!1xa6I+R0?rZh~y#a&;F2C0s%U%HHUw&347zh!E8ZMb$6uL|o>v6{? zD9;uZ3fCf-X|F&WGl8rjT2(i-;c@>O>HNgDOeHG_*ia!g~#< z<6bEnVqe{_O&A-Uw}92n0dKkOW_7aJ$0^xbqwZvckaAEs4zNT)JppB)}4>e~7? zq2t=Be!5iGwY7t9z!x#mHj6WQD~9X@4`{`Y;L80LRMM#=1YLAIRRo`RvE#d`ytjZH z8v>()a%{1C?=c<^2@b!e4!c1-14Z!3JUL}As}Mjgf?iaTSOMR|C1K?a;u#S*k2SKY zQoeVDc6t(zNzI}2GV;(J!6EGiW|Ju4$XIAlktVl259uRW+^0`iMi zetn>7Nch6{`LCg^PSQu!?#4NE%GlSB)yoe2DLkaoJ#X~3H2!jTHytL*bP~YF|DIH- z`i)G-@r`qZO*ZZaw+H(m(N#lc9uz>09!+~41QXfgf4CrF#cM@yAbv~!f!1|_3#Uvu zyx#*~ek&|ipw@pvaL#7X0w*+?sJn0C8h5;{1}bw^T=3Ea%4*5wQKVp!WjS!Jy9cNJ zf(Snz7ihpVX7*`&*_~`2ge_)q05dy>Wqp6UNkju@g)Nk2_69a9H7x;bRPKyzthPh|P z(?sfo6wMdSlob<9Jx}l!Q|_$GsYQFde;_y^cGBe)=J03D;>oNu0cAoCAkGBnZGcl~ z_|1iWK6k5lmf2hTLwZ?^m+|-}%lxfkJj9*aU3@6BH7a`X%!wp349>HrUOrbv{tCfP zU4W#tC@}L{D&aXsi);`b#24QaLtC^vI9Qp6SKuEPkT8IP0m9N_^#O}&(8BZLN%p>r z>dyTc|GNQJc$kReyUH775dTd~xJ-`smF(SU{h@r!_4nfAI(~^B&THjv0o~qs)s5Kd zvohr6VD6FQRHV2vj#q{lf8H2l(eL~7a_-xH;o>k($Eci>YV5 zXK3`)a0;Zax5NhOGmSAt+WF=<@2?AEW>dY`k&X;sZYKNzM(cxRGT!9vAvF z4iOD(BGDoqR0uh}dkX0>o@wm~%*!pNNl}sMS>S(Q<{fKk??TGpGas`;Yq`ejv(Rz=&*x^1oS&dU>!NeKs zy=0gxFnIjgGfzJljbzrt0r~Ryj`|4mv3# zH2z&g3k4s2Tw-{I$X8f=b;LI5&EnPZ7nlqrn5y>0)X?tmKV%v^ROjXH;3whmp0p8` z-ht}ZK{qvNL`fFGU?{N|^Y~uFpPx~%V~L?-QHPf%c{jqbPeoP(#bqy5yVu&Tti6VH zC+$B)CG6c+?CJh>W?YMF%FKHr{SLGnr*>0dXV^$5WwG;nwP{y?kFT!p!lp+6l#QMh zmKTmyQKA*A(9~dJG>i(PxLVbUhM=iOMOj*UHMO`G<7ukq)m=1mJ$?+$mWHGG7W?X% zcXnA8r&^}cCMJ$fwtE=%og4I^dFZRamsM=KZ{PI2S*%wra9&AfQ*A@0$YQWsO+^K( zL&N4_xu0|n>U{sM`=k0G?cl$^IuI1qz4#>b%Tn?zmvcS+e<(q1)KweHLt@p10V%-5 zC4Q0WzZ1ks>nwowqEPZSrK%Kt-n9Ss=f1h2hGOzx9=Tu^4aa6wlIfH1E_q!iy!~EA z^kNQBFgYD))O`DrP@jt(LGgAuL$Cpn%gM@LAiC4u)%w}l*!ed4rXMVvZbj+^c74(w z8~9jr)ja&}KOy&tcZ$y1AIw2|(yZ;^Kh-tMhZYpu~===U1*=<3ww*JmFV z%8wNK&JpZR{|I?M@K_ITeF~J&cT;Dqj=vlY-BVi2{brvos;%+sr{me&1H3!p&x%}B z4%*|)U6wL?8I%P78})l;-sJGurEBoBVDN=j8+M*%;fi%Kcg9 za$bx^6)`WolWwDSQWnOG`MKc8WUV(wt2)klT|qCfPccZ@@6kcM+dzf5zDo7pngpSm zDatchoF+~X6ttJw1O)qWmba+@b%78<$GuVrk;KgqpvuvQvfI5m*|xk-*kncD$1jHu z42re3S^M6H%ESWUQqK+?Ia>GBy7#}&C8h!tIva$wZUNpxfvfCun|W#v3B-sWLJ)by ztZ7Y$zxsd{;wQTTy}SN)@-TMohogrTaj1|_y_Qp{xUYW=1u9h8N|FDB=$YLn%5fxD$3RJ>Za8GppN1-%_fOm=e~{7Gp?7O4b`OOj3mWMj=i#Dk zQij55s;~=!zF3VS*d_9m@a^1ujK+U`GlaRDS+QfRdai)-mFT_IsfzB7BZv3@7^AEh z_r-O*F~;_VG}NI=qc0~OEvHU0Wx{Z|2xmWGLGK+|b|doCCTosgZ-(j#_;LF%@`b7y zHkXy1%r#oiZ<<{4sHRRwDHfa@aB5UjFT1T-0AtLHJ!*t}lB7)u%@QQ)voT}UZmER^ z{YF0=mD}xaoNYbc(^k~K(5qq-U{i>n5>Xv#7+fx97rAy<*ETII_Y7`+8r>}7%SPb? zsh}SyiGPRs+MArs=lQc3Yxm7d*W`Lnqqw_lN{) zzLnUR!j-FhC3~ozk$2zvRhdHv98pclTAtrT=>+GAT>nxasXK{wB2D7#@>{GYbI#eB zFTd~;0>DN(Y<&DId8M+FCe`Nt91q?X?JEqQ3V~v_4<$Wv8WEhMV`iAyC=82^oniw7 zQq8}q+Aag#M2LJe&()kPAew$$=+Ox7Pf}`5LpmKcyvehr47C6-CgdMKu)pnF0f0~N zH3$q!>+QQh)ATSt@6~7_zcZ3)XOL4by1~{oWf9|?@zVdTwJIY#~_Ab zj1XlTKt0>@do0vQ5nni|^}E+PTd)%7L)C&Iu0V@|8@pQep=Uaona#hwgI#oae&VBF z1%yEG^=#8l_-`Q?)<`K6JlB3}Q-4CkdD+F}GqT8jyL8#7#01~gi1O9)cw9d?=-Lh! z^zehp{QNmvT?-)H$mZA)5AiqSATFMKSoO*mJ&V14}KX~y|NuwBNL_yGeX0OTCu2<4|Xt zr>)uf+3~za6cYN}IPWzCVmbn|%6t>IBQ2V*PRmsnGOk3?a$b%K}YS9>4LOnvozfalwFdmn>Fi$2gC_B0L( ziWHh3Ih(moC=KQ3{+tNsVRclU4 zxX3&)jgip|4HzYzYc3Tkc_fV7VXBZDiMf3~kA8Q~wz|pF4KEL~WK%z05>k#RzSjlu`EhNAwu`yeI7m3Hb0s$cYmBwhTN( z$tEry&s%Y8Z2@G+5WOhDHDk?6HfGZCbUXd@UzH&3axGonWf3qhphP^^*EE{Wd{qXX z%+Hkt(+yP=Oo*V|BAk`PBL(RA)#m9A0cv*CpC&MhWLT6@{#_wHV|(xWbc=gopd9%G z*2ni<1=#IL7iYrc-(=y+;)K3AO&Mu4h-H;Nbg%yE-2CHYHzoN>Bw7U?pinCqR+CDj zMm^@_nr@_D=*J}H>mU0TJZTbV)}B*UfnMJSFQA_G}Znx7fr3&?)(5q~Xxw6kj%nN(eLk804FY^;y z7?n)UF4(>uS)|30Y^f81t=U1?Nd0cyemPFcIh)k$0~k*-h~ffQYKz3k5#4L3 zov_S?N9XUjlfLtWZ{cCgnfSV9D1iczq$g&Y16ny>kp`PsSr{ zpj|jM_*Y7hC3VUYs|!UA{i?iVSY@vmqC-y7sWID?^k{S}{ij|CF$}#joArZLSelDfrkqtt zPw!&E1b?L6?+{es*4v~Q@18K0lh7Dht})FDwv?>>z=G$EmKCAnA$WLDT100~cB)!I zH#xcsNLS}kAc)ZCrm>B6=KCWUCL48#kqFln-}89L`EQwWczdsJLR}q|uiK-lIs6C- zjUltD=@mU)HobOm4=bD=GWpqJepFA)ROm>DyX;&RVk7IHWR;ce2`2_v=@-01J+<-E zTiY-4f^C8}vdYcOf`&+6{*^HtkE4NfY5j(>K)NpBQlqQdQ?$kGwTi37l{0P<2M+RJXlW z35mW^e%qO_>g-9+=qMirV+PhSfq4KW2yqVkCyaDKE4K;7KC-iPAeqTAb1ZZepr3xYfe}yr0rW$!|kSH-@`Lv z+9#K+^@p=`8Sr=Yy+!TK|4`;9qOutp4dp~AvGQ0o>kzu10Y-H^QaxskDr$^T@Olgh z3Z}M(WM1yPd?{Z<`eAhb>v-?inJOfBG6mvB_Re2THHn5!NS_>w@oT6vzwxf^ozm%o zn)BuAb_LXq%?)t1J#oprXWGkc(l!RQ9a2&mb7HJ%IotyZmAS2-Y%t^R$$&d{g;Z?z z=4Ti$su$e2+;wWV>>U*SbrM4@M72Olc0tJVjvVp!{W^;Ro;=1HS42PW;*RpkYD)SY z;@*Y8BB<+Q-~E7sIgSru64^%*dHoqipu(hY*Lj4+H~eZ-c-mEPC9#X6R?SeSo)TDZ z7t0NIjg<;d3{TqEFj}~!CpJ&7*>tK|F0_;!zWO@E_D>VO3f|b->-cBX?RYzuT>N&a zRksX!cD?N`#&;tf{9|-X9dB5rq#-xLiX zzw(~e;n5$|63QDr|2k}QWXybr>NFTyIS}I1)%)(<*q@~KvA*g%P5Y~cQ1OJl6jb@R z@jH`|n+pPuQX!}nRJa=OqM)-{Jb_$%D{m+moeSt^LG#=}6l}n=N<)nU zg;Efl9Plt6CXDM=K2Fb(xnZCf?(`TMvxfTqlxb=mbsQFc@3x!`x?^7>9MTx~_kDpw z9~Mm*>=znje6;|xoUgz`F=bW#```!h){z<$UWx^T#H+Z@%UGWdtoBq#2IPJp3v|%?V8n%JcVq-zc+&soeHVG8XaP99n5=xuWJ0hz zI(GRtzie{Up}P4oS!++a=%Ku-JqEre$6fO4l^YrpybQpuBs*`+R3){&_dD>>;u7PD zxexTlMwBb-;XRP;30(#YvLQKM;HUvsoh5S_q2OSJU3?sGV|Ma^f6*b2^WpBY2pEq%n{YIHWrcBEhIDI38?^+cS-q1CEMy%b4_8U2cm!Q7rp6 z{Y0e0x*vG-`W(GSVQ*PormCT{U>SAYtZjCt&BGrww5j=ecP6X)qh^3XridG-5pq%> z7f#Ojbr?r~_!U8J?%6N-9pFTx^iXGq{h&!ICp~1^)HLeYn)X<&r^FTTCK2yoT`({bB(g6UjeB@9sO2o8M~pQmqzrqZL!z&{ zF)MwtJO&(EKd#{#u7gMq~i=o(?hP)f9;^O4E z=A(Qi1rucwA1?l@o6`Hk@(h|cemy+K-g_!XM1}+*|{l=C|kXfN8~9Z}QS8g-_8U$Ecs+e?F8 z%+Bi=bv#U!3MZ|>i%IYViq)qOL_EtVk%Ne*B6H6mWnaKU{zFo!-Re%y8zP1kB;*rp zrcHV$s>H+3Jcn8czK{tr-1vpvW$TFwg)09yAmCT3E~i>*ZXw_)pGCQ=3`Ol`T%(57=@2HS+v|spX3u$aO5RQH6gV5~881 zktyPEMy9jmWd4n^PB2QVQ)WQ0$?JWr@6Gk6A6~+Z9q0)A$3SKog%i5}1LaT+)IjXp zU08ZhwDsc!9?MIm_-1mRa2Ww+&W7@uyu7}|b_n9k8UD>r2-%}Z!o_U~SCJK~Eyt1Q zOt?C~LX&YlSa}muC;LB+Tqk^^r$x>f8MZIse5*`-_MTQoIYJXz{$ACt3VoX7awTcctYQP@|GP zI~C=okg26WXIYrgyWWIC0<4sI?L}E~qjsiH&k5r(Gi#0djKs}qIiLMHLZBVVNwDX& z`SW$tL}@WYz;cr-xo2*vazA?pGsN-c3}*`)Ub=REvCQnoPBByl;4SA*>*8V6O@QL! zv#Yzi)nug1Kcw&`d@Tj82ZQT8lUqTdj3C+aM#eN_aT*PUDlYXXEw3n{mC=wDG&#=; zy1G`EtUULunrH`g4|aAP)DgpCd%CX_AFRKoQ#^{Ljp`iiyMFV=jq5Zqv7uYo`I|Z{ zIW-=NAA~-Zkib(2#ju>xqH9|;P)u&-MLo2Ewo@Tje*N>SQd~WxSpFwD?@ulAH=5sx zr9hJ1581!l#IXbXl>afe@f;Y&NU~#lJNr$Mpq$M`E;A`_wo%I~U7e(S-*&&W_8x!z z5!8|bTwHT?+&epKzXD@lS$S}?ri6|bcyb*>M49fxCgI>WnciUaS3 z$^H4w=^8&^^)Dqr^fk879zXNmiWovlw%yZSG_aQlid4<9`+@ zg>8A#x^V9Wjh*HD&f=EpNnXJVmo)6o9@2OBniG{6tc}Tp4@Fz`_?#7xInfzA)_LQM z)$!{6Qe*p~C$4829qR#|(XsNkR>A2OAr;xTF9|$Ks!i6vChlE&x%$5OkjiZ@#(~;{ z=~C9!J2i_gYO-J0XnDFg9qpxUfRyw7%JxNDr7Yf-4J1$G?>Acg`jmiXSI#AHw6p1^ z9+KA{3haNeOHW;_!^yeZmz8^q9J#w$LJV{s^3*D2&K47gf0nQM%o_=b>zAUoicam} zQw;M@M<*#MNK!udKA_Yqe?eV9L^#)4prp62sLJgxWUJ)ZRLkTY2uj}|r0HY4R4-QX zkO3+%Q9t-<3O5_QWb_pY&N4Z9f>ulpDz9QE#|dK82fN=fOBd%Hl5%o~l$Dxhli&uZ zKIPOUu__-;vUrz^xTj11g4Z>QiC}f$Wnb6oxxzX*y%R3Q{CX0Fc!){Gb+m6wQZ=+* zRpg)zPfi58td_&)AI_gq+@rj6=+zUreS~<39e%C6O zE6#B%R}Vo^3vrMN>rS7(x822eF}pgDSA)l|8o=%-r{2%ZcBz~Z{$5hK_bMvyVs&H> zL`;8}=vj4S4zCo~z0DeUq?8ap-~`mo&HEaBiZ@t-m&bCEw|{(g#$VDAox5_0-$i-e z<%c>ElDqZcRN$@Jof>u3eQ}7}s863#ZP5ICON!FFXspBD&9azLY>IH7fznP%|U>;zCp`!_WM*_XnyARgVtrxz=IV#`Av;*aFF~A zslNE>=-GQQf^BNCV>{yD_11)q9K)m=Gp5Y?r%m~9117NtU)GKC@9B~2(Bd2D+CD?i{iasW0fniw<&+orlYRN$c9#C`Igl15Og#$O>=09!4 zV2*vZDj~u-Yh`$0-vjf{uqGDQmz4H%t?HOeb%@up0wPK-M2f8G?~JT;Q#%{j9&Z@{ zKJd)w>(&i^uiZy@?%SKhe=VIaI^pC)_?kYbg17d5g}SP2YOE19nBI33*) z=JBA0EMyJOsOWg|LCG-U@)OV6=|~wI9mwVY&Vl$t#S~#f)3HF42vJX8 zG8o{8Y=$)eEZj+K2IS%~daWvM3lHmKJ z-yOd8tKD7gV7uSamKQ0n!y%PU<0+ZT+dwocI|bHmaG3GkFaPth0r_~b*Wmq>7yK9C z$xRp5liDm!E4%UK*4>77Q;4%e1%YwRduvVz_NA@%FfeAWUAVS&?Ad>|Qu1KX@V~6_ z@U=-h7gm-4aidr`T=k4n1=PWaP!na?(CX8lC6YpcEwnNK>8F0OOWxN&sr#BwtLd^~ z`%KP4zicf3(JO*1;q4aeAPg!(OVS>}tm=3Zlksr*kP2T!V!oe`1)BeXd&)I>=*iC3 zB0pd&Qq1Ylq55Y^8*;lsvP`y1@gL-gllA4yUgg`L5+Plw_@>geNdns(`M$Tl=kaUM ze@D7vblE$uA>wYgPrsz)0LQ9Gl**jRuW-HKH-24`5^w*z*Q?@P{srs2_!RbUoml)# zbu4@>zT_=4Z#%we&sOc0nX@921AU9XTPUf0JN-X5#5v}i46kcUVhSXj<)9A}tx+d# zp$wJ(!zvPUlymj|nli0nkgeH6UJKzNmyWdk&fPyhqM2o$b{~F$)KcF3MYhJBDAxTj zf~Pb7K2mYu_S?vDgI6~&*F;h^Gp-7m7X2+0QQrVQTL5qbkPR5o;gU@1$ugVP+tJqm z@IW~)DT(!3Cbe-O%SLc@9G(XSO*8g=HR)P8t&U5AMqCE;RAK4>Z#n=`1W&sUo>F9{ zlu{5u!0G89*@{evCKsWJgS&Hd@T5~v5&}U6FkJPu%W+1#!r~zmc`mfACa#zW$}DNmT*^gmj7MiP-0IH&FIp7v51Erz4*O7M``HaNyH5pD>K z;e1lb`L7rD2}ePK&f~%Y&Xh2D6x8}B(v0H)?T1r_P@VfoSe)c(MHn~S%1BtzgLv}8 zxBut-Dbf+{Mrchg>e5f1r5qNDlfW+`@QXQNH~>Kspb)wP|Pq!@HS>71e6K} zlgkr?)!5;OgSkiq6*Oe}u0d0a7pJU>+6A4#H&!!HBnI@z@KH>hWlK#eY*Ch2E31B8+l@c5f0X9qq5N!w(^7tBB%nE&;=Q{CIdc2k{*paol70uS(Cxyp3`Y6}h3l7es?#&?|v{M}PF%Lf@C(7Xm*UuapJ^xls?C#D9pGmKUK+e*LXz_V?r2ubtdDlA_d$+vrmQz^S)&4Kq?Kx!AYfkHQCmPAv0Ra7gCP5|O7RE@ zJOYYGgmKfMY#?r5uG(vR=Q%0kvYLQtYNIMp8U{ax&$}sne!12_C%#Q^+keVoroRCHF4xc@*lDk(E#pRzmi3 z+y@G?A>3c#NQ48}lO3R159;7( zMHLtNQ(!JE*yBgO(%x7SUCV9~c7BD5A%Yb@Q0J#$y3(*QXLNOr->?y}Jb@)9x^*yH^0|y}$kEOQ5(}m+Q=xsQf)orr z*B_FtB6z7!c&e{^)W-PZauNR`pvK8{G2e&i%q?T49U#_R!%H}j%n=lLjG{z_f3G_p zaa^%?6N89xLHwr%C;$)ze4F$iY`_UwgYo|GT*Y+}98as4_!JWL>PSsYu_ZH(2syr@ZD)g~W!#=f49VB#gbhsGP|F?FZT8cZV3_;_)|O-|6UmTqhpq z$*(BA`A%2O9qNe3xqW{W`n}q_-lJZlF3wj}pL-uJFNCfXvz~dKd0CiXv2;*}df`{sNVF0dx0bKnkgkC1s_9C1CIUq+)y3Rc z@1m|Rt6c)m`m-FTWcj7!>A+gE)ephYjK~1K z>CcDa=MR$*3BNB7NCH0GvvK&F(NqPNsbCnp>DEI5eF{)DvX3&D-204*mL0upcUd;5 z%{+~*jR&*BVeQ;IF5mcBT+xU$ZA$x@%fDIm^q6ASwL;ee{xI2}<8Di*hlN?N!nDJm zztM`!1+}Sh0*g$M>%;tS*@D+Snv2;LzyOSDbaLRh!UcMTgJQDngx>pmHs|cS`*8%W zD`Jcqy)2NdiB3ucvF0{FAHo5DJ-H7>V04A8-1yVvzNO(Cs<~WV ze6_-HR`y04kpjJ-;pa*|5hgLsDZqp+EgxQjJgsfnm${dpZt;XhcfCO_nHzlAX_X-} zaLa{?eXNbP-~cdc9gW#8f700X#tN$9uwKCZ2>vmFA5VQVpbNJJzb+P+GVvH2C+8L7 zrR*}sTj0@~oHGEvHk9G;_iGY z8AxZ1ej^^W>{xp7ELSme2K(13Omdx``oqmh=)K5 zztxQ=7D4VZN~j)b&UZ#Sjq>#BC`y5~5?1Ma-zBgn;J%mfqk2wrg_iUkd zc?eVK( zcv}Y=zIf%!L5H8^QVy}_*8WIpEvKBz+%-Ft#RVh5iW&_RGwH zrwoN$XPBsw99A>l58vB^z&=cvBm$?)jGHY5PArInRuWqRkGF3iv5V(sEQ+W8Ag7)p zf=P%{3f#v6nCPuvyZJs#_Lv>-TObPM=Yo%j3N`D$N*@R8S)wHti*gSeCzQb~ILVF7 z4qd>|!e2X2t7;CN_P_hzk5Kv~&gehT{_)|#zy8Yq4Ml@|q;KHb8~wlajkgXD`vFe? z6bK5_^76H40tMQI`T6{%d0N79c>#g6^ z9tS*Vp%SzZ8sTP0C}kkpK`eS8-{DT{%|7=$D55RT1JZ}ilTi{9(if`8v(r#GcV3(S zok;E$e1~6q@2rJB>-?q&&5$PI?CE)=-z~bl%~?bOwil*v$C|&C)qiyE=NFQT04NDx zT$}65pDh))$^UD(oZTdyXDPm1DDV^%my{;`X1zOn4$H^Cq+HcZ&cY(tf%wHN>zfX= zSMy3$p5>m2A7yvA9uXy14u}LXSzikTWaMjQQ%#3@$UuW%2+=~Tivdv(`)Bv(%Z5*Y zql4_<^-%S^GX2nhlnJdnE)?6ae~gnJ+p`L@`GY+xkdbL#Kr}grkS&%9#B<9QI z7xn;>qMtmT^YPJs6og6BadMGvs*slgEqag=<62dST*MK#Mc}aCIF3z4{x>^AMf@VO zkLoxtS;0xZ?AglUG>S}|f|$ybUFJ+rJ<-=_%qpU+)SyAp>c3gbWcg7pKImVAB$S1K zF#uLR3ZkN_$tFz&WX9S~?imhRX~5`l)v0rcR0kghfvxjE7mV#0lhdT=wlVU%dh>(x z2eOE@YF)$;T%=fV8__Zsxm!ZikT8jMJ>7Ihq@?}mGmnT%(NstU3 zJqzNf^J4Y%gzcrSy_fc34F`$X>yoM*H$yqsycX(1c^I4f;pFOlYY#pw_sP7wV{5aY z#`UeDy~eAQ@RbZf=im{WA5VQA>gawFnYsxZtvs-guz#*Z>z^hLz(-mdsY*t(;(UqT zqgKu#YU{dSm>k;*M9f`wnjAX(py|;igYAsxI2mWR)v4X}pWpU65%gg+<|m@QUrxrf zK5nWkSH@n}=Y_6anMMT!5%{(3bY{K=Yi|C9|CrM$V)-@6wAH+6%kgG4`pC^qh~~aq z?QD`@fH+%-sxHrWW;cl_={w~}Ecwy5KAI^}@%Z@%iQi*S!Q9O~oEgKvaNm)w6nvgx zDlbQ{ms;VO*ivg;xA@S=R!W1PLR(4H-p|Okv61>XB0qAJ#kGa}Jp()*`^^_V^PmD! z$;@PUtRZ~YYtjN@T^dC2x@FhFt2O(2vcHqZvX9PrPmXLjs7~lu-FhS$!jpIZ&=QYO zukY~!zr5E)pbFN$Xpa-1y=g?ZTsHvk>nkx89O;L&qaSt8AL9!qZ*H_Xo1GP^AGNLf z-P5jeAQbb{=rj~w4>(BExt|TJOiMSW9gypOs0;HIRf}3F*8T3=9VwN-1_7>3BmDF{ zV~jfEpzX8!8GLyWYUx++bXaU1aAYfDVYiMZ+l0N5C(|KGzV>^V3+v4KA6cpwS4G>% zR$4Mpw6g421nF`^i}x1P-yVsMgpT$>WoUaKyn zozu?F<~xqfkq}-%@$a`p9a+rJY@fY+q)-dL`{HrbWJNY05$x(RRVVwZa<6PWTqs%C zw!6PNoTmKntApKPCB?WDv&KC%?dj?9LT*iV{FV#7u!yKiodM16FQ;`uR9sy3n=hgS z8z(nqKdW&yOpCq~VUOHui2ogJQ04BP0*62LO!|BQ zqJ(f|tW%M>Jb$iTlYbv~r8HTX5>fpnD4(3g(jah}#2#vv{qzny(RXD?a-?@J{qag+8dE)v_Bm3iSe38Gn;U?Buia&dC+UxH@^4x&n->|UjZw?$_pw6p4x+E4^ z7t2k@z7#I7VH3k#i36L`%`V>npj9~FIc8#I-spNk>3s-_{d8ZDL_LG%ne5ne>!yZn zIqN@GUUa7jPvd{0c>|SpPzwB51II8V5r+Qy)F-AkVWQcgWa8*j?XH3-csr9eAM~~m zHije08=tiSC-rlm&Q7Z%ZFN|BX5k&1*WwP0r>G&%gMMXBgf7KC#!Ub}KzuBHn7FZ7=)i@kY zR=1Ccxx}g$^2swsMW4sGW%1|E2$5<>uzTw?IX;f?w(UVFho$qH-Vwk7+^_@&h6owZ z1Yp1j=(sH*T{Wq#B;Y51CzthgTnb!dI9>{M)A4SbR*^e%|Lh(Hjb;RPQO^xf6Pz7N z2d?7A*7O`jT}NFHmFLkE?}KW5Av#?2Q@cfVybhXUb9I-4OYWdVMD>wK(&Kc~iBPC$ z1q@bSJ>=zYg|nN0Th1jqNF7Hm3Y>ZWO*Z1 ziQ?`0RiLc$>Pz>$=~*(r1_LIrg-nZcoQ`sRgSnP8A@o@l6!FwP?PWKvk}z_Wn9uE% zIIV_~7`JTt#6akdTEgAP>^j+7`z31u^?UE11s~W`P_p4V?&}vJ`7B_M44Rj=bNn&k z`-6%5%cGSZ0wT3N?})T4@VXI5{+~%R|CLK&y9MT3Ezd^dta(YSzN&Dhv}%ePzqqk- z@amgrjn>B7Pybh9tBPHKaC-YgHe<9)_ShWR8_r7s&N#}CXZR%>kwS69#VnMRt#J$C zK;xK1J{y_GK;$&<6JyJYY(mNw!!?jGbnscITVegf4LTT z;(1_`a*TH+xcCeMHjBU+uEoIw57At0roIw4Xv!nZq=M=~G;+^Lt!i=%KGPd5K;5o6F6nVnP)12zmUHqupQJe$a2Q}-s5`P0aeyVwY-ge*4ceL z@MF8zvZ(9x6jw#B%&-~d!%q1Sv*s=Ij~yPvBT$2{UDGY#=cI|B&MR2qOK z->nmWz=Ka%XXF8=5)^BAM%L}^j-@;a3QsG_fJCOk^XUnh)UszwC^1}h&d>CKU#U@j z5E(YiCm++n!AMiX?taK{n#sPbZ=6$=GQ3k^#1y|JfnB75mnx)={5bX``s|`j;{S~N z?#=BQA2KR9Q(ckty@neF%Jhan2Afdvxr3eRIc6~5C9UZGLFl3b?=5y=Ul8w*nO4Uo*G55$X`Iv7sxXu;I* z#sv@*OFDBAevW~%V#pp(f?P>4*%5Xp;*-v_g6{@EH)4|kFZ#Z!tR=Ph*415DDXuR3 zlHkQun1DCRo`@Fsks&RKb@%7T8@f-oml~&^ot|KiYwrzl>Z+7X75Z|ENe*LROkx2O zHgmxW74(-aa1GQE!L#i&G`Cp3oU~S8n$dfM!V5b_^sJJ1| zPJ9{%H-ViR@n}0S%*WXZ4K+Nd!Q?E9A5Qxgr$uNiTNHa3gU9>tq5{290^uSG?cIDm zdUYzG{SXYtC>CYG?Qyb?X8Z4|TzF5sl4mkdNon5hfI0D8Z|g&yC}3C-sK|z02`i|S zDtT{{F-MYhH&Olgqe05SaP7ISwLg=loBC-dY(m|~KCRE`L$hGeI7l>VC}V*+jn}`O&5sXN@Pq6pDO|WcCg{ro ze7Tpgdm}R{(D?^AvIzMRZ(_38=fNwLrGu~@GbvAvza}Mr;+so9-2B38;DyQD$66WN zF~>XkCw7EB7~2@W9~>O$@gX~_Qh{H}87D+SHh&?*tF%XcTzjcv{fB6Xs6CN=`lyN< zWaHdH6%M?YfNA0B=P&B)Q||^B-DN(Bazj;Y2k+J|_2YUHJ#K<3OulDCmO-6Zu1eM>O3(q2pgh`yLHTGFn;H-?DvC_>Un%0 znvpd+pS-YcBMk4UhQYZ|+p(_e6!%gN)k*G-nXkg5fuMW2I8NkIX=i5KuZ< z{XM!0uya-l#Hu$A_fCs8i#Z_D99+KmVh+dQ5zI#lPwPS$KuvJTNtM8s02h(h|n2lZ9hOGnyE`t5T-$sw359GR1a{ZoB$uc z%YbbfiVtQ*$kIl*;oy${A&>EpaX2L1B`abP@nWPwZ*Z10Iwmg~_aHbWZHLA`-lX1< z!Y7U8r>G7TO3Wu(TMXmXnDEa2{TjR;7rZ_vHY(M{kunU?tErdUSXnW1*E@ zMrL-G&0Ndx0pG=3LE?bdPa)AfAcF}pzd2UD8u)9z&HPBnN!4e?B+lhrcQ^~-ttspE zAJXecI{gUBo&V-t?xj%d`06zo>$;AX%9DyeX#oGcN9sv(5&+)oD6+%sv4DoR_{46B zDZ57nl_>A^-$@PVlBkpu=HS8GZqY9Y@-02+y<}O@5tQNyaq0cj!wqx&iga}oVIV-# z;)vgyi7VSK?8B zmKAuNSN0$7_0?+cfPz;sQ2CEaEo!gP*p3jVI>$#1*j`hCr3;QuriFKdp)aq4KQ zi+-0OqP}Zo6o6~nB>msRlCvWe6>Oh1sZH&f+rhdcq#n^bA!>g7k#WkgjlI!$XJQY0 zkwe!DL|8?v;JA+rDcAFhU>5#JrKRdETUu?V79hh1@ zAU%&tdWm}bvCX9Rwql0g*Oy-Z-sLU6V;n{GJog%xpsLhez<>us2L`bHn2 z&u0l<_yr}v%oh}@j*;gbOquK)bq ze7iZNEcsA_<2AkEUc1C;-l~S zstM}f;(|F~Tay<~`DdgGpU0?dvLMOC(%paq| z1;5E%GtBpfDQeEI zt1t3{6r?8;zpM9dTlPHU@JcY6n>w2j5H4yKMQrRgWQXRNxA+ zXO8_c7DOpnnPn@OS!HKtDxy#r6~RnAq)M+$EK@5sJTv@YabTuSaf@P0Tf2&(Tqg2z zySY(&WuI|n3%>aJP2<5z{Ovn8ZVniY_H`HQO>{vfTI9$Ig!#SkJ`}O=0`cYz2!}1I z%FC-_`80%avxy zsA_^d-Z!v^>c%Rt|HsJ~;yup6lIdH3C90ZjVU@d|7`{9)Wud!!;N#ElBe^9tf@<{= zjT{?E*S3ya1#PFol7bS~zfo{oKd*M^;fIskozJgaIe0*FPVDmwFYjWq<-@qJi3`L` zDNYDw>2ZPBXC-!J49ujnE6!T=Bm`FzPDO_{=hMrHWIH+h}5bn>@r5DIp_{q$c+*7AXK7S8davA5lzg=O@=)>B&%S9Pc}24C zp$onpQykJuYlsXmjEGZR_Bm19h4Vdmorj3o(x3n`(p ztnR%|U`N(3jg(mTr&6u+hFb3l<#qd2N!g3Do2-vvV9H^K+ckPeO?C;t9?RPqND9Mo zftLR52$}U{xV%lRtGb zteXL+-;>eqm_}mWvrsDNlNVB}nW&y_M@2n-7C8f5iYhV=IS}j7O$6C?sfDRf^(QdgH zUYV)Od5{l-dWse9*r%>FJh6mJMe&eV&hCysYX?rF$)U&N-zVU2PCC~~uw?y7p}I8! z;~(VV?o_V40D1XS4Cdc(`<1SsFrVz=y)#HX|9atLt@0o>1riEJm{k=p60*6}(UDFs zk$#VE^K#UfVU^K^t`k&yY(pn2W6|vSJtqwz%v(-_x$6&oO2=epXK{Q?bF5N zVbsdQZ!~dPx1#z|?ZE}p+DDZvKmbmKf6(Hl(6| zON^*WXy?HMO$KJ($oDJX8lgdU=iyn+ZKDhzRuFu6%w8VO+VXGrq#h&}SE+0Vg3g;B zbzo@^SE6PAKjebsgAaf)=)sN=dW>Sa{*Io9LEh{5K05C~;s@G&uV@!^&Xtuq%Lr<jq(Tt2+wOxsU*a?G2#b^71XH z#{ewujL?BBxRux*UQUwO@&KZ>A9 z&NF6ivn-4QM;1=WuBTos6dC2^(a*s>>d`W``|lgCD8PXY9&$f(OVqAs?O@ng?!mgM zLvrH)Z1<6mtPp8vxa=xhx?AmL&%=2DJ+SBD)3kw6Uo&@wY5qnY=rV zkoYJ#Y_%dxnDNEbh70i;*z25-o1nx-xS}8b6e7H$!@rl&9sTagMu@rm9U%ENf}4UQ19B05< z)iwYh{>R&k+fTDR*0|hZ=Z2$eU3H3--=1?```pt`qJqF4D`&AyH~EH#xa?`Q3}+EE z6-#By3q#5FQDBbnu&Y9$n5cDYjzfKq^tO$YZ7xIL;QGYo;5J)z_itlFTNH@#++hLr zRFKxWC11N=YG-!y?&Nm2!l-SJ9`uNQ-Uz0`89EUD4{k|Ug4@^sJcIdWfcU@waSEp& zU43eQfcV57qC{DfP|9lKmqe_&&s&JSP&}l%$c6YnA1i2?AqCOaVhyOT=P6Xk_xd95 z3k--bVN(>tPBc|^uo4;tv(3KZRl7P1ZwXI|c7E1Ub>wog8P^+sRU>2lRX59L}gC^PqgVqlnn}>Mq)hu>6T2t{3!!3=6^yDVP(L zd&Q4;k^%jcqK!AUWNJ%IcZ(3;DGKF4LM68HnKgzI!8mF>J@R!Np=P~t+qnIWK;ReG zwdWg&!>=D6Ej<8Xu^g@+DG*0r*A2LS3Y+*PG+mfB!okDzEI(eMgF_un@=bRVJYg#O zZlf*(kGw%PZ>f7BWw=}Ys(9>SY{ZUPV{QxUZQ*ahZJA+MY*B`--UUX^jZl|kF+vE> z2dAFzWbnznIojT`GX1{Y=iKk7ZQ9Roq-tM?|SqIj8dEtj4 z5^M-az_BB>1+w-Xf+emCr+dBkkFH8Mdo6*_OU)Z4ncfGJnMvttR!sdalruuc%|l2C z3bh}Kceh;Sm$Mp^XuH=zWY^Rjx-t;)thwccg9SlD(Kvyn@?_|G^|iVJ7CMAx?V!kA8T3{gBDf zGehouo}yTEE~fXsg3r1nVJjl1plW{l`lwzeBHENE5JiL zxY?>CR#d7@Lf}pWWvLByccny|&GEk=6dor~jfHsK}^WckKme@+6$oIOO96c!8TV)U3oF~QC zLugtcE00y%JlO??lcmQ|hubZMx`n`p12&H(6lM_#wF;7N6#-R(fNzLve{gX6AU5;+ zNs(EjRca#kgAhI9P`fAOK3VHJ;_wXxvk7`A6@bYKxj&3NmB}gqSf}p|%e*qOhD0(m zf#V_H^b)`6VAgOnMfagiP@C@XWhIKWwi9Es6=V$DH50@O~iQ zitVCF5wKJo!UM#13=0jPi6C4nms}Eu1F(XGeXR^Va8MjyL6vPQm$_Enqmx4+mycXD z--QSu61Dxkjb;Z``0ar7xV+}3hF?n-5_WF?YR^c!G2l@!)fUk&3^@Nnq62oFx_%+E=cVO-hBm)& z3LocO>H%MT4-4k@-VPy~GzoOiG8L4n&k!AIn*ad`15(7pJ94WU9IC1gvpWc#xwzWEW2WGP>lbYkn#jUl! zkcYT#@@q(8g3amS<7bP`W^jjYWncn&;389m@CAs{Omd!;O|8y_Qy8HZ3TV@}=MBGJ z_LRKLtCriN&1LD%TWQ{g)bsT@k8Odw-&Dh!G#;j!3BGVb&+Iu2jD+t=?#$SMeJWL4 z@f&ls=zHD8T$y63u1LihZk3QqgkK9A!Ak)Q2yq{N?&5+e0zRCKFA0w#Ra8v zz{}y+%>xF0vq6EG($OBGe8{E9?|grFM+$Oa^1sx?M$V|Cl`{7V^Rq>}3f0%_Q!)v0 zb_6h9#l82Ho2S3L2%ngr2S`{6iY`E30QoH_;IUQ}jZQ1mP`~~r(30YRrstZRh=wCm zsULbks3%W=>MZNlt{+ZT=ehT@z?wq8fj+6GLh=nE2_gE}-1P}Y6(GSTNm*$}t{mAK zNkFo+Y-n~b^Dw&#uo44^ZV$LG&oD=Mmz*;J5!3*`G>H#xas8bhgl)Ku+={8m6T>V* zoR@+~XUxzDgDbdGS44)6#z@9no)Mvoi|~9&&QQrqPDVVaBmmW=m+}E>rread8&XJ{&uCfItBEK*R){4 z5HMpp!{vEM^Gj>7k6xu3+_q2~81Xstwi7I8IUU|J-esviW+QYyC$43$&C@bg)B0G^ zee~D0$ibx1%|DONt-|K>cTJn0Uzuz&-)<4FTa)TuD!-gX9;&(O_Twati|o1)V-#Ii zuq{c(p^H^LEo~cLym!_*LPBw2Is7{HBS~As6AH^(aVTv^dTCCZhJj)+=Vx{8T1rC{ zrFz>Jvf_98Tjn{9 zlz+rpJT)k7MSsmI0o23acL=FK$f+W7V;Qy1Z*l6!b#&KoUrPv6Fz z#ej69{g9jw#kCu+lb*Z>;ZcTrftQ+TX%ds|>(2 z<^A--T_@O!Lk(Wtur3SBWQw%CKvBX%*(Wm;^Sb){TI#aJiSEm&4e?zappbCfQfG+q zQOC;_Q*9uLqrl&h`;QHuy*+*ZrVzr9;_K%Ta#-E)R%Nm063Vu64N~z*-P6GT13SN2 zWmWAn@3px}>Y-SzlQ!DEv>_FJ%0|x0)%RW($%*JL0(gk z{BI)GBb(#{IaNB=f4U04a|e(D9@B>}-MLSm`Zg{#vz&0yh+XU+vvsF7<#I}&n%Cwo zMxH2b#X>tT`iWL_F(RaLM%*0bAZ9a=4jacoWMy#A%?`Jl>)-IH5(pO-W*@I$wH5y_Gq*$RLU0B|P(F&=q{wa> z)e3jfXLtH}5aHt({`0?{nMg}Ks<{ml{635~VrxY`BBWii@*339czM%IR$}Gxm#nxs z^U$W66HRxX94d2oMSFJ-IA)}R_T1UIzTf_xtni=jAd0Ss)XSvj^B=Iv6eMNtW{Q@x zE6cUz%lRt#G^!fPgEML6NXJYAUpu%jR@gNYeZIHv{JsXQOjtk0x&JmkUr(PaSs{v% z%fCHYWkfMRmeV-6* zkz#s~;gf#t+PufqEQqR@X#Ty$VX54I=yWB{y$iOrlhuDtyFP)$)czY?7k!TLl)uxN zf0EvZUwT}8s+U?^H9GRDk~G0#ej*S0fTYTR96;No}>hN0=eE4LlOviNo zBb_Z{P@MbicL6--ZqNRTAM?y-rwHYN4t2ap2=4GL?TLmBu{!fG)UCLUhY!DPxoS%c zRO^MTD)Or)cm1JQSvTI9h$*K6ybC=A*gRr&gYzbt5iLsqKqaFl7DOVo+CjN%bY)gv z&GrLYp9T|>@iyjVXM@W7vkR0I_J_H}H5qK&UXKI)=a!py^E7pTKOulgJf8kePi_PD*nE+70BX@Vv&&=zhlqtCV~ z(9=@bef33B^7XdhE`1 ziIWBVPv(;#PkKNRRQ`Zlb>^+@PM?|X8DZ~a*B0OAnXtoGRBhiDzqVePye;+%MN?OLF=c|i z)!eXOyM@Z_OOFQP4ng?F9wWA7VSGcsC3EM8P#+6QlcKk48T!Jbv5z1&bnAy5-IG?Y zGVwzSj`ycG6rtjkx4h?utNzjkhc?mIUp;B7gTN|PduFa4>iO*zK&JC&f&RDV)p}Gt zUeVq@n@jsU@NPQb^gl(6WUO8*eWMo}CB`N&jiKF7hf!QPk zzrKQ0mB!jcf_0=^?)2uznj;qba%{##Z!fF8sxw!By1HzQ^5n~?dKdv~PlFs4!>te( zzl@qsH&t%^O|@PcJ|`s)_ui>wFpbt#&hGjM)LK8&5Lo@P7-0T|<*JdcO&OUFuY8R9 z6bjuP(26#T5BhAUtyWA>5#EMm$D70z$=(WwYZO}ID7-tiXS2x)-`~dPN1l>)rkH!X zv0NZgqF@!r2yOC+k3BETEow@keVY{cDu$JB>5zKMDg$u((CUW|)g5sSofxmaE$XuA zi%u6NjCD0(zDM@aBsO(%vp_cNsJ~(yKJDKk3!>4O;p4!9sZq0j8^K(Uqzi@Ag)}6( zjiPhT5xdw**L|ZRAbhD$AJntY^(8^jx7G8;P}jIPDJxKm>!86#n!%J@z=t#u(cG%r z3KRxHD^&JpAys=Nw<*PP+J5&kqpw==w#Jt@ zEKBiyEBw&|&eGWsex$FXoxpKM%BC7{)z0cvpdKT+pB?ooW=Grv;(e|tjV2?uRyBb7 zpXa7X8OdH6lD>G4@ zxS8|1j^*c^oPwhM^uJp$Zap{KYsWuTac{k_niFX|X?-m532_gC-6$~(|3}TX@C1)U zoBDqDH&WmA(}$h4vmx|j5wNA==%Lsg9uOo!Rp2r7P*(}TErU3f_wc2q0rD*C8LQa zQw`A%nm7$IOZoy+ZGtc^K=_$s`)?+I?}L)}OvZUtGvcuDO-D4n*D^sYasF;~Y4!Pb ze{IU9`Q1i1%CYQ;ZdL&19q*fBQW4cYz9K;5cYJ9jfm>52V|P=O3!|2_(}cscqbJrr*a9}6`kuY2bM^xnK>b-^2APz(il%32qSn)1{*`PpE_ zYW$F(N8hzAi1y&mA?Wr$GK$-m z!>U--!UzM*uq#3N7zp5kyM@J$eovtfRzne_iq+vw{p=^ zL+N_(&2MWk@;ES;SN&*X`!dHs*znza(RiL!gJJj}8CFJro~1Q>#c=rnW;Lyuv{-AG zp$5UZI~V;Auk#?}{A&}P?k>pdjXBr1?|S-dSgd<1y;6%@;SL#WQStzoaos0WAnsj$ zszr=La3MYKba%2-TZ!#UUvlZfxgU|sTav?^eN%B+T7`=kwINa2c52?+GZTAqB8V9s z;>>kT7WOm~*A@aYrs)ako)ITNlX4!^_I}*8c$>&!ldY>VFXFxXAO~IzyWiBq`?v!Q z@9jZ`+~#RgKnvJ#8kle6+np2R2ZZcF&o3Sld#jV>6g}4!eUBBLn~A$lc_T8Nk)8o7 z3_`6np%+-niZ4eZ_jaR|k*X$yBYWPgh8@x2IkH=l^fgOG=jRzPc$6(FQ@j=ZZ_c$_ ziS(Kom6v~1M?C4lMMg%Yfb9dJ%>?wZO?)e2&vWG0>l!U3y08^9G@0GuPWLuq#7B8 zABTb`#sp|y#mBA!$`b$Ix4$qed45TKo)GeB)U}}pUd2Kr@lc&Vk;-g%RqlbX6%>gn z+L=Pg))qT709uTc8oJAvJSXQVCMZM}%NFDZ28Z8omo8Bz3MQK^)UslIwOe`SJ3UUv zjfD5=y8cRn`@Vw>x>(pubo8|{94SCEU+g54Bl)a8jml*9yt88GexUsMU6pWAP=@xH`0ux2R#t0GbRS zj)SCz(_t{GBri|!H$}%wR|+xe{c~K$V%==?r;ULE!&XN>R0Mexhdj(fhRz_4P!X3{ zaOnbA3(}~HsVeav9!Q6K5z-QPr~p88iYwxU^!%{5;a|tXNCo8)K>}-)k%J%!M~&RV-}wEiB;v^3)Q3rmIJ5mWW}!nlwtPv5{l8n=HfH+moC^EE>Sz~VJyM7;v+50grT3vehk$ob;Lc*iwe=T7VtXy#?8lv1AP@8 z`2$pf_L3Q{l7Dl@wk2HTOhkqy~n3D0=+;RO}DlsH=!U}#S_jt(%|3SlhByn|!^ zrKxk)L*7!Eg+Ebsmi%w&wwryrH=9Y*RaKRFbuH1^UkKnEQN6XIMjHjt%{}PoK=}Qv zO4Mjh-^G-m`4mF6y6!~YF{qU}4))RAKY`N_%gXEJ!ow*oXT6kfEP2k6d~>dy4g2mw zYZH5SRn<4$(Uq-sAu=Kk%3mkGUoy(3f@dq+m>v3!(4c$#7_n~iTS178W{rN9K7dWS zA$Xgm^u$YE;YLn!P0{ZK?~2r>OHr3tF%`*!QdNs0YQk9aIOdFviX`W#fP;ZA$?ynpGZjAvO2iT!G5C(_3a|!yNwlZ$h+>(-(TEg}roXlyV>a zyaqt~oKpR|I5JRKC6tUlPCBp{aS6SH4B*9k0Ts`GA)m%X;#3{P-j~lScgwGUV7PhT zw&!e`;?X&>O#kHr1*eQ0LM78#Q@z?=(c$wwz9Tl8rix?@9)2QQ(AT|=(klLi+W5G| z1Nzyaihf*tPbY zGuf>@sc81nN{Z##bP)v(T-;Y<)ZK5;q~xD#cb^5WD(Ec2pD17I$0eA@#fedYu#mpz zjh9%TXnIzc54auGe40TaxU)=ec^JAmQ@Z|J@Jbsm|YhY z))Cev#|fppXAKlhM$s3UX%hTfO!S$#f`Zht z%-Wv9-wG_RxYvJ7#c#wtYy@;|0?qXgo04vjZBDAwCEvXtOn-l)j}EU{K7U+0ayf@a zVUBA@WJC^QuZi8U?A(yp4+_|4kM+2A&Zh!+2T*G?n>GGD^Nsi&3H6*v+%c53LsN!@etm(soMUAAkFj0BENb2Hj}tjFAazvq-* zpSM3=Abb%yRw7dju3;4HlE9Q z8$b+ose6bq?~5u`31y|E+xhE{5e&JJ!(*Y{vuD(rtih}kSP`EWhf<&AT(~-O>jU4~ zcelZ+*x4SH#fc}s=AV>PAv(MOe51BeW!re_kUAGO7%~w`)0R^V<)DHu+hp)DA>V_$ z2)@P6H^89SM_FM#B1XqP`RI6jmzBW*X%a-=`TNk9ws7t#@rN&|U;N(K`wzVq#b~w~ zqeW^(r>|Y_`p-q?l;6wF5KT^zCt3$`u%{vE8G7G|rI}v2zQ7`sF1>*$cuGBW`wDLUqN zMfLhC%5Tt+Z(B5>be5bUIB2iF!z8qY-YH$02A=f%WvdxRs^9Kp(aXdG;xhiV}~3b+^BP0yt>hGg}zW0^}ZBN|h^jPwMngGZjm;-gud{ZIXFiXJF}q zo6zT5bjh}|edTeVS3k&n+b9Trif7h&hOOX8iE@!)szJNB|`0Jc76vhEwnKzyaDFw4nK;r0@^e`PgZf-K$0ICN))@ zI3Ca8%Qc4jf2f13joV4V-G_s#c+ENl*jg#5qo^At4%K|7Wn~FW$7NJ<{E+ZLhnEKR zGC*1&9tR|C1n_xS+1b2vUohONcym-KXe%cvF7`eD@D^%p)#;IrRtUJ^GTUuGH*=yNle{ z7iZ^t!zTKm4r>G%&c}L1LHheu-4Ss+sC}L9omeq@9M-tLLx)eW82;!)%^&6f5e2;c zA!!zF%NFXNEl+(M8%5=W7$q} zklXtGk9uz2q(6C_BR6*g;#|C&$)}!U3g^#Mr>fUYfc`fEv%NA8@&b9h?0uP}9c3pW zQDHuu1I_?fD`I0Pv1$}dEkp%LMp^!{#WMOVoRnq!dxN2Qs6tUarf1oRh0R-6IjPNp zc_QR2L|I`Ja*v2m9RJUFcJqJ|TV3_z)+I0}r=sznl7ppI{^j@^5|&-0PW*ifegB~Q z7#Dh(Otwzp?e*?g6{U0m`aR1~ymz!$x9!UIJi^f5)Lf5Dwp4`KW?nL8tjwSvyg@Ae^vKnFFr|*c1nA(hT`*eM|D))v-l&Fc@RN7~x=}!vUiaH@cM3At2rQ&?UOj4I2&C=n#=kMY`2V+EOCM^L!Btlb81| zxPQ6t`?!wl`h3pQbpLz*$MZ#4hmru@>@=`+fvjo75iQ3Q%&nkkKOQFNe{gnmA+vP_ z?Jo}!x42B3_k8yeX&tC;7xBF)^|Pa?h~(t^wPg>Vl)00qsfzuCvJOkj- zJ9UEo{@oU@))8xsph6*9l;e$l3)JAhSR6Iy@u`1djKfpq8IUVr=}1%xH`4wY5??Pr zD|r3yV=zcQTqqq{TdtQKI!D%n$OB7b!-B<;zO!NN3T5f|`(q~8P7f>kE=#>LSdg{4 zYxmt!wu<3Mu)zO_yI_62$7Hf(^M*IC<3ur0=#qP{f*k3CBCuT5su_J=cY2W~2BkVi zkJfZTJep0ir4@04>PZA?G(}#jR?$3sBLgq!^0U;N4(rSCm1WY#@GxG7r@T^`t9L?% zt{tL5a(EgDvEc9EmaV;qen0&1{Sp8oi23#G4&XXwjB8B#7B#*IQ(On;tz3bfUD109 zU{N|b>nNJ-8ILn7P!lUO4tC_0Q%)DZ?18?w6- zdN4$^B7Sn_udc_URN=QakEcB=m6Ndo;+AL4@vCbVl`mB-AvRp7>vNBDBBDG741LV4 zVs1+uBu82mEZ9pAsAzv>1;|CBb(CJn9pLv0w7(DTik6OD>)Wijinq$<@2WLy_#cum z@4s!cnPz63Pzw%ooeSkUJ>@nU;}pR?4e9JGu)FB@Kjzp88wO~Z*+jz?^YdCcwVvSJ zGEs!3;3YwVQVbat!LcK;9vT{zU%7LsC|Fo`G*0=Q&_XZ)IJHu!W#DeYZ5hCFE-Z{2 zwuex_`r`9R^<|~#;5=>DTF*b>j#qiB_{|O`_@P%i%k)`A(O(hPzsZNgzy1US6JVKm zfKc<%mpe*i0A_>hTMbf;*GsU3`KGU9lp0Ruk`yyDvx!afCg$4>xw7!J9fQ<}dAiIk z&xbF9O1ckKFP*T=<-4g~VhNB_@HP_u_qZHu`2?a()IAH)i6w(}()AmOCO)&J6Xvv3 z9h01M(pO4(ziXNq>MY|$RuAhg|7cfloz2F_+JQi)#%%1A*WzKLsbUY?wMm2N1Al3PMmoou_k>^q!X9o;GApqz zb^f^)!279G#&~p5Y(y_sGH*zQ;1lj7YPZDV{r%3C8~>sP^d0kOZ!2g7H;ay$f`~Ie zEAa0SPH+PsE(102$qHF|O;E@J$AWAO1Hk@npwQuXV5Qx*UCviqnZNd~*S#$Ts@AFr z_{ULT%gdmoTi(xEVE0WxMZWE7s{1b~|C zYF%G#x9>2{kzh_p`}{PHs&sr}%#J#hKjmd{(I0KzW_jz4<^Prse^p3s{x9`ovcJW} zE?}>?bZ=^?H3KkdDGIL)ns7b8gFVb@jXIpzcC?zk(y+SdHF+}eGdpj3>CUjpM>iLv zNv^hU1@3=C&rfeY7>y20yv=^#s8;R6!&dgW0# z#Udc)1LlLAr(2gv-kl4J?LW_L%pNLc86LbLLG4lmh+DCT2Q%qkMVjxsA+G2S$vbP& zGL!DsP0-gWRnsY{UVqxVOJ+kQv`uC?EjrRnB>Vp_ePn+NWB$1RO%dLiTn+O$h#i&9sS=B%rR!PPH~a z(Z@hAJs@?VW+8zo#!kDLYnS=@Tq9TVsZ0s!;F9d0Xem#?rx~k7o6^63&5ppAFM9w} z|MjXVGb&wBn@4Dm=udNfich;xW5trg)TfSLBHSa}(*3jjK$8_C#*dN;6;w(n?qV^b ziW|*#m9|vV7MfkEVCX(0$BEDH&B#oWB%tK-88fpAx6pjPdOSax8KW(qx+Zl2+_LC@ zhwFB8gYH{cIrBp>C{kYi@372GgMaGu=QPZXFJ{w%b1s>0J}4Z5%vWnaoPPFPVdLHy z_Or0Uvb)U8v$W!gpnE8P^Wdu||1}42JaFK*iGmqlqX&Z3-#@pAaCgylydy4eFY=a) z43?2^l40K|9Qyg9|77Z|%P0A&jI@#M6X&!@DH93qWxTgSHY=mjeO-l*1|R>2`0E0~ zCT)jB!Br=gQsxFg_u%m(PYM zs{1K=lRsGAUThx}7`*v}-cq6FD8uMsU*tcoqDuiaI?kwek*s4azCUJ+L%>GyLR%un zlmjn+Dt@|D!+z4MxXh1QA_!f-e6KF@m6~0wVCtV$aZ2N<;|P5f2D4}vqFCk`WTyW# zBk>12EPG!7tQA7&Og<(^DF|pM$vTWhm?lg^Fr(2wDx#Y;VZo-cdF8_GQLxMPF~3HW z=rmwE&>@$gC>dqmFisMTK(SV$8`bn8){rV&06{!Z_Zxpqh_5hTjCSzYocD*3G7aZQ+(t8j%e+}6+e>__p8_{ILLLj7$e8fyx8ZK>q7QVGZBAW zP@UjEBS;ilN|P{!J03)?$wyuL>~8CbDSP5ZvG@HMD_7FQlO*Ecr!6V%=h%Mea3S4U zq~YYiW5hjqDI+}Cp+omXH_+;s8aN;|wgIXAtQ&+q^2qJf(s}VK5E^K7cOfitQ0|Mj{KgHa~n z&{DSlOQ`_42o=x91WEH`{WPGHdM?(S$J?0a=Z1!AbCmw^sc6?^LQS7NTT*Tr?exPw zKhW1YQ;q~s)K-@~M-GZH@yXwIlV$)uFCF=`z0H6ga__8wRY`!&LvFlxu;e>w4ME6{ zwTht)Fs?TC11nZvMsnxCHd{MR1{gtGgX!ZhuWkw~d`F&*RyMXbTZ$(%z%hR_Zc?9; z4XOe>LH=4)t;wte+pgrY#_E!?s2Q%PS6`9f`1CqAvl+5`_iQ&hynls@>isx-@HL>+;zv06j>593k6^uaNDAwbZ-Ei1c?78{mL?bd|$dI zDCFWdC+Lnm#l^Q2<2F;9trEkYVBaisNxr8J(*2Yy@TOn_tup z@~-0{)(H|}4|QQe8vqyu)aWi9tpHPGgQNjmue`z2nic%PzAwwDKZ{GtfT-oT0xPPl zengt&=DEVrBVcE>e`p>!=4i1UY^z6i7VX3rP?_{24Cd?(Dtf&f$HfR2wM^3qgwZ#_DVrMjcQH^>$q;I+eQGD_rW)pgSAPJc*w1ytP{3zIK@btX5jg;?K$L(sYHC@Cb+3Qf z$@q4z$Y#Q*g7;i_Q}9XVT4F}cg>G*p>?e!1&j4FZC}!|ZTTq?WPZ)wJ?XpkJV)oJ5 zN8m3pFxI%DbVMIK8k{>J`#(oB6?Aorl>Qq>^s*6<1WbLrDONV@_S320*OH3=flfeF z_mhd6q!g27wZdp^wu(-7Rq*+l{mT2`D$nAuOOFNeBZX?xbL0d>9SCAKg3GqIwPr$m zMKSK->UuuFJ2_p#PxsyO4!C1O6f~<9dKduy2&e%EdX6T2Oma{_gQk9QyHGkB_4=eZ zqB*cwq(#r4-fr_T-PwrF;Cti4`>9pmF;SZ+9dQeGjdb$6{8%}H=6>t8Rb7`62pnof(*KCr*u<1 ztXkdf7sB^ft0E+9HtX1kga^s)L*$}>{pKh4-xxprgzIS*djKj?uYydbNxa{4j}67t z|L8(Y16~+cUm8H`0*A_-14)kFtoSgE{u}Df)~mH9`T$%$rBS`*NJZTZqeG3Dt+@Yo zQ-Q0>PM3uq6dp>>wmI5t?cT4IWif zoH$O0&MN=rHt3K%GRWj)i^`O>JCV0xdci=* zPvF5t9bd;;=4vT`_ua(`Dq4j-MrSYUd18U1f*uSm8IN%@Pw1>Q&y+RP_I6!p80b4h zpumU%E+fbR?G0utD}~$MzM0&zku8-iNlj?aO)yE@KhoJ+Wiv#G)N$Zn?#r^qPEyyn;Vv&B#9~;)PWBGh9x69w&pu+l)z+ zrAltA(LK`9_MG*bktem+gA>%{%ty@D$ZKgEP@#GYF^>udFY4c)I!*o1>vqt$`CPL2 zS&vb0YIsK)d*gfaqIl;OGZtY)>b`2(lbh;CD8o7Zf8j5di~&m*ws&|iL(xPa4Rn*O zU$0PAvvG>Ke|bfb_QAhGHt2Mp&-u*%(p=CInjrh1cxVvDNyR1gq*L~DP{kxy*Z8KC=b8M_oObYIPSq{$1BZn#c==H5oz_; z%2I6($0U}gCpn^?5f^2ou?n@|lio*n{7rd`D7N^09oAD=-_mt)bdu}Dm2->T(N7Gs zM>K9n8n3I_HS?AcJFUsqx3@mh@=4A>@2=~pAw)tG_#Q{);F2}`^I0zM&SY4*oaf?y zS2nUZO|YeL>6(^IwAy{xxg4J>xJTArSkZkUD;{C({+&rn*njDu+n0k}X=cZAHQdd+ z?l;tk9@2U=s1e|i;VIbX6)?peF(L(g8KP(*$|ssG5e*Zydp);wkYyZMO4>wcHWR7> z!#l2ZT7J@z+i;=qWSMmVpFO#Jb)d<>a8uQ#a{ls!;?canvhs|YvgR(wXIH&GJ-GUMPq9$`*LSQW#H5p_3K=}UCoB~l$sbVHI3+9@W#B^O#>C7xO@ z~TmeTADg96N*vw zu(W7-Z_(*{1m?aQ9P(3R$DL?a=!~NHs94TYaa{KdzHsU~&MMeyj-$HdG6Us9&fs?0 z00rk}al7dB*|nQiWmlY@IYyeQu#Ky!I<+4a1!ZhH0v3e-eWq=xyQMeYiM-Yq9e=7` zthZmZFO2w?$+nEXQ70(trBfVvCTrs~5L7BZ)m)dk&=OUs(R86bLni7%y+kh+A3{&@^L1ipPZXTlrXW2ppxs`J3vUW%JSFy| z`)0=#TBHzFtxKESG$o{CWA*%uRWyN8V=k$2S#ks3z+o@_cU?qczak8UD#IuZX*cD!zFg{iOtB^B=QWg}Jp zNIi7a01=T>V0`skea8*pQp1Cr{tAjIdFyYioJh!Y&GfjBy0un;O(9eE*XL@N^7=6P zMj+scYm{_w_3>aMUs)5wAyNeDOfLR24Y@v6I3PS9^|8}_Ug`FWJwkt_kGgWNvgWyV zdr>oqP7NCyp}n>L#nhE+uVf4Q=4|H=RNe4{?$2N#(}Wxzv7PVdK|y(*5A|aR?h5CV zT^wH9={^fz2<>Z3w<$9f>_nL6E)S$B7?30yU$gt+E)9ZB#zy>xv% z))MBl@_5f(wZb$96;Q|y3Dk7HsIAgl=^E}{_~uRR*BqYifb&CisSf4@pIQtfC`%Fd zRpil70JL#SyH&Jzd9Er@i8}?&VuSbu5kYdX0s25@g<#*FDP>>qrY9x_&8L znzXw%Oca7?UwYTNBrc;@BemSp?kbe#@Ut}%v@+N(Fv%?L$JjN7#H7aeFI$=s(fO;* zgfOEjtIHn`@>MOztv@TQj7gSPWc@n>;pF9mPD^JV{oX43^|f9`)CX{JF)J6LZf-%}NB38!!)y{VPPNyvrlQ_ZKhU<7 z`D@H}v%j|wD&O&<>%2lWZS(b68o~7P%@caS##x&b9F1u`z6Tu{5Vy-&A4R!T*4MA> za5;_O8AYmg0=-hc+$ZW@ssu*BDkJC4)WLQ&>o+i8t5h-h@;MvMT_bGj?YOH08^Ns# zIYj>uvvIbl!(AcE>-!M;&QON#YpSX4c#ENfzzrX>w2m9WieATLVdofpde${Iq=}gc zg@jffPRb?!@9@>Z?6>i)-Ud|OjMkKyx!=>|pjJ!8LzRr^Vv^@Z-VRo?P#1ne`u2UTVrZfWG%Csq>A zo>2}{u=mScdsf@K`0t$kD#iD%GN3m13m#AR&L=41h0>myO2A(7d!)}+5M^VI|K5_k z_9i*4y&&DZJ-ZmZ9S?75?PdF)VD8;4iL2-ap(m53h4#iQrB9{6TApG}8EWgcV?*q@ zl*x;!&N8YYGp&I}kVP}}lQ$j#A=K?TmC(9ocJgG4y46eB`dlaQUn$`u6PKZpndgq6 zPf0hV>`uvyowOWKVPD)te7c*$;lF(H*1H2-?rtRS(ND@8O5EbDqSctWajCCc>Bq z%I+B-`3z8|e8@HRC5Flk21H4P%IoDP(e%o>Tli}makmFH?98L*AVF+9E9=Jh#Kfn2 zb`tC-El?2U??jT3(7LggfBVcXPA-AxP*Q86+v`!nc5skkBfvS^q)v3@$+R(M{>88G zGi80DXY|~e)U?&_3Pz~wr?g| zrv}~cbhj2(G(h+(QHy%Of|!N|SZJ^Rh)`w=TJ>idP1(rvY4`2CuA<9Y`Vkg!f7A~Dq(Iw; zHV3TaW=azFrXkdSPxvx(0qN2Af8Ls+T@>uDgf5)>b=7#k@ZL3>?nYvf z=;R{{(}c>X9s-jD#->Z0z4t4ipZBi#OcWbnWp_T{&t7$I0f_MIW|w7~g8GU(}6fTf|-Y|yHvu{2NhG9*RH?TTbB zt>qtQr1nx^G5e4r=Q@?luJmv|p#8xk&NR6`qPLNhV6>nTu{S{>*WP4HyA}QUIZXm~4z( z+gCp4IEhJ)o_+_xKjv(YG0)jgl)UfU!S)up73VhWNS>XF6@F3Eos>BmU6}>{riol( zDy6~X7PSz6;!{!&P@kvPZjSH#R{e?Ym#cn}mF>mOO_JVhA zM6DJ-4U~bky;hv^KfG2Q1scu4Y8-OU%H;&3K(jNc#f)U~lhg)mt{ol}(Tt?-gO^28 z+F+Sfo$zxzfPyJQR=le|C*Yq1Kf^ASnhlp@6p%t^!5&nCrHxQBMLjiD7Ff#*l+D;e zlaGr_m1?qu8Hk${DV}!{1<|4+b74{}P&H8LB`jq}zEJwR`;B$n!*A4RXjC(|#Dd%r zRFK4j>^zqNGPZaN)1yFxX{o?L=pP+Ka71}AHk{7j`fCB5?dQ6F$PH%480<0mgv^C} zG#1w4G}HBOv+1QGfV48PvMe%=$$BLuCn9)OPC(B_%?m;Sd~QI5rW3Yt<-2iQqV`gR;mPu@MAX)TMTxD$YQM@2*tpUMxT3p`Al3+JB`07)k(s(Bc1POF=^ay~6Q{xRpXiFFO zMmpY(_9^Drbb~d5V0u{Z0#=ZqKo`(vAKvKewLXS$v!^7v8NLnh-4zh5?8-Hg;=Ret zXoFjO_A7uj`3ESe(=FxGbLEJMa!+P?h;CioKE!UH8@vssZlvYP!YQ2V=6Yg08<#H~ zLz*oTQ9j9BG(+!9dNrjgo1(M|un#r%s-pq^$|<2l^uTq%3T9>1XtnzmL0|)8$_n=} zQK}`8n45l*ga%WV;6L?169&*^KTjSHQpA$&GEJ@PL=8bVW#e%v!Dr4c10ftBGpTZ~ z7cGnm1LfNoTRtz2`{K;UkmOijahUqK!%@b*U4oLQ4KxWzHjVskxUVqfjWR~>gN zAYw?V;4`<$yQb0^py95H$q&Ejgm{B3i3xl=4=0W#Ae2hIj)rLFM2Nqs(@M)opXk7q zCzd!5p{KLblZifUO}Dt6Ov&T_A54Imq@2lUN~BI_NX7a^E67g{Ki>vLC1J*fR*(&j18FcxHaCSCqU^{FZ%-<^JFvmRppUEe8cZe$`- ztr6L$7dP!o;MYS~zt<3d8UPvqdp>V-|8gc_A-cCait3D%G=*rVhpKf(6yi_&9wc6t zR*^8OG7TPTwiMTos4NXS8oFH1IyVHyP$hpoKV#)8I|Vymz-dzZnzhiFH~)p_Ua`v^ zX=NeP_Ia|aPjP&~hUUv<4|tu33k^8~FTXfjlU z6`S3yo#MQlTrsE+nMHj24!vrYfd<--Hs6U!ifHgje5!`ly~>i9sD2L8c;zH(njreh ziQFgX`nthXNLi-6+aHLBOzDt#0pkC<8!CjTxqr#~qTs6FBje~m7qA?1+ob`ye&`v1`O#(V{DLb+t zc+}*Rlt#DRqmhwAlob}R53k=2zA~MJI%~s{AV60*5@K-1;I>O#tMaRWjMrm2_C^3d ztFue3I(QUTR7u8g%lfjMFRB#MeJlE|a};V6_Tq5^IfVCP4FI%`#Bqfb?sWt$fTyea zW@ly_TKhnWNM~BUcBxAA2j31o^+8|zd)IT^X^=D#be!6$l32E>uQKZhcE^$$?=EBz0U)Ta*k79) zuFqiZJ-xqVW{&xNdG(pO>vNa$$G>OK&Lz%fiI*E)M$UbJIn$7~oE#NpxW6~#oo0Qx z|51OZl?_2qHKOajmf*P;(#0>na+7PcP6Pl*u~p00q{1^5Uq{udf#BlN3akDkg^2%8G{)k*%_kz+-h=+H*+78SCXtueQh`6Uf15od*Mc`JWYw z{}p7$ifZ?ayiRhM0IXS#vWr+1z2^`oqIqbKIeUME-p2Aw97xo}<&O+H=erh(?H<8A z8OcHW+#cSuVeiUi7t4KGW|go|KQ`#GXn(s3T$%L9&J!7Zi^r|gE-NBaNXA<`?g72y z$wArEoQ=>5fS{f8*vC%vmJ{-G4%#yTmNw|u%5gmjUeHZEH;|wC{A=DlT>ATW4rYEt z`iK6V^)?6<0!0Df${=|f;O55t?q##Psi;85VT@GJ11fGEIvlVA5UeD{Y_@btgnP2V zvo1M*{w!zb&zcsb6*D?7?7!qc%iw=}HL+H@dl(Y*E#r@7Btg-&7%2!<1D&X|Zg|cZ z1Qd(iKop+K`=1y93|NyO0Xi!QS*x(85?9)}*enH=CKvS8IsZ&lVrAaZEBE4_-$SMu z|B5O8sDnIqxMIqSWg`NnU1?GutV#?;>_YzuRTF-vCi{!_YWWnezR4TBR^n$+VGUL< zg3D=xf0fZ1>^)m31-ZFb*Z!jSseS*6t{CcmEej)T%7@l0t!cIAl@dj;^muvSOBXqe z-9t?$&s_c}=lZ|{WhEPVr4q3#BUWHsWy{L$V!$vL+)I6y?wc{DQvSPJO~&E}rHAtb zAo;nYKo;N79lrBCk3bEV&|Z&S?R*VsW9K<04PKFryD}2b(KcfymRr|e2c1Leu|LxH zLAjeBe|th7s&0V(ayyU8L(%Ve5zjp)w2>_*O!|3t&XucqSIf!w|ErW| zE*8HRxcZ^{n;VR-f4X8LQLakrO72#r*?Pyf4_lfadEGvye$1}hf2~F5I@tj|y8U@x zA$4^Fa{_&Lplm}0h3L!gp)<+|`eWtXRR?AA_m2O>~x&VNF zQfvH_=T>eOa2|cf8`h=(#n%91lD=L!2X9y3!F2#G-@nh6l+*d8Qy}y7wA&Rr4Itm~ zz5U~T+W=zaF^#>zQB4DO&Pd}uB=prm)3h0&t;GnrNlFPnnP`0Uvv?n*4uAzYs5&^S z)14jYDk1#zA|{=O#al$-W>v97Nuu<#Fl#!RX;CCd#}?rPkW5}oQD+%OpqI|q%9J?) zp^F3QNF{NkWf7XMsJ#wL7#!&2gN*3YAwY?Nu`YTUZtON4*MbvQp1C#7lw*o*)4BMN zI6l5LfdTQgft?YPC+(56@3WFzmv-9!bd~3wBY~bt#x~P7($!MG<4C^*FM8Yy93Zz2 zm07K$e3T@A6lasx2)4pe!Fr4dFcGLFC39GEj4I_}rW;r}NHGMEIIBZlpB;%ow0UQE zWogbB6R)rNr)Ewl3w@@xR9ScHUsyWaJp2OZXrs+b<{vtP+>x7-V&*LFq!9^<{ z5vdRokIQv+kK>SsPa51wQL?$8v9>TCx3ipo^1$f)7qaq`O$Hbk^iBFB-hAi9 zZa)Nv!g}K=fB@;g+1Ud|8k&9gGw+#JK6*8jf%q(BgVq(bw*WdfMoGJ-EZ)`(yZEwN z1O4z{H5FdhW`R8I7G?R4Ck)9yTuF=XRXaBYKNI-Lr|(UAh=43cZ*72GtWXwAl!hfh za1=(s@3J(NQ6$c(&cR7L)p?ydKH$4a@O3RQQ`)G<6s5zMw1*<2c&bVP>o9Q|SB|>q zgJTzyAliqgu*=lm-Fu(8oO=q=Q+~AWB@x2_!RXia$GEWR)6M{-$-5H)m`N>;3I>}6 zRGgVRXh>qobfUTEcSa{qAV$+9uDsYJ%3WguGA0Oy2IJ$POTKs^u<~D@8)oAc&glsD~yIwv3jXz-q((Vy(Ks`}GvcsnUX(6rk0J)uXhY zOpJ95tW}8TTpzRgkxDv_;Ax;Flg>b+daB?c_m^%>mkGf4^A>1jRti#6e8a&x?^V`Y zS<^jklVg6p6#`u=4m>hx7&35qh^U_(pEnhSjaBgar4VYA(<&}_TYqdG897$^V0fmqqSP`>eVYiN;;AXv+0mc zdtNaS%gl_LM++(gkBNAg0bY+GSEG3gLUUIY)97@R5$}x6pBqYK;hs3vM+1Y(svqL^ z)l;E^^C_P59y@J*r9bovtFB6I=X!2K6muF?HuBa)=+{XmTmKL# zOw0?e1T_5Glm!3JYHu<$2Nr(eoLO#B63syh=^7w$D{7{bR9f)`+AKNpm_pfz#7Y~a zUdk&*8Q24mf%y-BJPbw{mpaM^S#Ke`SkvLfQhvUd0U1u2OggAxMbFj(joGC)@FlF` z!zR@`^0StTdyLyvW|C*57k+M3Xj=qxBPu>w@_9=$AiQVk(B%`zo&!~}a1h*zV$`r@ zVGgI*T*gF>QB{PCUu!U}YF^5tig|LuUt$IDV4tzd%bXI0| zK|=M@r0u9ZB1s_ygI-`j3OsjY)<75^N^vNrJ3c#>r9owS0c(nac#e8RUgIlFe zp`H(7Lm#S+Y-FCKQc@EvY5;N|K2`sK&Zbi{Dm(I_si^@dvJlb2aC}NYQAGQ!CIyJ0 zTqL&RR+A(?p4WkSpk6_=AulfI!}ebP6rNsnh;b?`NW1FRqYZK~VT43Gok8I0?^(2c zV4uDXk&efrJpjTLhyn%W02A@LstzCz3;=a~(*C7vT4dz?iV`8hAn<5li!cQjvXil~ zKUu}B{OWCo{I&UvJ1MV-&=FOw*Zp>O8EKt?-Sj07l}Igk+9glm5Hr%86Xm z_f>l_B)L*u#H^T*^a0BqZg4-R9`HBj$-ReA;qjrNT(7jXEiN0~sFVLsc1ykd(o!ru z@N;JANFO8r-GH*EuZXWv9<2=jb?l9Xh)PSM9d}KKn@FY#)%k#*4?SvHVr)S&O3Q>`RYlz9iJWB&F#3r{|H0+go!?;1^KE<=x0%B&iSNZzA%z}_MU zu~|4nyHNU#pL=yMan1`u;A+^xH`dnkU#_^jHYz9l;bmXC_kjLOm1Fag823Aa@y#pE znIYkGLZPw(`Pf@^=3>!Mo3QPL)5>r(yZgZ)h)5`wuwEQw0&Z5wSo~7AAXt$ntlx)U2_@g?ar)%5@w=>6dM)428OkL)DK!dAn@A*YK`4OzU30(}XiRHX)L z8PPF0~z_TA;Ip1HpBzJVo70F}4?aa+8Ko1x6$K&5z z$)9YYUa_nYV+6=ye{fmX0I}Wv@it$=mmAd(vP;Ek7=MCr*G>=L zd8QR#-u+*xSt&h8emCk0>(3ri>Ay|DGZrdqY}Lwa_XU!OQ@SZf_BkDC)AP05?EMEr z3vjqF{<)2r*v5UXo1HL^tgLUDyz~9frv9hwjcLK%$uHJD6lZ+7TYT}U@%$xr>&R`F zb+KTe&hnJMwHZT^8<@83#NtkBWW#yt%mpQG&uNm*T^b*BNl zqEx4Ra5gLWKy^#zC~dR?1*pN+Wm)>35k2r$#_IN~d-WMsd05ZBHUP_89Bh%>1o z(W`dc^m^^YJJI(hiRC_`LXC1f(qfH3-rQb5Z5)QS*Us^K)q-z;gt4UW;gI`b_lkMCp zSyH@41_>-Xnnz!a^QD3;}joX(Q{Ba59hCpSfjre;{R z+QBcm@h$>zQP3m5>PW)hMhlYGrDaE>y=YC!io0S;$vP!l#1yygfbC>UnR_d)O(RDl zRK}c$7so3tF%{fGR_HGJINM`U=xmSZS(%8d{fQts=G9jaIJ6?1{T*?TLZ4VGxW(}j zg`#ixNbl^6h;^XPepblLINz~DRU40dB*5Dfb2&i`AVCu|S6AU7CCo(|wRag$7xUcu z%x%9R?YV_11gfa?sqo1DGv!UsmD0N|i#in`zSeyu(ausFB|sk~0_^~OQYz_(MJK-4 zUP(+MlZ{3)sx@0uEjMUW9cj0g@KIDC25-C1ave1~c_At+z(hyhT}NgEa9|HF5-hAC z+Iq_z@q#cSPDX}Pn*sr!&&^FHsH&af`0yk9MT~K9QG_x+hId=g?gBymK1n0Dihp0& zKy5CPTzj>eB!vW#FQVZJG?N1q@YYO2ZHYb8-%hd%T(>C(=3Ia0SH&HV)cPzuUTmy% zkYEBs@*HH(C5Dby9lsvv20I?n5?ci|-Z^i$i%{Y7O^=vb_^9YL!4kEkdW5Lpaknrt z2AZZqwsk4inExh2OLJoc#ueLuI;;RiLf&J`f@z$L(=r@BQF;I+KzW=6zV zdgWugD{s(e{3G+y_2ePsuQcK$%y&84LCwg-JPK6KNkm0!fhWi~y(H7JT zN!l7V?zdB>047XSXDc-d$`kYc#G@Khz3$To4nqG;QX0)Ep1St2b}}gz{~+t(^$Zc= zgPZ)JuFMVqm|5D|BQt5v#B51Ho?$<2h)GVOS}6MAC3^jP7014MRFS8%kx!cU zT^#>jK>Mx9_+CGwF^25d4XVwO^~DTttqI;w<#xKJjuyb~1va9->H>>$&eJ{Z-wZ5o z2c(DM1ta4RhUDqMq9p0SGH-BjN`SL(QLGf*{Hg;E+`(1fC7z=BOQ?j?iN3Ik3$*ux zixKS9^H&eJMMxJL()yl*_})-tK&ctx3w)~TXKt^U`{&3~jODAMj?%urBV>KD__lxk zc?lLA0i21}gyP_|nS>?*aY3UdCnLff8GcDl;?g@!ZE5UsZOO|_eY}$H$03BrVbAcl zERQGQJ)DznaKln{9uB~?-Y*s;W*`@PXP&}d{(@?-6B}bFcGdF(ffYl=x(W(;)hNI6 zN&cB6CBC=(|E){6KZ!W5>0NF?=f~j668yfxCE8=G<~F6k5zM=egTwH8a)Q*3Zkh=m z2&6R=IsiBzQJe+A}mWQMUY{$>t-IdOiu$l*9>L_RckV%RL4%f%eZ;+R$L{MtQ z>SvgccYW1!ys%};m&`Z-kXI|!__thtE-;p&k9e=t=}H9MmH|nw{PTK<*JIDhAe)aB zAYLYWrQs_4^fBeB*xl?|DBc~ z=g7*wHVOS+-c^K9bB&U^3pbqR{=va3zht1trFT&3tI=Y+5y~%?$M!ek$oa?>K

Z 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 z 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

;wi(u)y6>s!Z&r=*3D}onxa3}dyoJ1+QVDz( zOyfzG^dM+t_BnO@sV(6ZNd8A+fvrODu38I0HbjVAT}y|V0@b>v)$<3-#(HqXJF=Hl z(8&XhYN-~t09Y)#sY{==m=`yUfSSYer&5$m*yxgccseice#gG&yxKp+!UYgAv_OmL zLH?>ZbCI2V3~_dwVqEHPSzEhL%EREyGEBH!L1{p+=_lliDAb;hDCSXY6_FV^M%fT` zlP`NO6$o#6mRDWV+sO4~hymHFREco{UU>^c;vb;Dr<$k8{>XAf&A}YGpHVtRhu!Wt7lOtD3AoxAl4R>a0dBn@-9&(l5KwMda1?*C zvu>Z`KvCRIUfnFgb!+L^@8(=plIwwh*cLn%5aU4;n@@jlptlvq9$wu$j}sxsiVZj8 zOLsLHMKMXk@;}A#`juv|5(*QztdBbqEtT?yi z)pX_Ru2KeXq(5G1_%XWS_VIHyVmtMsMnH91Cg{Y2u0*2u61tGoNVCel1y{O^74&Je} z;}MnJ`At<6Td($7ce0xy@#s7!HX%srU{!qDzm>y}AnM!(+_(7(L9(7Y35X52*eZ>T z{S|`j3r{HYD(1R0eJzoZbZQ~(?(!((2BLS7ff^>D#DN)*y$sj`g4D}xgD0|oHUI85 z&D~I~pygNeKsH+_ck1O3JCdeUxCI&RMMWfWCPHWk4R!}!4ZI#krKD9DBY*eESS+SX0u@^61?()0DI$HNp_j z`ykZDkEO609w*y-1#2Kzz(-`w`4*B(63B21HdK)g`O@B)2g$ZF3j2~1cJ7*)EvMN6 zjsMnhT=|9GDPQFuG6NwnG?IJ=%|8rhf`UBAk|I#{qA>2bJX!Uv6_3 zQ80Vj`U#_dqI4KvyaTQ%siZ4R6Oj0`6AgJzz`h`2Ux4?bH@{O)+W;2rkbB|~(OK{4 zLq|=NE^)XGzRRr-`vOTPO(*6;vrb+{nrs6Q`gNI)10(GQziY%alp0Ie$U|(ThHC@t zvtZj#WIP#BBbRD=$ISq%6)Zh&jfFt48kR!0zmK`c80<=yIP*dgBc~%N_X#%WY|KL6 z_u)MA3%IWyB3;>Qqjtk4jOu^sb%0zCG%kFXQ-ruxR^VohTw?;LN9zzhJ}lqhHtgTR zm9qzJO}T_9ICeOoWdV;lEX-;o$lE13DbSW`U^Kj&eg#o?r40 zBkpwmDEV`L){_!5chKehdk#zKKVn(s8(FXYGUx6*nZ5(;^l@Z00pi`R-cQTam+&S0 z=LJ~aG4|63%#WX2FkckN&zO*NAMKiN1L=KI;>lL5UW5;S30Sql)~kHQdCz~M*S?pI zPtM`}X_Htv117XT%6gkiRV)4Nm#qh!eF?HdRI<(AKK;n6l%TbibI|yrO@10PaCmKVgu0>x=$u0fLFHka^_qV8*UYlRLGnXVQ zD?U{IijY-yqa4;+^ZM0o(C^x-h$NT$DVIcQt-s6Yrn5sd4x=U?>iZNg#JQ^+NK~?- zbf?eW3?(5JJnx-cRXFTR=gJ6vnDAyT0tI2^g)2xMrZMrnZVc%=pv2EnM1(##zX(Ny zV&5^ipa>Om_8%a}2JT15lSBnQ*s^Mc`2QweoeFL_c>q-6xSZT8yzf&6QM>7k#g{U= zsnCAdbl!!@`t2pf=)HYrH;>9+t%*e~bpOmLW*-4iM;TdJVp;pM_wLp4Te25v zZDv}96!Z!AY4SN>Z|^56U}GbwnI&*ufFU3c*JJ4QG2mCT;4lUPdid~(*b|K7*#{Ug zKGS$V`c6=AJo+!y!OXl+;={ z44zh|a+hiNkku@muOird6{NT^G&j&M{4YPUw*-uj+%=eXZ8UoM^6!>GHBM30$R>&! zfqu9RQH}UY|MgkfrHgtstcSL#5Sq33(B2c|fw8LnC1Qo9q5aeOhI^I&@trC^JeA+; z*Ym;Y;hQ3<6LS-!+cm}1)55#})^YBNTMoc5kLzHq+T)7BZ{Pl?Dpy-%ecw^!qUgpp za2aQ<>@8KgO*>=Pg~5Ec1F`iSycBU*B=ek|o^O3IkVrk7EYC6<)LkMZ-y zF9plyo2EWHxxDuWV;U>E>F_|_BztF;nz(+dQ4juSZc*O1DT*g#TEDn|PjK)`7Si5! zZpJ9IF4A@M7V9&O(y z9EiKJ3O$`;gJOx~OYFj6s*QtN5*8?f0Ymr z6GApZvUz!KyA$tjBJo~-GIE98nB=!IU4*N?870`%C3R*0zDGX7`$-7ZTUB^xKr}T6 zZR5FY;C*@Xgk!ak1Xh$Of1I{Cg}$SxDP;JRrrQ!>9-106aGugca9bR_9dI3w*6rtOZ>bw#Y|Mx|8ZGp z*1hm>CW$KVi8`R}a26wO&HZF$IOD zgIUL(Z>VHqPcUJkDC&KO*f*60ek-U(&8GFm7V*~U*LYmHz!;*R2^#a5T7GZ^5Y_-r zzs_N4*eMG3qYk|Ogs{%A-J9+MRZHdM9e`wE7OBRE>T(1HXn7$uYN89`5q@rgA@>S- z{Te!#{rD_qC@MV1(Bi$=*;GM&L@4Z2y=x#q%oA8z%o_YVdXhnhpr0>76;j77w%7~y zAQQW#HDU5s2C^dBrwb7cV-jRo=+V|oQ+o3*+uzSWReGafW~`opOF8xy4?V8kIWC1-2U_H`{w%2ruH_Rdpv zL-UMNAE1z1;v5*6Q=m8qiFAzEZcy&}X>d5iAok($CBd`isH)^jENx=WP|zk{AP7-% zLmG+h;AI-$xpE;ZdX=!G0!z;&quj`&+Vl()ut)G{Hs3>GuAKYxYLs1!0*$~0YbrGh!q%lm`nzRY>c4Rjk%QB)ZCn7wOj!dbg zKQ6I2U%a)EYyIcuDc%RgM zr+`n<>boq{xLy^6YyJmYJG(P`2sag_nCPyZLXLZ_){vetexWIo1S1G)QClhoD}svt zd}_Gf*Sx@k=oapRH!dly%2yfXLlS`tcr|Ny04c|~;>WBf_CLbApLseAfs#+hLHuWO zjyWn5`&%(D`b|(9RAz>AOrqkHUDov9Beyy7$9<>n_Fq*#nR*QOF=oVy2L!_ir=+^N z*LYsLQnx;(u>3X);>}M->Dz+4!^whb%96RKXh_xkQM45|0}{kTYj7c*E@a5rza%)} z3GCt+Yde=jxH3d}iTTzoc`sD&={%o@@wN4;P`}ZB$XPu+YzSBS7x4xXESyj$=HVt? zm3C$gaQL0h)85U4!dmw^HvPC(ZmtS@uvB4i?b`)$rzDqf*aD|UC6lcbRH1a{$hrM~ zSZHDBi&{{>KN1&@8=0~O7wXb=q~O_2nRNni8y5xmCV zmKow2)J5}CKW0_bj@Ab6+&99Y>``%R5i;;#Zx;c0`WX@@c>QeJkCa<+B1pd%7sa1# zA6|1t?o&Py#rJc5Z`Ur!v;(FI2)(e#t$L-meBIxsl*`(#c)4) zzhD`K-5qo%@d1WXbMy|bwC9K41gu6>5Cur6d6%pQeJ_eBygw5-u@EPocl=%l?!LIV z@|-a1waOmsF^=9bMLt4s53+lmlJY?42@wP&!(EqkMOmKYxN%#6Km!%{ z$POvEiWJyvi1Z>zqtxv?4#l^S`j3@#!&9^6F-K||rjInaK_cuEcG>IZKEk-s3w zCJ%TZzc`Bk4P@(`*+L@8pzAbNmjFHd1@xxEcN+5|e}bM^VqO-g%PkD-%6aqXm0c*vs~U2e5=d9mO!JevazW{NBx)TMt$N>Gyx z+p8D^=z(c0o(uKmgRiEs-)ut;w)-6JxBpK%>V3VBB@HCk8}D?-#%7(0hvtT=9ob?_ z+s{Zh_MS>j)&DC_fKb#gF2)WA*z~&L2CB85P}0yW|r^I zEZ-u)LH>50+_KjbTi3lXS=|6jGdA$c6tP7`(%Eo22kMT6N0H$QESLoenZSX*d0Tkw zA%yP*oTej;W2FyMPx_PE{rO05XOyoqD%c;+AXPJfrXLl@f1MLQ;DicVf|2`hYMkr{ zl_*Yg&XP~=*Z%B%j&85)P@l68Q0d^|YV7LJ*>s<(1gWy+m1O65%eBq;EII_rJmOAA zMzWA`d}M>ixr%i7&fq{9D;`j8Aetk$)C<9pKqV$?_Y%avBhr-%i}8d~rkg6)_qcxb z`{fA^zEghfX$4_*O#1nReg~m|fIR?~EhBts2n#YY2@BVtA{#RyY9yp0c^e)=hnv$Y z?Z#>dY{*0ed~g_HiOXC6anw0`a^jvVn6CV{e)STJ0<{fop zsZ(&yXRSj!4edsyLf)F8R;5jv=Fa{b)`mBnL>=lmootfz6iCd;8>yzC%=9jVTF5B$vM8 zf*I0m;eB1d;C0KNbDx1GhiO&NZ$~0}uE=DZ9{PzqEr8VE>B-xlzY%)A=n+=ot+GF> z&z}p^CbxSx6tBkCeKv4N!U5q-genS|NB}(pkqX>GaV|WP3?K8)H5opy!!5yc5#z1k z{&d9pRJJ~U#K-)`;`@OJjiwE97@uVv95cuu*L+$6`3=~JZ$Oma*~3d`-g+lR<%qm& z_em@eSq6ua)C@!{6tjkhv)HF;H~NZ1Vy6K~+ID6luPUmiB8q*Q!YyAC5XP%;8E+7uC9X@cVefjAC?RUFB(6lm(ef~^$`S(P?QeWJ0+95k|jhd|C z&;LbN&~zu)Hc9!@y~cja9ECt5s;Iw)u@ zpG`acvs_+|Bq?t0{#}0rA2%wv2}Dv6u7o6F02EJZUmqDz5|mYBA4_5(_xmHwx$wh_ za5upB8)mO@Oyxv=pd7RKk`&-ZLJY>VTDgG7sh~Dc9)(8-5l4B5L_V?-gCuZ)J=RXdC~TW%)wQ1c{yq?mBz0LRgh>qn~9z_<3VxcJ_wW!{tEuS`Xn9aM@K2`o>_#y)&c_m>B*kdG!P; zLcaalJNMC#nqeWgLu(_= zXUtxx)KDdj>SHEDFwkT%c$FiiN1*OM&LK%nVBf(-oC7VK?| z8~NqsH+HC3rY}x?Tl~{5UK|jq5e|qiiBwiXZcSy~=!^_)nI<30G2%2WbLZ{;j8cLo zQcE6J%8uFo0sYB<>ds6F3ytPPNs@tx4>jLnLC@1qz9zygsb^N$+7(S#bU4>%%q%Qv za1oj@N?F*SvmAn6=FKi+t!lRE;2Rtu%mjnD$!p`%YP2Z-+M9m@p1lpcn)EC3*n%|j+W15 zdLKDwI0{|PE2?yV;p(o#1y#(2#p{9c=uvNKyMNF0ncml4BLiu{WsBGDy?F%jz(Qd( zK&uD(Jq1eGc{h-OkEByv>0;O27VSgJqIdd7yc7F`5Yf!IJr@C8|S(<9Xc`Q%xM$Nzm)7hvZBoA1oI< zv)V9WfAmJk{ei_P?!GRlF93S5#gau^M0tP`3F5?2_hNz&R*2#Anh_o0pqQEm=c-JK zM4IQnA2l5AYUqG>8?*mz$S71>^uR4>N4Cg_^fvw$2kvS*iPk)OOBhA8q^M{x@)#6` zib{T-r;4Ygj+&Z?wg?_yny<~M6=A5IIh&`(usm1Un5T38LeB+aXD5*{cwrl+T6(SV zbe`NTImRsy8yLetnjtM=icwaU02e$w&}fvZGCtCO(PKhn^{n=rGaLD?jQ6f>dHVUA z#qm)`QljL=Y<>#~?{lz^bF|GVEWoHaqUu|wvrG4mhQy^=yWcLdk@U|YhuYzk#T%wA zO()gEFX-nziT*kMrmS|a*S~BaK9rMVqxg@{#CI>KO0uH7cTMEa$=gsQcG)dBRtSi$ zQewKv_sct}Z|wbd{iM}t`*z8G+xlXt)zaI@-R;p9T|Q^eNSw_4_TCK$g~)o-u%D=` zsJs7C`AnW0IQpc!sf+qLuw=@xt!hiG_5yyLhbHtw69( z!lpp04VAeVFG^9M``P|82ueJ;1>C0=su)q`Kkh2Qb8?5~R(|s%L-N~p zgtiQN5lTQYn{8w1sFQ}&imG$x2#OInFwkF->{3ylSv_rNrt_cC2Na{@d5eZ>=eDr+n4epJO)k1KJHmL;86DjBg2@0+Yq2@!z$|e*oy?r-i97uft}ubil!;eM(@}ImoVkR- zax@2N)SXE$1W#<{pi;c~k@eSq{?0oBmH#}i{Y;JX=)Moc^v)@Wia5>wX5@9a$oV}j zWWjtjGH3rwIS=^ELuK>)T06VHw7bN{N_^MrYUG`qI4+Jt1g^+Dno)n$@9C=gDNcq$Ig;&pKQsQvx^+EfCKGoZGy&RRLCA~X%OXGph-MIq9GH8`golsx# zB$x;2mNHmpC6%i?EUv#hvF>RdqCvlWiFyB2qo1`t@L2~|_XaE711Z$vBWEnwf+B!} z5S9voE-YhH=;QJjTDEX#D0R7TOlE${vymK6l@c@(P0&RI-52oU zLGUf(IiX{15$4oSm{B0?OjKQOO02Cxp#+}dKSW>$uJ^S zOF51SmE|k}75rLE>ew!CR))$UE)2IeF&K^=m1?2qtD)YZHBcF@N1dONM<7CPHD0;J z_^aeq@wyz0iUDILC`YP3cX__<*bdlqE4Y(i%Z_Rk{S00?Rw*X6$9A!T1QvyA6?1{e1QHCyPZ9)_i`GBS9MJE*<{pLus5P)s&*AdH)D z?Ls*1C=}JCC{*b5=rwb8rfQwk5YaCaZcfT^aaItBWVxHhazSi9027(e+fUy<5zgx- z!*|=uBVNQH*8VjMM>~GT|9X99_rgAai@z&k&g$3U^0D43t zO6UEwXu&-#auZREudzJe-F#wqBqSdzi5XKoRAdjsm=;$y5*1Z?}NL3_F`P*p8NfUoQNiWmgjO8^p%wl1ox5?(X>_7CyOJ8 z?tMQ$)RS|`RXI&y^*^iOT@`^WrsygGEt;Y@KJqt%V*FLu?mE|H`{yoYpU8l0sjCg8 ze?JrVei1}7gUNK`V-zmAe#P7oMmAOTfOut)yLSNWc50kbqlG{p_RoI|dH#d@bq3c5jcJcv`;9Ed(|$aE({aAQ^b71jq3wSSr_LrK|9hT!Z|`WJo*xapv>hHLJjg@~ zCE(NDE%t~3Ivk1EIeHHelNu4%!-ol_qN*p+Zxh4~l&t}{b$1GeJr(HAOWSc(Lb+r~ zI^;)oPRj>5IwTV{6BDUG0^C*ED&0^L+mAR(@)wyzYmhv@ z?KoBGV&|^$&Pzspu4CR6>tv zK37y163qbi#7v{~S(f|l>6@e8{@xauMjFSB+-5TrQvEQ9$H9|O%uRlz3AYcT=0Nwiy+UJx0q z!$p0WK*#l?1FO~N{m|`M>K5#hd>}WEE8v>|%5y5-Tmkxu0LO4)ZdmZG2eQrynM8&sk&$Wa`Y1w>tP1K1Q+*^A^f?BOvIVA@$FNwK z5-Cm*yB%cQp8Z%=zrM2AKwK`6>n)%pYQ2Dlr5rIzFu1D(3&F}Ni^=V=-eJ`Ow^HHQ z&we}e&-Lk2KkvL#rZrpn_!u+%OT56D7NevLfgQkTrdPWfUi(4XUGxW1R_d5oB5G&P zkJeMMOvF4u3ydQo%uMT4908CAgohn3RQI6zIMueH{kiZczV!~_0nD1|WTZrZRkOOz z_I#rIW3#F@fowyt%m8KrfRy->zzQ3`}%#e=-!Dfefo2`~M(dZBf3*%OM zSTuv!0}tB})!D>K#^cWWpdMAmkmGZjcm^%GRW0*P>`XLI`b?ri?6w2wpRjFpJrZ!T zwhDJ=efVO+R}%X)j3O*rhY-&)u*YJOAl(NAj2A5=c{}+y#9;!&o{NwGAkSHKeq=>M zAkvTuA$)W5a51NyxSh9q?{}nA_yJo_`D8DNuM3#@Uj{F}6}#_gUtCtN;iE-6 z&|4tL9z?}ds91b+5{X4H9>UWi2J;Dsm`Ffqjo2z#-i$2Adc>SIDz@$bw_^b>5n6Cl)}z6WDFt8lMlXL>fvAUTyJn#uaB^kfJafWoVF7`Js{6`=PH{42mz)&mC$ZX zS}}-U+^qPRtX4{>(u>D=0=CUerPuD;5<~1(&qB91-<3zA!6;J!Ck2@97eYk~N;j+j zB9}StPxqO#nE#5NSrzb9+VJGm2Prz3Rfh%=^$qFs9#bi_<# zeOkm06)6R<8-9#Qpy(%qv8H|;$qpP=p{{Acq=?hd<1XN^o5x`@Z)Y!kgB ztSx?5dj}S(UwH?rkYqM8z`Z^wUC(|N<@zd0{H2majXv$?kEVOS84m*6!`}$p;KbU9K&XPu=D$dQ%~Bmd2! zQ?GkX_M1($x#(?HkQ7`dCuA(xYKs`UnezbPx4VJB)ZqjB-zYzQ2+8J-C(ItiRbcME zLnRVvOp|N$V{Z1t1`qP>o3n<;q(x8jPGFa1<>{#5d1fIkc95xF%?Xuo5@kvN)AY;n zF_;HVv0=?wJ5+X18Fsr9>cxhCxBzb`Af^ZTN=<+Qw0glmR(LchRdhmsC&KeS;>L7u z`JaX=!R>T8S-8+BTI~=xX4|F=bJ#BH!=gYpu3(Oet!rk<#q z_3XZ0ly2pPT&#j8C%20#-zl1(`3SbrRTBVp{Q)zaJ0x5uVC%JchrH(BK7}?v27Rho z^1O24nA7#1ipdov>-9jurUZ4A+4uNRi#xqV#liEdfWgjK-idCcLPpZL#LZUDA(lxn ztscUIxiN#BQhIwwp^0RheaR}W2)w-`pbQkAHCKE}IDPZS@WMlG(z%;PUbV)Cb0q7z zVj(dVh?;SO{Nx{vHmoW{B3b6M_+)vC<1?(LkdgMsdBNMWr4sV~wDzKT!d>^fsgJh3 z!N+$py^rjkAIM{8=1{IKAL>6k3SC(x@Dk+^(o&o)Fh-(`kjmSKiq~M z)6#5_l?$QGabR&F~)c;M~u{^%=Mz+8lkZuG@Tm_{80Vjw$gkL2HkKHRd!FZS2i4=dy+K9lTNsWz5~(p2MF6LlVWSo z+d)fXlxAYy{3?E~x~>kU_i)+~sj1B{chH-Eg-xM2>xb z=+g_Mh0)oXxTV~&z!HSYhnd;_SH@pO^IBY>HoQHdxBxNwe{TXVXuqwO6QxkmalPWW z&+AkrXqANg4J}$7^YtyjoK(a!aWx3?#VcE#za(ILKjG~K+V-=wU5Qvlt6ou~8vCnN z;h@>SGeuE>;h{-#0O-b9t5>2J;D9_WtFi2J*3suEtX)9mW3Ggt=iE7VzOoE=*f}NA z1+O`of70023Z*Qkr`M`qWutsIvZMqj87i!O1MbS6^Kk!fPC%=|s&O%(Nrd$Yh5k^V zi;^Cl|Dq=mmbj6^tEwX)$h`kr1A~huOE-5KIEgcYG0nv)WP5#I~;DKn`h8a(!!o8 zl*y^*Wl8BUw!kh2KobCOKGPk@54vI~CP#1?TNd?Fx7n8qQprxi!OMKRTm|0ez>Ulota(K^f2TJ zWs|maR-Msp-4F)yTaUcTzo~gpxXCQ=+HUnTsu#4ch1_Z&AG!8@t~cCaDFnrLm??LV zxv}WJrJ616R@VJbT}*j^^@K%cljk5Fd4PwC8j8OMK;h)f{URn%LJc|!ln-ZYa-t@8 z>$?0=um>1RPi_v(R z2AR=1Y}PRw7(ercDbVn<<*xo?FDi)kyiOPwmsNp25tsQl4<0DE@ns5KY?;||aI*`# zAN`T9*lNWvgoKiQ*iu>#Drs$!kCs30nMf}GN}!x7r)E%XSZh~ppi1I|-NofpbO8kM zXYO>0$5xLubt0JQh>|$x)szsmfd!A1+?^Pgxcim+q70AabEwK{22Xd`)6zL38duYj0&YtzUS&xMhnYF_0GdNQKqiht_1p*=9Olm}Uu> zm$TkI)u~HU5$wJ7AUIhI;8d}Cj;-ExO=eVGO%ZzvEjZQAn8$Ad2t7@p&R4)(9v~N@Y zYi-ADC5I7W8P7YqB|{7qzC@nwd$dpI>`O|lj+*V4ynOp2^Y{E063_O`4Zlkdi>NNS zlK7A$(rQ5*gsuviU0XYK*K$t-C4jh#wCS+7ZaUXVj_dRsJJ{KC@t?fP^|=v2(O&Hw zq-y#eCPdP-6ukl;a`10Mn(Ac;r*mW`Gg>W_*_>K3Hv{O)J63c0v^A+5qr(mr59pm( zzd$KBv0WDXddTiQp}7KYAC}1CT2DpLYZmG*?21gyrV+mMJs%a+nMfDt?ODw9I}Fp? zu7%w0Dty#3BPFC?RG(Mq%rWfrFH6xqg!|Er)KEWVFOTjf3;oMLe{lyy)mUN>iO!5RspX9ydTVd93&Yw7&#*Yr@8zrFeBbW-8&uYgMd?n$jF zCj%4q7OXbN@x)Z%Jy9qV_f(1`>h)RI>)D}&sfE6Z-Xjh@5jo&U-CDelR?wYKP<&a~DYuW5fh9tunTBMzH35dXb5N{!Xd5(e;m9;w zkTS(lOq8Mt6H?sKT%SGRGqloUPb)PFesV|NcIK>WPg~;ItX5S2YHwMNpy<)xS-F2Q zGF|G!A|GB4)=g74OdcW#m{#ZM`7YW{O1Y-bSRnD^bJy#eGLKj5Ateq(RR^6qDk%p% zP>-YCJkpLZiuG)Ist5rK$ScMPMa{kn3OS%fD6HHQf`QH8a62^5%QQ$@>(~&0rCGe5 z6ARGY*$VPf2559mX_%@qaw7oC2C_P4u>fyy&)Bf#O*%MB~!DYxyb-{(Cq2zI=s;YzAV z=M0_KN?Frc6y6l+1^bHQ(x|PUH31G~(~xpfZ=(fijr5(}p-3JiRAz9bDu+S+uR62kLh5` z@qdwiM1&}sgVid)#7{pNP@HoZ5;8m@_SRN{NC|dPQMmS35IDYv`zSJ~8401wptZg# zN~sfW$e2QqwqbxiAJ0;x>q_0`BXaSB1mVhiZ-a)n<(=YKt&F-aOugp(61$Xuwl8BC znLkMF=dW?z)6F_8<+6Fu{hZ?;?Y`&$k!6jJF56bcf&!20Z3xYx8)LAd(1xPf4K=yp zDi$;cR24n&xHk6VIVi1JL5zA(z z<~vC30irbg$@fdbe!9mYsLYF9G($<+6*g~h)M1D(z6;+z+zV3oH`3dfFCPpCT1Ojq zIk%rRvcq?iYJysZ#-BqKV=w!>eQj1Q`#@H&`tw{&>xl9sdfo-Q@2`5{>gvM73xIj$ z!wljR!l{lfn^Uq$g&=TF?8c`g@k`7#)9o4#pz3G6>!|0>8N-4%o=Tr_7G$v-d1qvw z7+*D+0fYrPH^1VmtiNia&-bj|_r;N>H73y?FVJ5Wr^{u@H^UK86iIKg9o}|UIt-4J zH~9UcZP}yjW$=hxLsY=SGaE6p*X#QA$FDtYO}=+%rLX?{pxx0o8=C}Epv2evtTGuG zH@C{Xc1Ya%_MP1FCyhJdQPTcfv1b}}YbEV?`P%6>o?kRCA)uWIR|rtYz33iJ^Y_2w zr?U=MKbF>LJpkGF-ix=cRtNOSk3UzuExH_+WcrGM`pv9*kb^E;Y#3aU`yWMT;n&pL zhViqrCPz06*ck0dX-0>{=<dP#Qgx%3j+jV#^*8*k=+L&c5G7 zM5q~0HpqXLAYK3|auFRxKJ004aRi1w73EXDhWa$f!_mGS2u&#skI)<*%ELp^Wq|@O zoU;3wu}jhZAwweMNwvu+(Z-Ga_=`DiFY|R~9B*H+Oz=s}+O74vIFUhiB>I6UE{exd zP}vQV#J%tB7YJfw7OOQyK6`Gbg?#ik49CNb_!-%6u1|dkc#^UUp7=0O&VCKFOAI1V z`N0aGSvwGog@j85x8r;~Hr=ZD?#txT4@FWM3jv>S;BitmdLs|LjZ7gU#O~+*z`!-h zAOukFUV|6=Bf=RD!hs0snSxDh&M3^W!Vi?j3ayjDzYLwhWv9{mdpa7*mOlgjQI<22 zx|e@grah8-lCGC0Xn$T5KXZiuXCh`*mc=9&Sh0AMzLU!$K?sjJ1QE|i*N$Z;2S zU$%WvJEjFn&ibiLjKwD9YlV^x&yYbZ6+F@zD{RU?0%K1<$k`+(67ilHJ0c(%qC^$? ziw#>nAoa+|GZ-dwQ9bc0Q?9GjdS)?l?4@Cyn8~Cs#D(h2r|%Vv#%od`3FC!(UF)i- z-de*-hwh^v`(#wJ6jt&8Um^g7NUkn0+L09~OvPY;%z1|M7b7?&Pv^U1%+zdJnv|YON+f!Y_@G*fuDq6IEM9 zg>6C65tD#zoWSLg_$>}PH95ep!6v{U@SqtC!gUqWB0Sp`{>%l=uXUbhDG7Z6?HOi5 zKal-|{lA74G#9-2TtpQvQigB7hR;Q=J$BU_M&3^2mE#$Bp~RKl}T z(g=NpEKr`Wk^fa7dO%L*yTjxnD2W-kE@tY&O!!Ta;xPtF^PCwJ&F0(~D(cF9L3(<#D|!WT^@Z}6`w#~#5QjzxVj)5jf!n#5P6>zz zwx@?Ja67Z{bRDLWddeLvMcG+?UDUH@pDO%@q*4IiNC3y`Z6cK^J@$A@^6+H9SD32b zC<%l}h%zAgio0K~Dp!#M z?>~;JRO@^K0UwK;{l*0T{;#%^PwziK*Z zL{O45lD={{Gg70@KX=K@^{ z@rci#?W5Nn(T zgj;hp3mbZwu3#mDuIQ}C6K}A8_Z97;yjWQFsi|Uc1KV3H9+VEV!?S@YD=rIetfjefXP?KpG2` z#?1|9Dh4D%NAPeRO3$|W#O?McXQEZAI0g;)p`~vfn?_C#H!>zT#)~kM74`nfTI+v` zmmjF}*l`I`J(p*@zSdlgQXj|2>5)M@I#f1GpmI{LhmJg_A@(>;q^wr&U&44;p1gm- z83-j|-yctXmJ#p!6@IH)=WSt43i*{!akL!p`a-b)PUWsHcng83!nZh~j3b3ix}1KS*g ziQc}ilE&%f1n`rH{*m}AWMKOzavux%?;0M*GKT3BWx(UAIcqg~D}4}x=^K)S7Z0zM z@IoUG)ZiHG#ghLHXJUyIlW>7rvm=|*J&|Doy2<9xzmV zq~=wPuZ7Yi^rcZI3Z-7DoSF8uVqK-J?nEzeKhR< zmKAxVb~n2O`P z2?(Q+yK8)az(};e;Dc)WyJw>}QL#~swIPzblT)3^+HUQ?3-dPu-(UPu-lqvpl+DS$GsZJ45=gS)`C8YG`Dh2; zkr|p@X~=nkIw$)wVGZGR-^v3=Jm~&RD^DyMUxX@CWd3^zblcE4*}-OXrsIUIZ5Q@O zXV}EJcNVB4K)L83%D^$}$rOXjwf}&R=kv6*1lEFH z3aYu6Sj60(%J{5NCg7C9+e&u@3wg){yPa7-pPa}%bQwz3(a~p%nJ1z;mW$0RTazjl z@ku74iFN)&H%OTz#u+f6|CraoIr7>gB~k7_ibVPfxU=$!f5ec-%cj~pD=mbam(j&@ z^kBiV;6UNs)lL_iO;5SjdQ?y2Btpy_rTbTGUS==m(b`RzcM0lDX$^M;=C{RIh!&DV zXd+F%AZ1oWl#5CvGuKq+v}RYG7ToYpRg`ma;^|ikzM~;9`fgC7BY_G+498>hP<0zl z&%2NO@!1#7u`(b>lo1Wq`c7m=KA|T6Rh?4#t|gv_mMNmQqkX>c-3ylnFcX!Wy@~B| zh7U{1jt3R2=@eLuwNI3((bwL?-^ei|fRzA>p1#y5aawZ0AG-gN=O}lXvf)kw1Gb>61z0h<79&bt>*_&rv)HiDDfg{_bfnmQDTR1DsIu7>rNK__r{bB<=Jn z@2JFn<7q)`07KJlwKOd+p1|xP?a??+&P@y>x97{HjPgCOF{2SLRnp%$9X-bT`0cz} z#KLX0)5gV=eLb`S=EMd2CHMXztfZ6VecIalGxtvm82F3AQB=|m@W<(q8))v!sC#3s z1mR-G)cesjOIG*KU3$R!>;1&?fZXnrgxjZGp{H~q;{wnXx`MHC@Xnm50b}xLNwDUH zSprs8tVq;|Nj>1q^EdV}mT)Q9^mw#C2%JT0k?h=h?O7%g`psXqpc?6RPD<3Jb`UjK z!g!+)<+xxOekPSyEndPK`!;*H`{aNe*Z9-buMk_uPv=pB+Uc7EWs0af1%1YCF^9mx zeD=r@ucbXFPl>Gv?!RlSe#d$JV|H5o^Rd6)($D_X9IJ)g{=FZw?gN7{+jCR0JE#YJ zVVIK>bkJkMlTE!v(8m^C)D}>qD1Te^g~4VJ zmP#l$oU#9uSF&1>5=jv4MVHo+gqX%g7lSuv+bh4UOGx!C{+e={P269^@48s5ZSvRu z_0(JJ2XD`enZCqvk*O$u;LoH`B^Ht{OEnpEqv*w`BCg)HH)_N|_mXgQIR?p2lf6nx zj<~Mz!VMwoV8{140Wd5UX-<3!RIv;2l8LY$g{SWdNO{74NGj!u5ZG8UM5=@$gasT7 zio2W9Tel^Op2&RFUV^?g|6r+PrcR3KLDEY!iFVeJ$Td zb}ey@oM=bhHZW&%3xBo2L=p|O5?Wpq8dY|65k9<^{qasn^Rg|1G>7THl9&niVN z8$vrW4;Y_Har-36mcWy4VVo`a*4NJ3Q%lU4y-d3Jn3%VU@wni*e8Ir$;z*DL@ZcWb zi`AK|@?$y@!BjWMxu1f&#mFQveYUcJ5F5a8?0hOlMNf2hNvH$$3CwNv5CQuEco?R}5#!F&JZ#^0welI;ZW^k;=XWu1+d$6ukCwjwB z^Xb2)!ULL1Rf#L~=aob=0hB&!RIE)x+N?mN4*)}Tdex4Q3s~{@>pSO)!Q!|9G3FO9 znUJ_WgraI`reRc}-HSt4zWMcz?p$)La6z;4p;=lF`p9N<-&}H|;MByBoSmeYum&2g zn*Am=C zprR3cnDflH^>0D7srBL!Hmza?TZ#*otiu|+q<8BXJgM5|I~D%k0&?&f`95FuN)rO6 znm<-Qc(ijNf)~7R&u*l>zn5JyKJN7)@wMF7U%p&}Yy;lKTDOG??t@pyt#Bnxc(vZSRJzQ@u;o9=i*8=0%lma-qiNOFEiBq$xmJG*#| zOc-UG6#@od9^(=cqGhvRA5a#1QZa4saOx(Bdjl-BmC;?U)4Zv_f8WZ@+Y<TTU`xz{tc@U%iI=y|<#Zsp z#su9bNgWcav&|y-gyQlw*vQ1lNhF<13?&&==+HSx53#P%nHx4|w)gnr2QygeFouHZ)I!8e?RwL;fA%APROowo7tJaJ7+ zto}Z-KW`ZZJ>>W3b^w4pf#}{mH+-Gp)eGOnZgTb7a+l}G7M^t^ov~)c*PNNaoBb_j zqTZ{$Gz`*zVJq_-{ zN9Q3vDo6O+;rzHylV><2^xMM{?CQS}Qq%%G+Jhk`xw#Ng)&x#zG;Av$TE(BoU9Noc zHa@r)eSO^ukT9h_GO<&A2*}xqvfr*Co%9fve_YmWxVZ>jIvkW_!Za*kVInub|K=bk z9(5T>#Xf$rTL0W89y5EU)>8i($>Y!B-ymG!LAfKzVaoR^o8O&(`XL@^i*4nkM(8%> zOfIt*cKt49{k^rXdw2bs=#hbmG3N{dihf$}5ma(5@oWrK^OmZZ+=1A_LB$gUpzopQ z`BeYH&iM8TSo8O^BM40AO9+7p^(Jbmad;4sDS_Ho0+SIyEy+=YM1zh4I!r44zU%1j z$T0(K$t6*xwPRZ&;nXjr8jQk4G1KQ!kg2uouyrYEu^j4@Aov=GFr_T9b6oP|o(COU z-%NdVN$z9>?$c4zm6Wug^<7>pk?>BrXZ4s87jbO2hLJ2VIz{`JhEFg{^yA|iNZ>9C zh$x9iH~n{TFwEtvxXVcLXv9IzTK?-V;(Ag5QQSnm5OVcViS_1DMiH#01m+M_+K^sa zBP&(>MFcvv>uLl9f(7r+h)jMhc1H@Ye$|-#UMkcFyqppI*O-z%5wyw%0vc)eo3^m7E_p*y^ySMAC5L$pz-*% zqsw{{su=<-KKw!Ca(z6S0y$VscbP5*xA*KOM<3`x+5DiNt=o&@pf%_S4RT<8x|toZ ztmOri166>zF`(7{p9`U}MTA;voD@qTFePrCt#AbsIh&vFN`QwPu)#Wldu5b1HN@qs zbBZ4vzFZ>wkShm$ARO^MXWX^Ww~sQ3O?zr6q(l$(!X)El+&YWJufCxF2DDoY{)15h zocz)C6oTBs@&BB{)=(0=nC_d)8E-V4Hg z#Ke>d+f8TOy~s;Tlw&j%Dy%!^26c$GTvSNF!|BCfU_o-#7tLUqHN)s?V1-sM>b7^^M-9d?f^0)X<}a!DowHNc(;crmvP4N z;$Fb0@3`Pj9P|Z$ha#6446gdt8#CkIYDR@-kUpeX{Q~xEPsLHt2PaAadjNTq1L1tO zvL)_1@kUKS2n1HU>S+bqKUK=A1&kS%7!t7~g%KSW1aW>4zdt1cuDq0vfM@UK`H zk9+(#M^MhCQ;JSMm)c>1Nt#?aHv3t8p{eb8r(mCn0!GHtGZzRfg8F~kgJgkfq|CeD zP9U}1(pF9&%})d^LT7vP_movPbN{QQlr+-;Uv5h2Pv_%}g{RQC}1B_iqMPeR-7GInz9#{0}>XXVlUDeuhSQ)28L_k zP;T*!=1Q$!eVq&L&tifEfTOpAA;=EQ=Me=}mqTh)9YuObl3QatlA#|Okq_-Qi1nK9 zw1Ti&b|wSxSi69)07N@Sfe-S8WUS@|KlC+yUn@Mv_kyMhZ5K7)rCfMH68>@YFkD`L z!QJ(~fKdHfT5XS+Pto{E!V z0+Hx~fi9Dke!+wYXMXj#>KX}0_D>CI{DbX6Umb`&7$~nL^YRNCTf-abgn8C;S~^wX z#Re{m9O!C|Vn?0g9B}3qTc`&|{@HvA-sAEi>Oy@;szGy4c8~31XtiUc>z-a%n0k^z z&n{YDcF>~lX~uE44XF&Z@(VxggkLIZ65;mt_IPYVlT37I+`)(pD^!2dJqd5P0tQb+ zTlbrcB!X5P$;cSQZXEa@3EBBrH0ftrj6#=`^9eUW7tt97)t;_XNeY7R$da0HJ-Y0Z zooga5?Nqw(o|v>)7jjK$@K>WV@Yi}DCr9avxb~1*Lrd2Q7DSp3`^SRW_YXDPx(xh5 zS95`Xg9%kGxDc0uyScLY_9Gy@KF~DEgzHX190tU^c3bi=mri5w)H=f3(w|!@N^Gb< z7Bs>Dd_N=Khi>0~W5)C%{P!5g((K=F_b#bGB=bBkNjth=Xr;OG=GwLASM@lMj55ED zQ`k`t&mqd-YLef0?U2R8OD<#yEqWf7l1cE zy}&^3s2aDDSdxf6qwNm5*j+XA1L8l=ecTTTb@1Y;o&N8p!fUgs=Q^-^gJJ=p_=h#k zhdOb8x~A^4Wg`c!zfQu1G|6r>+63vI{q`GJS>{!OiOHX(*agk`${m6nq8{PsbPitV z+0B}S+eRk)XU)G-{+sMS(^p;7m9%!d;qQgE?Ioxc1%wenED2t@7x}pzY&Ha<`6~h# z%$qTh%((X-L#*-L+y}hZ)fB)N3x8;d=@Jrd;UvbsIQgb*e)WR3@)yD)N9dKR+^bt> zg2a#9l8*)O7oK+5zWFR@FkX&HmJ`!5O9`EC`%TJ!p`<+Fb!SZc2b}!`fqfWhzr43( z$K7nM^hC$>7&vI6d!Wo>2D+CG#WTV8LdZ0t%6x}b3!|$-9Ozk0Zt3l#nV=!_(wYtrw%Tzir-o1zc73D#%;$&t4W-jH5s$`%7N@w* zC+!y3NjFY0Eehk>xQu1MO7;{pUwK{ilOd20(QXz}y>nD=Uxav&bo7lBJV!GW@#w_k zIflnOjOz=GwvdWgo{X`Ykpa{wjfy_y|kK;4>ehf*edh zmGj9@lqXcOqZ9Ys*xBKaUwNg^DjxDT16vP7O)fqZIllVB@|LH^qr0B?JOtT0>DIpx z9Gm`Bbd7J2zTPOdtkW!V;9A%I#odrYGkSj)e=~~|sSt_3T`(-BR`02>plCu{_GMbLGsD+tHf8}j>f^U8EUlNWfpyx0ZI4E_(S)}BdM8R zPrUvrrGO%WOZIG$YMx;|UBI7hSk6F(45HE~h+Bsd7eBx!unMb=(BzL9X)ED!*X@uw z2Ll2i!XK`6L>nyFr5+p*o4}-HUDN-aH@a|UR4wdIzLHSrpE3opv~OLu>0Y@+uKWqj zeLIuO=A*kb+f_>z<<6XZB|i1GDTf~T@YB$-NK%)8e zIsBL5o>b4o(XH$ENUo14$1?oUFE@fWvT84H(z9f$9EctRkk;p8q8&Dh^+a^{v)hb2 zZxar&8=k(680T>d6ZYVCSM9dkwiaIfg6~3|22Nto3ay#Mlj-P=2phk)uU8dzxCji1P!pN7o&S6;_nV3yxhKHT~} z^}Dorl{!rpZN5(VBown-i2`^(fDEyX>+Ox)IA19|(F&z+)`FfTn@Sujj4y#tphNdb zzx(_(gOPcV5_ppsf7R~J*#0bjEvWQLwNvQ^^jQQL#J)@8KOi5871e+CqzT*~5J}n` z-1A{$$>hOx&u{qiPxNgMe*@Y@QHC0MhP(2M?ftAh^*udljOza@u$7fH%`FT)T2Jy?o&xWoO-J(*}b={Q%G(Az8{)Hi$rhSxk6b-9Jql{Cq&FEIh>A71{kU82thGs2< zq5gm&dcXR~lhNljn)juo@B(~bElmJ}LizgAwrSF4G!zZ_Q<;qX^RM~OoBPO8%6K+P z6dRnf?u`^z$LLBJBJZk{AN_}V!(`f5iG+>q-M(<-6g|g8x9*HxmGbfIACi4-L6Nn0 z(87AyE#m%ptbOsnCXB^&;etkpa?X68>b16>Cw>ISUp6SrgQt@Yl z6^EwF;0=o1*V!`|iHkfv9HHhWe(t|p+yE)FdvTqmW}d1=O}Zrprf%j8rwb6P#s&4l zB(h|kTvB^R3`fHT=O2k9w2?yr*zyC8w5BH69xbJb`TyC^Y>Yzzo2tTEul=CHvtn<= zZGS9DRE5xtjl;!Eq_&Z0LzF61wP*~xgq4>XdFr=5vc8nws*88mpq+(3a2MXp&?RBh|;)BEl#egMtVCt5iMLi$zb;zcNI(j znb|8C7QHZsZoE^g8fWcKxG7k)g)JcmD5tpjp6bdgYc_Rrx;5Iya%o79KiOLs{Opd) z-4m4Kk^6Adbg}7U*IDp6c>l`O?ZA6h`F)iZrt|U?OCb#}4b5Sq*6zp2YVFz^OlWQe zK7C-$vgw32+P3>xjCQG6U99&kk|;((o<8II1ch%Sd%<~zM-r!{cO4qct?E$2(Gzzy zM~j03u@&CQuC=LEqNr>p04^veb)!S$OP{J(=Un!`6dv-`MS3ITYl**aj_>F6fce3^QRZ;rM@lGaN0beK$ z-WqUl0u@gGoct?p;=IJqjApfq-T4^ZFk4MG5T%X_7SLOd1`8=U`L%fMwO8a+YXyLI z%_>3bmL2tUw7KR=ABL)+bb^`cxad)xS9n3BJGzjzI>pU4gv+mEGz~QcE?s=6Kaeaa z>C>f57%P%w?YB=rCRKgAxnONl?_!gV<^j8mbFT+|6%jB8f;CJA8zHv^OkfN*xY{dl z>db_>p-!%QG#jeyKMs4%tgl?n=s5DXH%m%Qz+`x$dRdesP;5BxrOwe7l{>$U3B?s3RHSaoRDy42)M zW?AilcNK)2B22m?Y{>#T{Wz6(<>iP6vsc%54F7!sVOm-#zE@gm5B&Om^xNZ~&Nv~O~U5d3+Zfxp4sv^O;b%#x%vGM2)^6N$ zFeaP*M2K3iRQKBfEfmX}P0?gJElxpfvI51!-{hO`QD0E0Fw)%2>&sP9SlaDpVod+m zRqHz$Xg@L%6m-G9H1f$ooJLvro5a)S?zB!_(l?R*G|U7|hCEs zT$r6O!KPN$$z95*+#kr?g-g$s86y^(*R}VyJAF{;V~eGxFFV|*c$H%?36ru!8g5aM z;4x-E+7G}C{G|Y;&=ti^nNXcz{(6!_M`y1sRqbaN5t^c^N;M>GKPTGy;QJiQq_oX} z*wkm*oIL5mj4wai16pdHeg4HdpL1eI=W?$kp|-buv!5;*`5`x;`z2!CgDz|g?A_8; zrQROh({XdD&zR@EVQ|Zb4ZX;rn3C*!KYskIlKeRTDE5M@{k&r`SJ2D#{o4c0m1mlB zC=3<9`bEOEaUl&hU6h4IAY@4fe{gwaH&kKGq{;9v5bg9|l{2h|y-5jbGNQ6SZ=Qg? zR=toa*@^SNwn8$^^nNoL`s#C>2*}xBkaTK1Y?|sMF*6~Y?7zYTXqZ9n;tOi z`K3-O_u>MohwPBMIOEb6??Uzc+ut#B#-UBXX}R)RJnpwyjmFs;w@zq`v;}0hH>m)J z!2(h;;}R#CdDn|c$p7e$GV7Rh*QN+7CHC7*tDbvGJfBxK>JkDLrAaz}r-~Sq%bEAe z>s)XOypmI&y!KhEIC@toFF#8(tY4Tei|aHI_x78R2{CG}f~W%78JuOOrnoZYW(4VvL{Nq7TAjC z&ZhJGLXX+}eSyvq9}m^1LJVb@@{Ucp7T>EbJdL4Wi5l^$`<7@ErKm*4w=Y3&6-Nhw z==LuMiN%LzHx8Y13_5|dK83Nq6&QZU=xDfl!kAhZj0$3yBGoJbrM1w`>V1kt0K$Mx z8Y^SjHvHLChk@JU09w#N|4Hb6s-NXF+=>fYll=)q3r#Ah`a{uTA!^h_-j>TlIuXHG zF7iK2dLiMMHU=HGoEC+pB>-Ro-$+S9+$EX88E7~K1}6*OrDx@TQ9ae}T@el1bD-AL zVtJne7(4E|L?KJVyQvz0VBGVm(OJGq#eG&!A~MCd4#_l;lLK<0eP%7;%34k-eU^*n2DN^Nxh;&3mFC)eo zgo6u$)y!SdtV$@=ch9na4cksf0uZ*VazTYO10~fM9(5-f6fL3q(M=w|cAK9>b$!ox z2GK}1+3$7HWML@tc_E{7R`-enop}_-*g@_g!&Zkw5YeO$Y=8J5=yeG_Gi4JOD0H7C za~6a;VdJ`e)cqepXFntRrr~_Un>ABFCb`(4;mFd1f>1n84yZEVA`LL28b%OHCPa$_ zOOpW*#QLg2h&X_jrNFQhxEc`=E+?dhMZD=NGlf(#h%lOj<$)ATt#q^;SLT~PtTh)F zS{K+#6-P560eR7NG7SD&IJg#$tj|5xEh%#OsQH1WlAQ)%^Br{Xy_%^$WnfPShT#{%ZQ79q5{=k z@4LKjN?Dq=(@atUBVuBdme5Qc7$k>|SVkOD1rx9h6t?s$O#}stNZ^)bK_Tp;jXK87 z-Vx7MZ#tKG&71yaOfFqXl=zOJLE-r7$^a`I%BoT@Pl9$o%7M9Mcfj)YHCh z4%4B_+s_{P^^Ms|AtENFr_hk6C2&O!B8pVW;0Q*TBO*DS4AKc1EP~&}{(E|twRC>W z#eix~>=Yi7qQy&MNvWX$$chj7)0@VV{tnwArMEBY84{G&@+4hg!T(lpSJat$cJ>WW zhzDoy&%V~`lrk@%&38FA^>M5Vvzoz&$pf%GoL+NNuP(9HYa;?qM}K*Y*s ziNuuJdGu6dsLw|Ap~%qO znl*P(b}8TUYx6mincM8~UFF}BkQ)(nV^n9^0Ya2=%s_SO0J`&GFDnAE*Y1F=f7g57wIi@$`h;(JC7vOyZY{hhGAYTv?3;DS*&-(2C}+t9u!Nz+?rTwc)WS`2wvYsx^b z$$`?JaS|q7YJVv9tLDva@-RC}WGkuB!!65&2o>)I97w$ajmR>Ex>O9YLgu#=oZi++jrr0dJV(n7!E%5b8woW0;RyDSjUgGA`}GC!7QNY zU_&Im(pFn28jFa=bYZ!{*R)F-hGGtsR>@|nop+{ddRbM;# z6a*Rrkx(>{(}6xNc-i3Vb$5jl{LZv0W`h%y!1Sv19V-_5rwVT|r z$hE(ErFQMg{@3lX1a0?&5OGY)f#x<{jDuEr{Tm{TPZ`!T8@v5vi!hr@XXS3YK;__b8ooU53in1o`*?fj?Gy@ z=XEAsG3OD)V-NuLeE9q~xRs5eEm-(SGJTbUmepq(c5tm7W*bl>I(JP(4v75Y&RRCMz^r% zK0NYNBCStJpEN5HCHVP1N1lV7$~|Ea!1oy zuMK@#cxY&>D|Q89jRE(Pkmf0V8y^l>j2w7-2mao(;M>hd4}nXnZEl~*Cp!%w|2$T_ zxrnJY1ml`O9K|D!1vrz1vq+0^>|1>;X#Z7&vM~D2Xq>m9E3p3H;}xw|@JZ%C42IFx zIwqo5EQuU(053l|Z>&ML+8@+`*CVb@c`8m0D!Tl-Yxm9IIAN~UDqe>Lw5N86x&T!V zDg-f51E4snWrHnn4EMbiTS&ZvJ6y z?xf<_2Z?sc0UF~>v-@V($NYy@nm*6)`aQ*09$08J2W9T_b1+$gwf$JX?yEbobNA+P zuWiLVX%f(J6Lh3-XkKTB;!Y=CF zmGBU>eU~w2y^an*@!lNW<#jX1@$Ibe&fbEXv4wCQjpr*(pdd3@mrE6_x~H4uJoFgC z0AbVr6ptUC*dr4U13;T`c%VL-lpbpT`as`nco4fV%szsuSXfa`CvQt?Oiom4nN^_yaHlS04dVB z@$@baq!C~J6Mxsty&ibHUXYXJF7m5|+98esM9)J>pAPS5_+i7>Lz}u`|_|SrdBk97^bSfN6Q$8)Na?975v{=hRLYT;Vx!-8?ztI>34HPy=sWa3; ztNesaDx*c#s8z~x)*pBCD|7}Lz)cmj7#G6$vn9@fXkeQR0aQpH&6B3@8KNIT^D8LO zrx}JA))k5JS+r=d?ZgRVCe5U?OS*^F*WY2%cV?i226kNNkk^&%7Z&U@=!5rN9T-CHG73#lr{ye8o31`1+@6kh{hXO>U8m08C{q`OT4+{_9Yo(z{P*>+EjKQ60 z@ELg-u1dW3>eeoVJv&qi%lx0e*}bgd7y`q9G%g}s%T$971a z5BdUnbjKD2bV475D3j-END%0`I$B6oB&R^*x30U$y#ve;-VGnmH1%#2cKlFL#&a)JuobF!@*` z!HybxK!(m~-F5!Vj5qZkbLSq=M`hcYXzG5wgAl+nNm0j703pEyCf|!{MICe!CEOm$ zJ)p7|I|Gl9CAY-E`?|}(`%V)1N>~gIl%^4zXP|wQzOtl&lH9g>T7ei_7BReCEPy3q zX7)gj71R&~w>rJG1u+uP^j$tk2|;-VWuiRo8&f$8&)AYA?4(?n%Z_}}sG{2)J#tFB ziwMSo(}xCQ)CBdUU2~H(@D)s896b#bp(5!N{t%eWewBLu{jc)g#_PssM@E0DjoU`Q zaGFy2!-^9f39QI%yA-NC>3xOvhjrNaH(HLjsdM<(jse9K-vp+!yB@Ir!@y2%X(I0v z)>H(~FLG5xgZ9p^Nm_c5HNnO8afH_U6K}f5Zob*2{cWm2DD6SW+r`bgMZWgkvort% zo|v+CIMX(jsRn|4VV>hS3)oBg&=VXP*)Gt@cS@A>NfqBNHN@oydB_$_%%Id%v;W1ky?YFMEkd0;aJXvhHX9Bt`-GB8w?$Z1t3F%fQDh9fJEE`RJ!EB zA#r*>lBjB^z$A$~67{oayww6Lm<@T6Ea54Iiamsp_o*xJ6}>HJO5fQPZA49 ztkFGCth^04PRcGFODq|m-fh06JOLnX`6t@+uKCZp8S^Mr*lU3Fj9Wsc^9)sG)uR`Z|;Eo7c_#Mlf6<|x z{6#=H@urNTYa>ci_U6VNtjwv-N*T*Wf%kUDvD2Mop{Ab#3c>8wU*?k9rit~Ztvq~6 zGSyS|Mi>+;iIkf|#CdX%H|5#%<0m0>LG>j)@n^gP zFL*cJcYFBk?U@Aq%ej(=qFU8@I=bzeiay7FmM?{25A|>H-(d`W4>*_yQ96@9_QO3K zlY&jriQnbOJ6)5aF@g{-f2wnH&dgfdD>Cgp((=?VFI_`ns}7}S%jC&WzKmtsPm&{k z`|2GL^M&!R18tX3I5)e%3^a}vi;9(L{;_3ZNa)*ANhX06hIf?bI$~@s)C%QR0hrs{ z?vXyHqM9BLIcEkvPA#%{Z5x%R+cfS|1>`u+F5zqTjSC za$!-jN=D}x;}#&4uObn&$H!rH^-8sLm?q~v0)tTztkX1nS)D5q4&>E*)iAlHdC2bY zv=z@&Is#Awpt3Vmp<+oN7-uwBB9(|iGor!NpOZp3mJm)zQ`d|bZanNawjSOa7ZEu9 zZ047!LzxL6NCL%c2Iee^@+1aI+ygD`48-0QS4NE-4*aeuO;{zLQ8oZ$AW1Ft9UbTU zxqY%D!JgrNT%|h8NPsf~eRfI&DeS<8)KC`mvj(7e2RT@(iLvAu8y5Bhie@}*-KWTq zmG+uGl&Sj8)`K3;wVr_^*z@3fHlhM*;1Zj0rB0|=^gIK8wZN#Lz-tXk?N&HzSxkCM ztr}?^NWnI~Sh)P`AzAy|e8Be5g2lYnfQGU`PX5h zxb0L49v$g=Y$sGG45#e!lC(pC@H{R|yGd0<8&E!kU~~bR8j`X;<;m1wRX3hm*&{@-Yu1EBaPN1za2v-I9Zk=p?zd;QH-Aj07c+Wt z3gbm$6W}j(;77_J0|BQKq3^BrTuvlw5FTop84gT|4Rw|_3b4zio=F6au%~%vMFVP0 z%+LQp3XridWgS(*Gcm)t2Z9^_ncevxMQ8oipf; z$Y>OGBSs0*p&*WsRtAEAijEYp009weASyOsel6a;|H1RaeLTl~U)Sezo`(&L7{Cek zue$38`Pk-}n0X-o!0JCCI?W0ZY{dYa&w|D3vJVeY!K#P9=S?aW00wv%^HUejhRVp= zo3E;$HYM+Q{ha}w*mgeSNbNdEf(dkJxx@AHVBOP?-b|jj8B^qwb@A;=tVkV)J|MbJ zuwh#2$ri1BX5rMgbycS+RIwczG8}TaFZA0Eey=RPfS@Al8;14*AOO5RUG59Z^zfv8 zimqRowScn@n#_nXF9U3-C&PT94lsy17ZS=f0&p(nL zYtrDSM&GYM87TWYvsG8#cpb=%`MnSNn>d(IG3j{^{NnglU&G?H@uN1V62l_5>6A=u3D^q} z8FU#`nBs2r!}npD|M`hiop|LSjLds+{UlNKOfluEC9>a7zNSqL{mO)Wlc#%M3S^D} zbsbT2^Z4k3_#7te79%}5O6kbBaQtel!%}<-qTo-IYldIoiJ8C;;ohlRw&!ZhYgYib zR^i@(favJ3OL_F0Tr*k-ct2O;a7%O>%mHm(*dA4Q9S=IYWzZmz**F75(*T~rMV<~|u`x!?)Qc@6q4t>kMI(}mc4W5Q zU*C*(D@b~7dhe3Gg=8Vs+U-Cau69>D#W%pYSv+^CCK3)knq!(M;agW9>Nvn!LZtn8I%SCqBmH&xL-Y)P{FUUAC z<8J6LYq$^)Zb%wGQe773eHasvQk#p6}3`p9*R{aT)?+ zTE=8G70;8>q|#hc(xtwyo?FR_-L*&a9)K0LF|yT`a%xBVud1HI?>p9U^za<3KqCg>!k(Lv@}2Vns$ zSn@Uxfg%*mDX(45l*04MGl(}?D6?%K7-gGa=^DM_?I538o`k z0G6co0FV7UBCz-01^3GAyA{^+)u;|a$D5+dj|~i@Ok#>RN-{S0DFzrfki0Llnlq&G zX;zl!R)nQV2l5f*7O=$Vqg+wIf=K(fu@MxDd;McZ76YV}Jm=-knvm;;W( zG?!(s4jS-|=%e2ioZm{VPtrG9(|TZI8-7vBGV*+T$OYA1lYO~;y?`&F7LtF0}sv)aLe86i>Ulzi`JP$kf$ z(c7SfqRR{1bfd`VA9eBN2Ifhr#S&JkWrl$zkWLozT)Buh@{QLFPVhVHayJa^RgZGx z`gW0lzu&_=H?oG?_Jnt8@mBK^o4#NKAQW{GwVwrOQieM?@O&q*;a6dZGIU%GGH)86 zqBf!xW@6?guDywIOCDLaU_O5x9~qVADPbhd0*&%1E6qd1EA+VPuj^C|wFSEjsw(!z9|(cOt; z@cRKRN{yh7;p54g3rVt|=~3(y>cfuut;Hew{3H)N;>+pw=;4&0ks6sPT5qNAW@L|l zpnl;fX@@)BZLL)E0L9FM_fx_DPxz7f+)aYhoWaupAobg~_rYgNi>^Hy0*6__T{AH~ zX{A%%02$xjr!)KaO6aG_z~Z9(%)0#33hi`NyGW4Q2Knw+BOCj|&AOE%%=mkRkeS_&$$7Tr_ zFp5!e(P4X>_6{1TuSqe4<{q;S^*vJm>(7h^O11FIptpnftK8<1iz9ihM@9clgL&)sti}!~(EYcg%^b_`UC2uu z*q~a!V!h-hGvy{mCVdfcN*{K<_5dn#kVLLb+)>J8-8TLrIzW2R^Q^wn{;JrQ<%)L! zPQ!M8@a0N3Yda}V2}hrHu`{pdqYkkFp{@*iN5~-97mk+x1JZL;LYwMSDzD99AYrc7b z4ZL|J9T%)2%xHUWOZgZqEA2-*{za|7zRb4$#Gg@be4T>J z&HeT-6x!bZ`Or34mXh0EDXwJ!cJQcKz$bMv9Pj`3^~y76KNl9BePFuS0uSGS;mU;)u*zK&;G`){KbQg*?!;g_?^;+wS<{0*PyP??YCp` zKPm_FQ5{v;pOr}aQGYlJ^AH8zCtWa$eE~7z>~%bFK`WDg;7U>6loO0up6v|^;@(WV z`=ez0$MfE_x~(K&bN%kk0b#Xv`NlTFt#Q|5yZPxq53(S~XTQ(^#34F8GB;N~CqE}r zzW9t6j89y=g08QhQ&(GGqu1D2bDouhECid-A###Ul9$B`d)S3^#K8Gl@U@{FJ}DSc zdmml<#t{DyoQ|Wr(W8~8}+mU%lNV$bymAE=+^P zg#+Rua)Rl>L0ZRC@MXE23nG?n!*z=}>%)Kw%5|H@1@`YV(%G=D3ZvYn(39>qSFg9s zSSVXGY8VqY?JA^=EwdK+!xdoBdyQu;u6&WaWXTj)_SjK@He0A!vO6%Xp7$K~`>(IH zcGh0bxQN}KxEd1+ zh6LM>L(a}+7aq)#@|F<^5C%s_+=H$oU`mG%HSd`vtvs%|Dw&fD;TJ8lMzrsKHCkTh9q*5DQ|7w{-H#?!;>RN}wD-yLAQk{t4 zr|fY75ob17TTqWQmWSQepFyb$?A#8TVdDj%8755*%HA%6NWrFzr0QC<-@|I9&=D-w z|Mw1mk};e4&b6k!4>1)b;V=y?mnc!tsHex)1lBoV4T z$1V7l5806cvF)xgcqJKB4O1>QuowID#~oI7C4PQPbXs6CTxfUIYoUrZ)*NW-dwjs% z`B1FCXVsxS%U=;159{7VwB@8kQ_m0BGt>e`;&pnwUym!3n-o8g#uJMIs8#`g{?>dX zZ0}e?V0q6&-=Qule94+TQOFxiN8d;m2(nQHO=9irS2;hj>x@ z3zB8s^g+mj3{>AwCF-XgEpXOG60$-3;)#onr?TMJ#g~O>^JI{WQJE#$0*`MPRTY!- zUiVdu(qu_0$p>d3bnNdurb`&v3kZnnBBXS$eY_~_I#axUN8$9*c8HMmHV7VRiw0rB z_lBh3oF%g~ekvIaaa(Y$A20U^D3M#UAj)V?8NXcx+K*4{0~;(^<8(+kNXmVxaeUFr zrSkiYyXg%|Qe~rh`_nvJPg~r^i!fe48mPaw^4Hi~e<_$inb_tOmsAK2J@6>>%I>yF z;zixRDHVg^_77k6v|Y9kAj1^4z`~rdbMRrUI9>b6WB<@9eaDbU*Pm7&tTTw^>phV< zsup6y9Hv@XTNFJ5gcP8G1vNfG?XBdD%i0ITRzbjVPPWaNFJ@B_r36&HLshF??N74W z;h}<3B~`8opM*7}=jOLy;jV)r(swtpSLe_28~z%%fNp|hwjRNKX32@X z_kt_NGgGnv{YkrnH>odAzmJ{Y6fY!(t;QhRC^DkVw`Nks+L%ZF3={TV9z4T zPp(iNgt?civY-W*IH+S+7sCFA@Ox4l1r5nrbNJcn9Q2x=S|}9Yu8XJrgoukmq3B4F zI{FOCHQv!ofa;zMTWzjCIM2u+C=@d^7)SZPPCr*eT-bbg2Yk){;jxB@PTg0qG_^

)wvNdG*}K)f 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®e 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 >P=!Euq_uPpR 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%0D{KUVCa?wSs7 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ⅇvM(swys6J7Y&_}Up#$v%-cQo? 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
VQ!FK0tRyuw|sIVWr{+ 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⪚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

9x&80Lu!uf}#26*2vmH&KQvl^LwvR80(eY0- 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≀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

H|HxUdX$sFL&4Ps8fv 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≫K~R5 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%0A<5oaPn^&^G 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%0AbYd@rn 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 z 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�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 z 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

X*p`l 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

74+xUc8}8fj=dXCvDGNNf;HDjg_vk!&xVKnc8 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

Bj(z;FST`407SXrYESg^U)kopHOD1B4 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

fbHhk7wWFq0JP>Q76iUfIW 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

(}?dxNQhM_IWKCr{pQ6W|CC& zMWj6!^xdSle@-)`4>$@UmAWddqCBL+QN=F)=ljs-!j44>S|4o}qVvIdW@^K`+#YT& zZK}H2rPn~d*WkB_IoQ;v)ruW9yS@*cWWfq6SCE@6RAONK<>E>gArF4FF;i%19pPdN zFXPdwF#5$$YzPg#{o2UluMwL2`CwQ`lk4-=KmYfY{F^LIj{HWX7!Ry4HjREzl0zxSb}zFv%d;|%{U3}qub z%_w$s044(3semvIT>6pX{u149wwAd%}L@e3nQuObqiZ`Iy*HxUxY zjx4Vu_)*t{AhcoMh`BksqhT_H3%_FH{MYM}uGI~F4P{`MO zhY95N8#ETM)6FNc&Nj%zsz|yHNjKbyUA+>1b>k8YPqY^T8UQIW+OhU(;K`1&(IbI!|kR%05WeF2_>T3*^?j>8BCw-RG8haBNRddUTUFZ3VL*yoApbB`Zb5~ z@hRW0xX224kZx*ZS?{~~{5~Rh?;_One9VmRJA2lhZZX&eCCs_bn5F>x`fuiI_i)KQ zas0WBh)sa*0bw&_39&^^4|(GXoM+x!C^v*{=teVZ&^)B+Z$uZz6wfkQ9f4Gtz_o>L z+!;>8wOl2jshP12Ki%Z^xaqhq#AM8>(q?;@$PzZnmjMK`CnaY_EUujkW`U~L&xIdD zByI;YV`L9m41b*F2p_31OWxRG6ihj`hW#E+83v9S5JBI+7$JI9>Dw_r;I7CSl4;G? zH=2oU0Ou4ox#wM)Rp>{t9#0xPLYHo8Znm`S?_Lc6s7%27oY?!L6D{56XGM@zz1?4g zkrJ^0Oau4>*^ZagV}je}cAFazb@|8m=ekD;0l;Mduk)QRq6_s9QQfYvFHOjvi1KDm zPCh|D=^FXqgwBY<2m-I4Kb%`@+P3BIV+Dm9vK@-9#J!cjq7#aF+xZI@ERcaZPbw?p z%=4;TfMc%PeCA?(&K^?q!VOFb5uLY*%4qyg>FHiOA}}&|d3E?P>VJyP!=LK^ zkK&)t=kDv`x?Fo)dsf#bs%vkqy}4vluF9@ld)Ku`)D_7nT`Qt-%}4_Yr6KK7->X!# z{O<2BxbyLOzh38k&htP+djjM3MvbFy?3Y-&mLwi5Ws7ql!z9TCf$v^^==32BjLZ(e z@$6SWHSceoSyTVAviJwRD*Z|!{i(t*@(_2@hN?C&^cuJN3?yZmeStrjnGX7k8W{R? z^UIr2(@%PQ?^PI>E6CW9?|bg)+w5ig?#hB}2;~`Um?m|=R(9xi%B3Fa%U;rJH!7S5 zY$`%88(un1~&v-}RmV9CrI+KxcB(G<>D?eU?;DoA~i*lYbdePvc^b-;xZ!7mB)Va_!b3F8UzN z?aDuUc8*3h*o$@qT!yb{v9CS7+}A^S?J@nS>`zaSKqNUGyr9h&N8&U25wov)eP9x? z4=--Vgj+JH@uCk_(8A66zyT^)C-PS?|4(?+JtM42DNzew6F^4MXxRs}MQ4T$0Y z>!JOy=J{?pmk$DSG&-z$_xsQHWDGw(CNtvG2Os^^VE;R*{$o8`T0HIIE}Ue@<6bVv z=3nzS+~;$xEw}sC`THx)XGOPW_O6TWd{x{0cp2_+`(F3x<*&iqJfDYvOJ`jMu(5dP zSz_lm;~f;e^g26mak+}IG3 zi!3S_3%>Q`knE3xTqMhg?+^)cE4?GbpJ4F^1?w8Kz$24Zt3US&D|U6g6IwcX<@M*1 zx}P8ale)A<5I{qyjGPP}I>#ah)Yirkkn-gfl@)sxG}H_z4#JdNaR-XM1k{QWmFVao zh}yOrh@uFGydu4VeL}7dgamtWysU!abI$|;X85Rx$c5WimC!82T9U_S>AZhjHnb{407G$2g2FhX z97Ai|b+v<&H0f`Xw)z+!w*`B7v%8k&A>&N#P&m#MZ+OyHg5cgXs(?E3akGhzL}2G@ zg~|<%O_nGY{kyBCmpzTdVns+kxr#7(X>KLH$hD1wLYAq0VCq%J707Dr=A0o{X63k| z1!|8}z4X-dN!&GF&YTq8jY%(R#8gC-6348cJWcCS_3e>g8{b#Y;FpG_@U8CqI(h!6 zA(C(Zm0D>=&S+9xUuB5ul}7VDK^=}5>gd~i#9)G7ZCFXcY-i6G zudJf)M3^1v<)94w9^UJ#{=Su8d)|zS77M!Tnuil?piIGB8&}N{O4srJL~Ip%3>`?s z!)kv_&Qj_ko&!&%a{qA0P@&@ZNyL+oi&Xo?$KwQ1{Mf-j@sNg=S>Sn&d@hgLL527% z;Zy)Tb&1V07Q-ok&`V45*E=R`GRUVY%mIbIeWAcnrvC|tz$KNmv;3RO2_&3*yUs_f zwjG%RfRzI*WqBF|!B3Yg0ws&cggY8ZbGe=T23vkJV$NG>GqfSUIi%ty)i~3(~giCJcnVH=Z(k_;xrm?&&fPZ3nc$5;*j7!Yi$i#gFIm4aji3Ie=FvV-Cse zGlTWmBKfhI?f11-)3vwk4S%$j9(MW!^Y@p>@d}cWPgM-{ch;@9tQic+UT?-XI9GkrqLou{5nD=Xbe77Xxu_A*T zWsRNYKYZjp|LkjKgu27TTdcNadkZAdOE~|w#VrdP2Shzl1WfwK@0NRN>z%M5&;ar5{WUQf7W0fO=A-i~qf(xv;yCRGp`aLc$_bMYH&5ZXqS zaON)kB88*T-z`rx;Nguqy!^QMjJfnGka?Dg*KXjbXoqFmTXCD)rwaLh^=RTBnOE&? zKZE{kK$Urh)Ei8wszo9=-HO%KO`RObHk_XQ_B~O3!1T`@aPQk z{WlxI=Pw zMfH5=Ey=u?+|JYIv#P{IMt4!|iz?6m7@NjN9UrzduRCm2^9#rCm>|4*;25bu*|xsq zB6M0(q#yrP^047~q@c(5eqg^^1^xmx>(hNDw-?6`%R7%YR*8pz6JuG)-K@s0`W&2T z>m@Xmn60p6H{5h>T_BVR?bwc5*b3yy_xE}F z0L0zH*i0km%~xuxd{QWqX;XKsGmQE*^e6hw-Iw=F`wn+bEV}<^;xN1Q6{fCsG(N`% zLR7vxvR^3&5wi-p|IVuwVL#I=v=YZj(nUJX&x{h)hJlyj&Nz2+Q>ttBSFy9z( z^4;kJEgWF-(1!C%`H#Q%C0eV~*=N$X=N;=0S1Uf(a|#!EATp|$8vtqfcWqYCIDBot*$QuA`iVt*8JXIcmsL!@*Lb!e!HZ7bb|l%%yR?8h8DcrXNm(^p8#djy*+D*iU8t|%$1HO1qQEJ(lK-lv)(PQl0ID%8#(mfn}{3T6xIIoRgY`V{nvNk*Wtsr z#Xv27tW#{~#7^$BGtbj3kC*Ia{5Q7G?1@AvB(}*y*!5E|_^*NpQx04p%kR~CZtl!; zK;A0vn{+8pqUZ_(d6VbzhBU$p@ZqE8wtyOD2xfS8C#d4>ug9%I(D_Z}erM1B4WnNrX)z;Sht45}yI z>$Q{>IrSTej2Vk@okkru~H7*_Q zxFnT|@^pxl8V<8~cs|<0TQy$HR9#Vr6B(g_NBD>AK`$#SCCH2GxMXmSXXIxazZcJ? z`F49JXG~-oBNU*5!`b- z`i3jL!GPAEEH&^lt9K#vdq0d7;rnkZiB?`1A&Tg!-IMn4w75~yw0B5rL6Pxb5(E@` ziqZM={pXXCtF0rnsTt}@On$K_0T1F?eKQFzY_bjFnY0pVJII7p83j7X^ZD4318!QO z_pU-}Ob0otQ}8IEi9p6C?8z7u^y>i~zrjRx&^M5|Hw?hia$m)HTV-#woi0qL%*q~2 z%%z$djGX4#Mx||YT$I!IETdCx=rxIZEZ&zPXiTOOgrLEFs~IaQ=(AP_FHHFgU5g>K zXHQYwueqjgg!@9*sxgn#JJH#4q@?{+?9V(s`&D5>3YyMD)z_i+v_sT`0I!LhS0cnq zqVEBY6jO{gUehe}D%~iK4k76ADz_U#yo)>aGIjDfE{b0X4ATV%jflo1B9EG&%n(MA zGu@XmxyYFJNykbD%6h$3|Gv)(GS5+u+KF^w7rrse&RFu(=H<7w- zPTET&HXT0Z^#r@1;= z;zQH9-wDQe7Ld<`?V})a7{~|;Vz-@I4g)HRgyMfe<_zAZm>Y&S670ak@pZu0$}hRH zI+F<*6wBI!9x`0O%Lw|I=E)`PQDz5-L^c(P5Pf=a1YWJ$hPmj6hCN#q!9CuOMA(64 z;ls&?VaZJ7pqh9j#Ns+qLWA~!>a z(5;Gx<&chWo&1HJlZExhs&uF-8&Dymycx(2bG0mYfCn~kr$KwTyb8R_Bf>5g9$~fL zx=QN>xADEsQU&wfU2uG_BL0da3+^3z-l4-S>xXdA3NUPEU^{!DY^#dLYhQRv^u2TN zWW-@)sC8n|G1Qr>*fZ%JYwV=*#IxcT-uV!J=5=?bC0&lex?)wdHL@P%BntZZk33ZD zRjL}haI)9UxH7%VE@$^1wvq?WJ~ex-$Ga0}g+(07i6_^lkrU+Z{XjN_BI zaQu74;Uo)fE(@}2rfuV^Cj-uWt2fAmc5%kv41in~;wTGojE=BJ9+~aHtAE4ae0-5Y zijm@Q4tJ|v5QqC|pka)%{WIc6_$zlceP3zIhtI$b<7tS-4+I>>owXY_1o zr$F<1R;99$Pir!*hv;(~IB#@y^^Bw8pBm#595u$hS473&b|~ZEb>lnJqYh|w4t(9V zi_5I|{s~%dyLFTUGw0^cL_r5MVY3?WVthwa&&UjMQi?@1)OLv+n0&cCe1?2=ao$bf zk7(m8roh&uGLu?JF|fR*xanzB%pQDWU{yM3IG5j?(>u`~E!_Dnsp*N-iZ5Cn*8R-N zXi4~N3stj2@@B+9_XoSdp(_8>hEQsC`>zh>0f{`WHUDNgQS+%(3Cx&{yWCXl`SX!l z$vnW5*ac-Kc>potM$m_JyO2C5bOfHK(W*br@u7h7GV^%qE(h}M94d8Xb?2@P9^PV$ zb|&>ih}_?Tdipz(l>_=r&OA&ypUAsldn5(z*SL{fbJ@TQkj*N$Wy>)z56Vp+w9?F9 z8WcX8K=1L$h$-$23LX4Wa?r*68tn$J0#GUJ#;rHtOpob|5|GfUs1AKw+*9gG;s-;u zCPVG#MW_}A3GhY$%=H^zWb~h>%n1Z6JM6pqIRTzLuEwWUY#IU25Ux)AQ|*5!ddKgf zulEq9@P3-%{Wlx%<70%o#g}_*0eccKxW>sGj(NrR2qK-%osKx-RiogY5o~-%2vGF;@wv+Kw2 zo^Y}g;DGAF#%jFU)LGaANdPiG_iUTh`@VgtZcj*E;=BX%T-3b;iG>3<8kb|Iu2`&e zT!Tbo!Q{CfCz-*DfV}OF==6hdwm9wYl(OL=;pgXDgbf39sxL-ZLp@Jl%KZdtrofuV zvGwNO9+fk}5|eCE`P&7EUAr#{jdCRM`%ioW4sn68sORthUTS&#iv1MkRsbOaK=W_H zqS9m(;Ib83WBR$|iMOnR>Qq4T{j4!|)$Hi9UyX0IAyx=v48wc}+sAdnvzuMv85Gl4_hz zH8%JHyi0^@A}evf#^Lq!dVJK0^I4Ygd5(A3xBgGTDv;kr9}OR~ca zAAH^WpP`^af*YBL{pbHLR@f(0xbF|Ddwl~=0l#ft=w^a4^jFcq(|^0?RO98F&z@zC z+7k^9qW}9&yLIk{yiU?JLd|>bv}Vta6Z6a8q~3o?ht6&2UD1f3zo}s16DA%@+r8N$ zWINMBI^Wv)pZS`Wwoa)!i=jgI`?pG7Y`KsiI>K9n1(myOS7dBg$8WD-y!YaP@FNL{ z9!C`QW^Dy$47$M&_o)&zdF9BDnpJKU(>0$C#RmufzUq<`Rs*xR291Ca4pim5Fd1>F zC^;=XB@f*`{pY?iviQLt5?&e?B0cwD=g<6}zwrcB689mW3MPVbUkP==}=ze@UG zjX&R(!%)kddk&y+J zmhlwZ((uxNDm4{z_eS#ye$;^qo=l6<7wx=MC2@t_jV={MUn#fk=`oh*8Zzc^%4IRg zM0xpyh=@D)?oLldXvCMvN0iE!-JMw~eHI~qcyVQQZRK9z;?#$!kDnixxgfwW5VW?| zMr>P$StI^$=pt%*?(*s&Xn0t~%JYMGMXW8|+$LWDwimw23W32@91m}C*$M=Voy(f% zuWZ{~d0|jV*~d<|yr%x_POD`Hg+a-28~DdHPnoUmYPPKyz2oZse%{XLyuHV%dt&E+x)f{wEsypx|fa z_BJ;k&AKj24HF-aI?bWz2`}QMjaQ#Jx%*`EJHIA>s7y{hzc!s^t*ru%-@M9e?Pjkj z^u6I8-o9}{AOG>U#6~8dwwD29{&IP3uBIxs){@$DQeIK5dt68n&K|MM-@ZV>?1^$k zN;xUZ+o^u{ znG)dIr5xmktI51%x=@*3#~L`+;_zio`qXd#AhzfH;aTToij|o6F>NogsM<`Vq*wAG z{iO(>%lu2;NAKw?hn>06zZhXyp1ACHyHS7f@X_Y}6%X9%7@lIw=HLmo912bj2(tu! zi{BLF!_4%PUHK3Ep<`55#g}MStG}{QIlj2@30vGC9DmJ`Jc3m{$Q7D&V6!RM%pKVN z5q{@|-RA?`@4DuS4gYu6P7&PPd@q;uwc*_Z#mY^akOn@P&2w&VTDuMxKt;rFz8I=G z_lNlE4G^9p$N7oG(f(~ql%6XCfAl>#`TNAXnFB9)vqD=Lr6ATdN1MuxH1tG_MgKPKf!aXqF$Pkp7LRtQcHF15O1!)wQK(q_f;Rql+#CBYo)DRPoU z)cCsjMRTMh>r}>;l#nFL=AldoIkuHH5^P{`sdAi?yA*|M%| z`njRn0+Cj;ywU`_3i`5;BL^nY!DUb=vyT7BGer0)P;b+pIZkDW3|;|Fno=N9+UfDX zWV)KjdG~_0UJbqT$@Z1wTuIl~ApN&s>HB=Lq7F_+$387+T|s;dgRp0ntH@gdcf?nP zM5&?Rg23 z9J%G_1K<0h4~S$6Xl9h_DnhMrShgW38fB_Fnr8_#P(W+6g?M=^TnQ~)Oj_?KI=>>8 zwylho^#_I4<(m$~v91W2UOKIzy)yz`>g%c#iFa3v_V*t$gy^N9h0q`j{T0KiC;(9k z1;KVS!Yz@K@nl&(-+VgN?%tU$K$Zko)f>gs>5Kx-CIa+=B!2mnv3+UNly_?%bNXRf zk>bO^321kg`CSI&OwA(1u`ol$mj5Zd%o4z_!ljMP1g}2YC1wiTw6z5YC5(K9l@T-_ z9r~sx8i;WJIlW$Xp(w~KQ@F1L68<|am$WMU{l`y1;B%SMf+j}$fh|ju9H^KyTaZm) z5VQ&+!2&#Nt3DNlJo3zB+reyDp_+qmMx%(f~H-Wm(S87c^r0v6>q+Ik}; zG0=W=PoyIXro7`q!X@D?#MN4{2oDzYY^||FUHf8{@g!oAm!(i+1Bw8Nkff#~yUuKQxqpQ{c()}a*mgD+HD4|EYy?Uo zN7^kUmc{Pk)Ou?ainovm$S8oN`+jbi1Xnm0!h06e_H?z8;Np4KCX0+xBRFLo)AlUe zRmf!T9XBt0+4$vbuPpV!Xg=G&7DR*l!y4CVST!!j#+s2e*#~s%V=R<8haTih{eDB; z%eW)T`f}j<%G-|!-MEQ7Z9Mg z0|=xPH9?2&NV4APD&wG6ctzJ7(M0~r39_76CUEbDyB>kpeE)IlJO&h9N$WoNFzUJW_)Y?+3qzWJ5D0GAgw_3 zrLTF(jDr&YwVlE~zuT1)Uk&mk22=rZUSd_AAjTS%c684*whi^Wv64a@vciZ_9(@D0 z{@GU-3u@7t9u!$B1!e&^Z~!km{1U`6bTpc&a3pt4@h7CifI8;T)C(TxF2)WUV653FJ<#U|pew|~KRgO_gAg)JF5mQw8Z3qNP*i9l zvvT|x|9eJzz60N}G|(zB;fF=xmU&ygI?LQBn`nE^P+Ev>SH*O#q96S%ih+^hN4#a_ zCNv6M!M&8c!74zQ41{~j+&)6gplkKDL85a>c>0cRwwbudH^W(d$KePlf{ox21rihv z`prQqV%Q31Yz6B`88=pwm>4dKv7}HHxt@`^4uU?IeHXnNH_dg#F%9`dfxgJX2}K?f zfT$OgV5PWK1=XlxENO{OFAsO#rkoIumZoJN8A;5E5HDx~1nB{FFxy_VW{<6~7?UKR zu8F0IIFkSaZfpoC=7GCW2n`D4z~<(2189)cyW9#YsG|#sa8H_S#C;tgoOes7M8ZWZ zE$Rp^l~W~_`7)oj!vE++tW8v8_Ss!fO{;~>!dnY^t1EK!6^lJFO74gF+fGYbnVqRr zhvQ)&03lc5?~Y^}y-&RKm97lz^cq7vllClWBtqdsY*g$WZA^DC;Lmm28ynEj&L(`8DgdL&em=)Agtk^6w9Cz|9Eb zb^`--CADdFe-b zm{mU_J)hXxs;gNRTW~us-nO7B$|h&5(EdZAHp{MAA~NS-;vL1b?Y2`}Ryu9&uBMRL zNmxUDx!qq04A8xEOu|Q4`&uC%gG#L-aw}Q01{fF_4D@Z7yq1k-0X;nsZxzb|G_wIs zc@}IhNkxGIfz-g6=CC%BxDT^tm!0r@)=3^qG>(;Q+j6p$l()ZGM~VtAR@RmRr5ViT zO#QGeHZX5w###$rtX9A3c~qO?DyfjIUz7R7E4?Y%_3w0T?KI`eJFmYJb(bWJ#A6CK zu7$_GEG!~otXZP7qIIvV;YWxr#KEA~?`32F*}?8aS!{KAc6>n@Oo|le69(5HBY%F4 z&!Iv4@W8dHjB8fn2Pk_fl%vx`q!kiq@$1+S%W&3!@1>LkQ9U}m5OG|U5VbrV;E3Sr z4o@}*zKCH2Y308c&hFXt%;47c);O(C1xq4a9DjOp?J!=+X&FP6uEwY6S5NWjRRZ>y zm`v}leH8Y)Q=NvVGZ+jJQdi}*)A~X@GNnTM5n90=E>`7ZywB{E`!tshoia$c!M%dC1e15(>p+5bo7-nXoC8WMbu|RdP?KTp8W1Vac!VM%~ zd_}$eszFQE5lMQ~oC~);S3_dT+51uW0{3gUJFI*5a1Xs5@5U*+V=+fBMQ9G586KJ$ zUN@6^kj}otcm4ivR16Ij!$ED?cQ`*mD?J6}nU>+JD%YFOT4>}|@<2@#rrRb^cnz9P zg!L+62&{nJZI0DvPW^^cZ7DILcs=#u3mNWa#U>FiIx35n#+6l!(pyjSMfsdhy|5Zn zkH2219(A;?C&IWrQ{q?ZpjiB$Wb9bJMrv8VOP-a|%M_TV(FQ$&v-?XBk4WQ1NjQvxE zc^fvqC=$aRiQ$Z-u#my@yE9tXt!Wu3HV<+M8a~N8)D{rT4!FgOWRhV1vo*c-3FTyu z(pg^d62_^Z?oL?!?=XklF-9ZqHf9ZYl^22302#{OZ128kuR`P<#)^-yiqEaWDZ7`= zg8h!^$N=HwAA1L%4xQbyyBs@_zLqiMZ_lTF*XR2ra}*V`g@|UOl2%c<@;!u$u{L># zsn>>R4^@kg3CWrd-(DvaYFSBY#%3^piN!mbWvSaZ7x72l*(SIORincQvmdm|%-4Gp zt*QoP^5}8h&_3Wh)fAQeR)wa%yi*`Y>$2Y#C5RuRJ++Isw?Q_U#r^F%^m#JA z;riW`k-@9C(`gwY41~x-KVOfs>F)^TxUfyJ4z4yrH?TW-7?E8_jO-WIaEl9{V!)NN z;TKGsh6xbcR!&!gKut9P4qM))92z2IJ?uTKT;R2D`1fn~jE{#|*L!g>f&q73)~w(Q z$-ND#5o=F^`A8%2jdL4MJcCi!HA-XW;$TYmOw-xEOOE#@KXvQBY)LY?QM^wvY5^_n zAZ$L~;?&K`4R?5d%!zvjt z^0T7AhrVTrs;eiX-I#tCShlq2c}edbT%jC;vN}n5_d3vRun=-Dg@Mp!^;<^kGiWjW^@sHR()2^VW1zrn7X-R#(38KAC9Nzf{ zgum};6I(3ci$vz`&3{vP%Xi1Up|7WM)em;E&Rgm!t?N_#XL9o0>nZf5PrhMs#fV(j zGEow!PXg((7%ACz3D3{!kTH5r4^uSr*k0gt`@;(X(EW!_PsjBP0i!Qfc6oa6r%^6q z!bSmDwU2Nxc$|++CS7nc`eJRym+0^XL0!E!rrG6Ief_jL?Ts+pCo%7`_np*Z$YbB8 zDHlFiYf-s;borFrbU)`)U(`+u7ks)Q@Ko+x|Gn5SYgX8iC6TmJtki5M&G%+Z`pZ}! zOqSjK9AnIv+gj*ZO{&$2lii+}^Hw?gVHK-}SHt$UjM+MG$vC{yGNynlmVrd~FKrJ2 zNv^rquFH3F7N%lsdN1#6&?bG_qqFL>T+lwp#J@APmKbMMUo`rZLT_c_1x@#~Sjh*k zqMcU-n&*{ITRkX#nF5qL8zrNtPvd49hm&54$-oV*>`Mw6>&5zEElghe({#pCQ`?o)x z4Y#&CVeliMgBbln@xhOa=b)~Ce+$1mfLUHRORgA3|S>(BYj*m|bJYIqCy|=aby1FL|MsQWCYXz+Ke7MwXZV5+=8mrpN zLivy=I;)s!yn{z)@D$tff{J_;%782^B2_Laq@_s^zDUrl(9*)mX>0NE;d*ems&e%n zIX>;4CRG6`{>r|7zVXWLo?$*Mb)L%!UZGv7tv-0|A^7ZhSUDW=%E8R&UET*h{q@gZ z^gePczGf8g8PsEbp&-JOjHI_1rpHK5iF&z!ZO=iJ;8=drsH2WT;o3QMovW*9u5WU0 zi|J?xX>3vE3;D~`ln+R+n7T!IS$m&=&G)V^%_OyKNqL3h)@yQ#tWqrwL@5!H*D*>8 z_}q={(kiznrK~~|*;r+f1)3I@>cFQPq986%VRz?1R=KJT>31-HqQnu(1`iFBUv1wT z`J!^PkjQ>!F;{ia{IL$pn1w-otOa`g`v*p*j1Pdm=7!SsS2x4bC@dBPh9 zKP``32+2{OqL~zSw>-%CwUzB)0XmgWih!G|Pz+J+hfQR9j!?Z2f+k-KuX9>6xAq_O z!q^P|hei;1ONsKy7TDiL$|Zap z11wIteqEOHLE{-1^Gz-wx<4euRawKH@gT=1${i6aePT1qfcz*AIy`i_#g=X*psG~P zR#6ic!Ngs2S6uL=ed==T+05RZJo@;NhFptXVYOdqVTo?nc#o|AzwLK?%9Hj42DrE` z2}nE>mw%@@C!Ija%EV%$vh%2IyZP|Oa3PBjQW--+D?X z%GugQjMB0-hM#hO;iH1pq=q(qvEL*1ip?9wC%Ub#X_L~jXX?VviR4yV^)A1r@A>TL zXUW0XpAz3LDQ&-*m)p~OOxOYtgRiRW2A#{z8pKt)A7Hn5HZ8@y*gR8 z>renq`mB4gLD1Z;*aS_nL_Z3Mqh}{H&De1?z4xlT?1mp_>53W)iRKLgB#KL#Z5#%2 zWjQfVALcCH;@CxkOeQ zX1B`ftxgXs%_p{*yyTzGPCHHvNLv(85+d%DTqJ(NJV^x#hx%x*G=o!Hc2B)3y}`_+ zkjJfYgBLK`)tdSFnf04+KvLmOC}hjd+*vL+vUef@7`69#m{E3H-?7(69FYLeS*~ubrB@6QO`WN^prV1-4v3TWDD)EjLia`?^a1x}>^NwM;UH zZ*yVY_tUmS>dB4M1jwzdoO-eUN7itPeP}XA%h8l#tY$7VDl8frq5Bt8NurNp>=_i) z&>Scz0w{ny31z?49My9qy`qhw>^uwZBIxoI&bKNB<|3D$t*VRQg$O5l=k?aIOlD0u zSUsi@x^+~;2G?zmR)m=5~GqaOB8&&5e)X$y#D#I;EEufu$h0@XpC7jTkbZT?M*fT9PBpKzO z#Cy?@8YHM@@8f!6&+!w&6pRM-dfK0`y>pqPOwka5Dc?op)b&=wU=86ej%AFzh2{4w zsyq&kzgUy*1t#H1k-(&K1|8TP5plMQ@>L=r^`pSl!a1GG=Luck?&v%(e*}s%(1U6r zOMNddA0mE^D$}FD;tCdB&VIUZdY8FS+{>I>mJjd~xT2Jd%1m7C0%op^61H8%Ab4c* z1uUPnA^*w`Tx1d4kLH;FqtAYnVD~5~W6i%yW)f`+ZV2DWOgP0Mu4!d@*%(tazRx`) zvJ_5l;97WWS?Z1|{=1-IE-78y_XYJh?R4JkE85b)xrg_dmP$*(HaPCMxq3XL?WeBSurZLj;Jry{?=YO7iVt$Sj|K zpyaHVR;hti80UaJw9o540iLzd7H4;io^&&+`y?b+-KtXfP}Qs#iy*cqW-LOnZ8&rvFyn+r5r!QNDNO*nt#O6e*be+j9X(5*3XSkXV#{5B1u8$k0{?(Ma zVP?+2QRoKtcRXr(u=P^N?}k@@G7)+coTl$ZHh&vV5w?mSpk+(BG@tv0+%FdwBUneoGKPnJ)zSewYeXCI$J#cvCYKE5 z4KWrp;h&a~FBXlu@}1=9hvgzLs;3xy8HNbA?-|<4JYgBTi6q(V{tN^pXFG|&O{%B znUEkEJbB|gDu_c=r9xvrP}*i7$i(zd1`p5{G};glDeyc;{3zl zU=>&HtBRO`7sjNOo>DINJQT3_mRPY0e2C0V_Q}pE!|(PK6l$ZOINF(3so-D)DKGsF z1#|x>)|rmg;($Ch1MmJ)1qjC2x{AMH=;3LCt0kEeJMfH$Dba&RwR#{+O6HxZfSd}wOH?9bhoE!l7ax7 z#Q%FxM~-sP3PwMcxi`s;WbqBWwWUjQ<(DxA4V2WTrjpOrU^?8;|G9^!CAvQ$GAymI zrYLxw5um_@E07>10NT5XNKng{F~jW6SL}-IJVv?G?b-)gi=$*_8(?5sQt84pG($X#U;|C{vt+{BkqSR`Tx=UWZUV5;2g zr`s==eH`b5P{l*bV#}0dopFF02Be1U6w9&Y)@VwchbMo2cVkvy9x8@hyIPT-1iOob zzfW|(=~sS)j^NopB$j zx*y}6ly!SR)|s2oE)g2Gf3$bbhd(c? zEr+r>n64qOL`&Ug5Wa)`^|N7u(X3vO1$wxX@f0J9V@kLHKkZzWQH|*lmx4a5mY4C* z%=o)3uuLWC9G)mY6guqbpE4J{MyBu3!D@AZuQ|~%BjD7UCrTsNS}*9UrR23oRGOaMAYQ9eIr$k4sP(`kLbBW2=N#Sx(t5H_-szg?(h=mG)e%5~ zW}z#wWB(QseDb|{KKdvyt-m#*;6J87&vRGP#pbGjY82F73aT6rMbV(WbhbYS;kd27 zYbe!FL3p^&$DCe$X!FzwoA6U&1?^EC{np`&iy1tmhQ561+y+LOa-?jq`mRkw1@qWe zKO9aw))uWqeA0t5PLdMgJ5L23aKKb;-3l+`>l`r6(tMHTXKJ5AK^4zIT`9*`p+Q$&%q87EbU-#;k};N0>m>>~Z~97ltqJ`wzM2=J5;QVQyI6LHEAF z=CWF(fNlg3t-z1M+8K_iw83A8gSvq@a=(&fk6DgdM8W;AZVcW56DZE{YI%>42B}&$`Il127Ay+Kxa&b zuSAdG1>QGH5ux`yu(NqId2QD)ym7YY4zF~841Iooy2&r-O}NdS0j(_qr~6NUMQ=cQ zmFP!E%I>2N>&q^^tC^(&^+sN?=lS)JCj%36Tr`QF!uqlKx}WEEgxv?aJ{O4_lE5Tw zeicPo-VIR#9p$_}Ucp6{14!7cnAvtheJF6Wn9b}!ymLVDDi9Hx7#+F;PltBmoY58< zB;o-P27oT%%-0l^So3ns7MSV|mD~|I!v=*|Cm|n5kraFFN7d3%7loAsGw(zAb+-t; z9)l4~dyD{a>UdIg=n=o7OT^^BUjJTO-7i7{-OKtqUO9_Jc1uJ2w;|Q#Roz#>Ws4}W zl_LJ%BYdNPar8w0x?fY23dqkCgVDh-3Q}#pm|0_Aa63+w$mT)QygA5_b%X~H{P0iP zQ6O$;nz4&Y=+1qeqk|B{JpF-V2!h(2* z9?-3TOtsrA*`WuWyu^PDKBUXC>P~y0R*=>v)}iB*a>9EW+Uoq%KP0}Y)7T&v@-u2} zwHN=_Lz;XJ!93t?b|QlmeT|R*@8h#CY;p`7b57Y|>?pD+p{f?{=AMr{ZW90@U|#+* zNkKQUTv%R+;AhT4cypl;Trl%8o143n8bn4A0m5$1y$p`D65|L_ae?)>q=`4k?&9of z=15+TJ(zx1i|_Oo$LzV`$8B{zu}-!--8LH5b>zEcr{D6ul8=7fVxvuCg@5iXk2ui< z8=Fom|1NLghbY!H^|#k|g6Hc=`FglbRSlVn$1FT^ECvjT ziw3QfXo&L2cBDAgJ;HvJ^_frk=?$?8%L$NUo`X!p+vC&|xE`&2SI4fwtzWi#KCAFd zauWuG3t`bN{bpC_eFb5|&QZF8F*Csla$oB_rDXm0yL;jr`vP25cfWN`+;vfr0=T;B zjBJf6j}c>gOjiEZJ?B3_DBlrPUPZu~5jd0A7@ybYMiIN|kUL%KggbZ<(qZkRrg;T* ztgLSTy*SuFSGi9Xkg>a- z&<--;b16;5pSS-<(OEw<@jrfiw}6cpD{9nWqftjUY;-fa1V^VjQZQh2O1Hsi!5WQ% zIzmN2B}9<7F+#)!M8){Xm+xP&A8vQ|x@SEM(ioFOai{$p!w)!yrY9?NSOdUlrCx6M z*{fjDwq|%&)y5qNAVBy&Hf4pbn?HGNc!_xV+?$FM$?I2Rvo6L&!q3Sw9NVJ`~teK`w`%<)VCA z4@XORA~fyKYg2)?!(okn;XD=-Ss$+Qc+7F{OI?lPU{L7=SUwwjPm3+Jh4r9rO+gKJ zwMoa?$fhCEOF>&V#N9vdD#)Nm=e0J|Sz8t&aVG>G)tkxO@*Nz0wemzY_#4QNiAtNP zyoDG_FT}{R=Gl)`RlW<6X^+BnYP`=UKT&9rXMi`CKj7nUZ!7f|=5{V?U& z)aFjQ2GqmH!e6PiCeQqMPq9!HtW)~Y_mT4SlE=)9sI}&(DP;ILxLrf7$kJQzs^!Dj zO8#!j<_C8wSA~E1v*FO(=^YchDgsn*Kfr^w|D}qyt^ooZ8!Yea9z4b%E?*?RH;O?5 z<~)!YI=sLm_cN826Q2Fi2c}JOsFfw^+E%d?0u&x}ORt^Yoc-(CHg3D0K1CP&yq@sf z^gnIhb3u=LAVYT0W9Ugv-%r6@+eA~(e<|lo*PKi%potgthIa%4fFv zvR+ogUzfWs!NBlwI)r8bFXhBy3}~JxWq+W1xwro0g_F}V({yxg$T|fD;#ryYnqoxx zVzM~guGXoJqG^|>nPrZ$wl}G9$V6onHwoY{*VB;7cx9wyrm`Bph1zWy=qStr1|5I` z7J_&9`TGP7VTLl-p;<6x{!EK~Wk~?w$y{85!PJ#AH)UityVY%x63E-gr&;fdH(>lS z%TLgfAt=h2`A8-li$6NC#Wa_sO50`CHm`Qr3m=hX#*L2S%sk8rByGFx3i%F8yI(l~ zMr9+!g3OrgEO4f)eYFjF(7k0u3#ea#UnaO$gW%+;<5L$bP(YE*=iytR>?<2hG#uRF-e*}9TI1)8sD;D8 zPz%5VzZ+^Lv7aT2kK{u;z2hlf92a>fd&_;>to*ml2Vv>qnQg*BMU}kOeUP2M3PtFa zvAu(c8DId6;V32tWtIrCE_oV5J55_0FO-gs^C%XP0jz@(#Y44JX_gDM;q;2Y#FQu# z=8BRO8*tWU?*Z*?x|f3arNt8Dl_~nUqBgG7ycluqS4AOl9kmVcD&s&%y<-0`d%pT~ z9VSs3g&I?TaF*k2`WvM_T7ljIU(l2}>%Ff3Klfk!c@Wu_djI!Qo8x@R#yGnI~h<+@o*d=5SEdc-^}-H!OqPw zWnaTa(ZgRwSRe}BmzkZ$)D~4Vs_Ldf#xF(5oE3V@tUP;jnK7P{Wk!J?yZ;&F3;ATE z`9ek#^&nlnZ>a}l)P#;J(!Cy1@i??b-;5`sLjF%Hofb!VDl_}9tJUNenTa%2)nZtf z4@mWH5Cybm4#z|_*};!&T6%7zgr1<>mkdZ=v9Uc}@1BlOy4I2jDf`>DF3ng)4y09`1N+*Du&t9~9;4Rg)ovyy}eO^s8_5H}To1}sg zo~+)ULu7|;o5JD(!ETPaZoMYa1ZX#mbngcB6HF61;cB#=A`Jqo0EbNLsVFZZZWebMm-Dq{(ITAN9FZu_##3H9RZF)<1` zO3M(0PAcpWurZ!2J_MmLQNYG5?jVV%SVf0lXEW8v+xkzbn?^2m`+!^+EbF@16$RW` z3m-G>bPMs^?TuwPUi|!I}`pJOo$pieV9zpak1f8@Tm&jC9oi7 zl>n(&$z1q{&ZV+mE+DTo0)gj%-mE)lOJ5CqkVCiw&X%WEo)Ox>9ONpfa5DisI7>%e z1KI)R0oMarzJp-bmQaOXh8eLGO{h`~#`78&td?4#upAp1W0m&Lj#?rmZA=kz~-Zh&`K8U zU-TL0-W#D)0 zgU|mP(H@VnERCreoARDgk7zxn^S3cQm%UBU{Zyw}{F`s!zFcl(p=^pL19phq+xWkx zCxm}`@DE}$Ft{F-zm1d0$4G#Ll&@Xb0`@b2y>(&vJrJ*InUZ7-hOg88EoNLtmp`M} z%A_N|jWF(6{vO9_ofVPQS^~vOQPo5^>AdUBw*-5q6=EvxYu=b(rgAnQ+>Z}_lrAkC z`5k6`Urgcr=w99D{wAq&FM^^kQu7r1N3Z`Ibdc=Y%e{e?^HC?mZbx~(ju_ug<%e%N zoQx~fe1tnBR(n8eoSe~MAN)BkJ-K(~8yIOq=kwbHtjj*SSc`GNa>*HRIT5DVUoNjA z%)`#v&w5Djnt6kg+aoZ@>|}apMzhTYYi*R!@szLO*t}0Wrf3|T$W6GvbEbWO{(>Dc;wa58-fjGgNei%$oOL}aLPVLjhIj33(vK@}yVU{ErZ zS0f>h-{KlHs8JGWwV5x`yJvrO`Y|f3|1kLl+A-dU>UP4SjhW)ce_@MtaJQSHKXi^U1Nx<&QbcZbnhMblKr;pd@N8 zC(orH10#t+4|dsSRm-?1m1@ce>60ZuZCTo9vW&bt`Vko?rl77f$S=M%l(?R}+%D*k$61sjV zcA=%t-{j)9K-yWKTX%ni#Vik?&YY&_h=_`}shLz1&uvxQc#LScL(bLsy{N2AX*V6pJWFn-}?O7wWh{%aipJRIr%n#A+s3 z*j!g6&Xxi~G8N)Uw2Qn7`|`|NIl#Sd0){Bv&rSTEBtadGGn60!>YUSTX2ybt_Je*Q z_uxQJP4RcAv&L=#N~cVJaris7LuI;=!yKVc5D5pmSJ=12BihjOJcQyTrOrM(+dOzC z#m;QTdl5|b;J}WsVFwj{VWx)QPHGhwN+gLMjR2+u+tb-B z9i+1lzA|7CV;OAA0W_PaZ#4{Q`53^OiKjX7u!F4HxY1XlS)8U@f zLOV(!YKwNZ;^cLDsvj99L{KKRnEh`h`Ohq_lbMz_W1YnY_~Zgb%Ma#y-O#Hi^t4lu zECI>4dB4qNDI16HB&e9IqyTjMS_t+|Xuv?V%ELyZk(}I-F377MzgS{o*SC~=V`^kM zrzMuy)Ry1@?QUf5xbb|<9^L3!hDTOu%*`_5Uj}k>M)1*W-tlJbsl_rYEZ{V=pO{7{ zuUW-0c@?r(PpNb$>(GFhgU%yCYIKS3pr!sH7gQgooXG^;UMk|(02EL#Srj<4G_^7l ztTcnFEH8`zl5vXsX;sjP1fQ04O*UI3L_?Mhk_Q3-CyN4(AxK@0%m!6tZ;FEKOM#wp;il$uw`~etCW;6wu*!i7 zN&p)l99o!Qg)QmPR-B7ctV)fQ;;mzkWDVCNB$aBQ<#TpYx%-lLw`+B+!ZJ4D_hvym z+~S)$hPWAOt7r8+qSK-F^x$8IR5b)mgEPz*jSeN3u5iTjSEAog)L2xW1(^2mKy++& zK{uo3O`?`MLE@Mvf9IB)&`RP>P3fPo(`dFFNI2yZ3meo0JBzJgDPxY%U`HtMBlM!! zE?>>Jr<~qbrq&duoq_}<SHdAU7B3ouWC1}6_f)>;l(aC4VOJz>Jw zS6CszgXlUJyBZQqEESOAf+Agxgo_)NgXG)6my-8%^kqZtyv^GeGk?~LpVxw)^HyV9 zLNCgSSyv0*CtGYs26EXMuPfyq_Z>Bft6s0HeLlC}R_r41k=SCHEYVB|c?L2mPR7=X zUd%*6B}#Qkv5K;dSA^{v-|50gG&jv{iGmG{5M3a0R=@UiJ&6xoOn~OKH|cW_w~5y2 zoAyZaIA*x}x_Y!4m$ceKrQk}MSMnaHt1V%WQWQ{hiprWxR1fP=>L%7Wigs%h@V6CI zh%;rq({bt)T~6Y6|IW+9zN*(*V;ZiJp&m1OrH0EC%6Z}Dk!|8{k*I@(UIW9vm_x9P zlF5Q&cVnr#R4jY_AR++)81!Rtisw%^rcsKHlwxpnpu?-^NVPfykSnY{Hwe)TZ_ZpH)y*DQ!~|SiL`z^^ z7vyvskUs8PvWHN^GioScK{r0hSgbC+wRvn^;ttrKrd#T$>klOyr*>bS3?fmyQ zU*EKQOkv$_N4Fd^l7^nOHGbgvC9ZlRy{cM2h20DM*yNx7K&nvjM(njnPy`0ajuUu6 zzXd>wTQy&MRuv_*O$lE14EsU5m<8(I0ZBlsibL{`J!tbEsZRW(*WSbS@WBS$$u)k+ z5L(a@2e{E5y5hTo`yNtOMyfliVdda=T>?hFS)y_w*L3kSS1??lc zyQfBPik!Z?aVk}T0v4uVpTYUzeH~J9vkHA;0(YTZw#nMxkNN z_5YpV|4^mwcgd-#`{h>Wkv)3}md~l#!L_aPiF+Xr+W034aSh=XR_mZY&qAh8t4>D+ z{1z{xzz|8_K=y%#gNJ)*xGt>vkPoECgt zG4fJQFfzgE0|==dqwRuq!q2pRZuMWnBcY&de9AIu}x_I}4FPaJ3IbYHKM8l8LX0%F4QTc=b$s z*pLx9r_UlG&4GCd!%=F?YsG4}OY<%jlR`3999GYsE@xg_M;MKM=n5Wo2H_vgW;g2; z$fE75Ka^Q3Idrf> zGj-i?|E{n~y@+q426@hmbJuXguA%w9NN<*to@=ZIWJpi=f}FvfNaln~vzKpx?!tLZ z?Vdp^(8O;(SxjE&K$MF?m~-a=&Jq8$71Rcoe5OI9VGTOHP z1Ca2+!4a4r2rqLk^}Rj(Fu6a}>m{BBgfv|2(>W<>K!l@Hcwp1v=z zP6J8K@B`}ND_S#`)U>Y!@?XC?^H@VLBiU471`uU}z2A~HHcz?iL6+b+TiK%FmcoY2 ztRpTe+KuKCF5mz{{oEe!!KlQ6u&uzFf^u9A#lMidUFcAo)$**~L|<6r62izA-*jqT zV#{vog|DGY_yz_mHZ91oD0b$vP(#V}xCaPb`43=#VKau!LxusrRpWe~{DeQ*i)^W^ zu(|vWzCm(W&1zfS6=+M(T^@^3-66g%75Hygl}k4HFQ!>%8F+ntzz}D4S_-X?lA#=h zz}01>8Ilj)Mjk#MtG1pMX?tFq24u1z?-c7pQ#UkNZ``=AP&BZr8+V&`Ut>xvdvGwz zumx(EfBwRpM5l(3UNDm!b(8;}ftmkMVRCI>{h)m?_N-E<;@0JAQOz9;^Ufi}<>(c! zsHd;it}*o2E)S%O&BX2M@yo_!vSbBqp7ZO^MgJzN`DqcUtI-3m4u8o|;2&k2h(Pc5 zwR=iyer@j;_>H(k&efyn!)bu`=1sBS0TR=ug$YunL1k48`UmTc^IO82@Wr ztne>%>MD%AjMd>1W&|V=(OVb84?}p9SdL?8t(PHJ_kVPNPX`#3beBS}Tj1AX@;)k6 zS^o}kQb8=-Dlt*{@zR{XEKqJQrM&?zcR|gOTB%(ld)u#4An6!06w`Fu`!%&;uQR=( z=qU;jZT+0rO>nXw0Kw%*Wz9I4oA2E3uJ4@vYmFW=XcylH9O|x{PLfI4L^5^j)#+33pK}e}QR&v`cZX8`M zkD{Z<&zc|N4j*Zopp)J|EwrHd*VeAC0su@ZVG}O9I$NQrVwUI8XqE+lEffydZt;0u z_d9WJ6rMry>OV2kqFu{~pMWB`AbUDT2&~5o%|TPooS(QCK2#kDf5(y1DO`tJoY0N& z$rN1IW7v#3*RmhADMt`kBQDXY2k~98huhp@*qq(zXDDtQb+J^g#pY-DU~>^f2DAA; zHl<)g@Y^AuD%spbetpmWmjUL?pI^Dg$$H?y8g;(2ihr;31Eb{_VHJnC^rqQnO9!mu z3+H?QH=FBYXiT9TXN_Ih90@nr!9BW+A7q;-a4 zfkkhZT1U8Ojv@ek&Pb4uVE9YQ8kr$Za;cv$fy{^2P!nGqf0vhBGQ-V-t!9U}=e)a4 ze~nphZ9kZVRf{zP39~3*zC#Z3bhor6uPXV2KD?!<0S%u)G%)I}@^;=OjCz@&u8d+^ z+>^)DG###tJ0^W!mqX!dbuu;XbKG9j#c%VDAfes~kC9{C)4rNrO(FoaSWUOSL{W^K zQ4DCaM#%dOwuVo_Tk8~v#})p$tjo;W_>HE?$1px?Om06RZc)54_DOMCJAL!?#hHiX(n-VvEa}#h0IC7u#OAwM~$qWLOvOzRG zJidQ4WKj#H+W#M#**a5Z`$IMQpCr+N!TGIueBh$xtAnTrMt`*TnHpIV4X56sbSqYt zhFSzau@bC&a&cnW<|{HBX->e(8q{4($gQLtuWsacWxV)){@46Rarg>^2dFdoYz zQNu>2K8!p~ETMxpq`j&LAR(JZ{?qKyna>YR{zgz?D1!3Rqc6bhR%7ijp{b<4Uz{7y+bl$mLiG1f&!J`q zjwm)-GO)_FLl;>fSOgq6Uf^~~=RNi7bXG-`U*7zro8FjOIuDrZ{Z5(!7VRB@u|rli z|FK8S6W4(FO*3K1m9FQXx6mE@3P*lx{Edy#D3AlPK=4k0upjol?BMPgfRDnov9@z{ zc+PD(V%uRC33_*X2~_ZANo)Gm?k+(sZcvowfO~@pAWLHf1 z3T0ZFvn7W~rm3aoW)*kGUwFot5iroo8nu}vS9F9A!N~=E3u``K*}-~kdiTS%#~g|` zDZF2Rr`dv!WI$aQ1H)x!*%dx7t5xe;>-sG#yJ&To|EA1?K0xADPe9=~hau7}QDVXM zUm6sMB2VgN2p2cM56XwV&ax9a{axX6{)b!?1%$mwK`1dS_?KrgM3&t9dmUF~RTvqf zAYqL3JTPG+;?U%p&QH>8OCOfY0I@0H_S@NG(g1G%811SRT5R-?Z*0x0^s0+q4x_pd zay{v9aPi`F_3Nd`>#0Uesg2Jf5nHlFKVRfQ-d}P!0$QFGmm)WwhR*s*%*e-UDYC;| z-zBYzl&-+7A^6QV71Oz>P&y`aF>v&&%A-J7@-CwVCKR)!UMu9GE@6L#@?rfOuSF}n ztaa;trE zle$IqPMM#^C*)m=3#kt4+BN4K&7a(F{6^o8bCh$u2qQ?nM-}b~t-2^nN1VQ%&N&;-EpMG! z{KR+On{M*FU&Q{#$Q+z=JO*w->PD%>?v~u|A_nH=qC{FL-S{on!XFCfGYhXA@DDkM zr$_4fPtsZ&VkAwW6x9am_7UPyGteL%jN4`PUyT`qggJaL7o+AN8R^IXR;EfqAiq~> zBF#LhA;@V)o{2J7MuRM)`LlNN7qf^*%;CbEGx zCrf9&F-ioln?p*Ttsy^5ZvYZ{Uo+0W+H{%Uuh3zQU%BgK*U&%=0Dt-4*veg-L2~U1 z2|Q)~1{AWcZRUzSeq9g~_xS*D6y7Khf-{u&cmzbOrn_`=kEkcsTU)<|V0J;U8`lm^ zM*9JuDmgGzss7_*ud=OKvhQ@?rK1W)KmO5ca%h_ zDej86Blaaad0ujvr>1>206W+&h-rF3{N3sD)O#W7^Z!`!IXNDB|Fc@qj1&DNst!RZ zI`+=o1rhEeuPGCxxEb~N_$r4u|C?!huxeS4PkyzJC5haMV zR%Vw4p;thP4O1e+ib3`zG(VM}7!(1Ltr4#&3ie~T_x{ZA1rUv{4sr+YJxahFO)yeR z)O0J;lBF=g1DSt#u1f=NDR!Jv;py0{xIz*7GM@S3o#znEDF!Cg8JlgAk!9W$^~e>U z9vUz-irJO7+DUZU?RGx(&^S|3=f71Fu?u9Oaagid?qpa}!?u|F{2^N{AO7^Pe^tq4 zivT`DcF5ICWJgW&G%jg^h!Ce`zU>5Q&^o!UbCsK-OCaL@5v{-d)Q&{)SHU zb*x_+0el&}4~8&A?r8`Kho;oj@bwT}OIXnAF;88BsSf7!>7Z;?4wO(1JvI*d>~6dU zL-^?u-FF55RjTH{gDa7}bjt-lnmamF$m6&%6NJQH*~U+p0`V=fuACzCRget%?CCtT z&vR5!yZ1gf>-0BXJBaooD9K*JClM+| zfc~Kh8_z)hZh`RKKrT7nOd;e(oBfdpaBD6YQhI#d+Qv}H(VCrdg$Y?`luBA5AJ0x$ z5IIDz^mT2KK3Svf)&t&&mwOWuus}x!2^Tw#S>0v?Jqd$LG36;KWyeUCQQw^Q8EV1q z`+2e&rTX9CYjX(}OW|I$VgqxRGlH2EC40jquzrXNv8JFb7C-14C)R zWp7}7!qdy!NTnRA$QFH7c7RBv=EoO;d-86~`5&+JC+Ir8e}Fv61MnmY0;MJqfYTOJ zXe$?x!PJ+JApwGyFd4kd40C~<_!?5_qKJCEni@$|GsA>`coz2HiWW$*vJ4may2m?m zA<>I9%oO_B6$a+@SuF!VhQi=nYgCkVe z!QPxewKh;K7AH~@d1PDhWg8&R1r2e05X^ef8a-)3WE`4YIS=BnGdF>%@-=Bqly&G5 z|CIDtF5h(CcaA1?Txi)||cq3~7;LB@&}G`d~>AMGeQ8kT{~$PNvL%ElCTd}rRAq_g4~wEer9@oyKnV% z#(6VL?Z1KZ5$OShRd~cV=eNx!1v)Ojcy<4kLjUwSf5!U0;5dHDHF>h-+*e>4spULL z54#rxy1)cOIbfa1;}YIl4YP_>;X&ymZPvd8q*(BujkrI7Wq0|`r2m$JSCGYjN)=Yz z6nE!;QI=J)SZTWyvWPtnXlKuIn?AEN%eU3;d&_+ezfd-SJf0x5&5;GPE`Lf07-G{R z3rxOJib5hxFRBZSi?juOFqWP*Z4ho=e001K*5>!Y^((1u-Zgcq-a~?nQ(^!KRUOk@ z3m2Gbnz$vLQ7Z>MJqk}Fg3LvUEVmi3aFi{azOP7Sx+*PDb0+n8HGTbtZl3oxYv|W} zmvhNtr|3gj>Xeen@m|U8WYzJGOHU$?BMDswBbpVpVK--yxaISGor2#ikyiOumFYmW zd$@aYxE=A(A5p$C-Y%3VJ1X>H9*-qXQ^B1CSyo?C_*5lY32@ zp*rNq=nO^pBPeP4ywnV=$c)wCVXL&@qn1Kdd!grh)wZ)^=wyc8;TJ<`Tu2{7-<%ux zywZeb-OPEJyIVdhJy(DEWk&ev zuJbV@m@89$oM4&2b1XROm~gg43C(tNZ@obKv^nt#kCS5QT zf{T<&i{Q#NovM9C*;gX|McADU`hMs`f^%zB)(_PAkR)&l@uEQUrS7uJy9@nbk!E0| zVz((^XCc7sgM7&|(}-ZTX8!P7_3Yv+Pvvx!{-!0u3k3}Px|a)LCJ5BBX3oR-H+Rxyif@X8Z0vlD*!iq_73f<$@$VTwxv0 z>YAU(e|q+ATH!qYKTb_6}?8_C%)-Tj+&x1X2zg5@&SbBIr7-EUOS`BQU#TK=g|E3NfVJY-$rKh6_aq^=W$ zIgdYsR9bC%O$x}%9{Xbb$wl52l%U4YK0&(FQ(}30g)?~6N4&Fav24XyTtj>hW}MMS zlZiHVe1dF{&Go9R`@24kpE~y<-+8QDDEx}G!_JsP(1qF6`H1d>b8~t!Tq8EvEcxF? z8q0oMi`U6{A10wsxHJRv=SIsiH58aU?yT>X-R}MbD2b6776l47fKUkj$l%R~L;m3n zj?0w$@kOXt-C}z^tA+w~_Xp-3c{OB>u*ZWNuf5fg|BBI|g*%?xB<(ZnM0cfzlJC4gY0qnD z;+V$14TR_8S0T8dAfA|wM4~0K#c)|T+qASiG*N=DEDb6zSdu3uScc0G5Mb3ds^!%Z zYcq=4RU2>(6{wQ7i#N*9J(yZmjKoM*!H}X<89}OQsHbNbYfsh@7q^3}$P$8FV#CxV z{L79Q7`Vp=xVP8JM)*f;h57r-e*f{qAfn9R=Z_aJoCU7c5=QFJOOQ`oysZx8jnPqj zXt~jh5oCZ&-rvzuGf1wJq1LA$VcTF^-dafk;D>6pD!obWIDNg0!XyC}EK1TOK(r%< zJ$lBCGKV-fDaGy}sAc1o?a)A#uHtn#FFx-Rg9AwB!c|d`1THmE0{U2V%yNQh4U=KJ)coU`Q6l#2z5l0h>6Drbs(0-7T)3uKrQ_lnq2 zs-AKJCMgy;0tj7MUe4gsjX?m?VnXMFxWkuH=W|tyQk7XCA6_VprFY+$gZACr2RZiM zEwyjYK$Q#2+Tz4Kj#`!B@_mVx8Z2*Re=S=evxWUcpf@Cys2BzsI9AIMR)5L3?}&2o*C-RF@<~=EJo9=Y&L}%I6oU#U zEm)44K>-GH-UWYga74C}j1h>J&=Cc}cW+s9oPQz8H#I^3D#g?C*)>pEqLf{vP0@|! zV|JPFCXY@(v>64Ob|Z1r=Bd)&Lx&m-1utUZ`sOpmI^c(`+$kz*0lxFuopX)fa{LjB zEJ>#!Rax)HYwb4KSui+UJvXAs($zBhy@S5IlxuxgeYMIpm#26Yi&%g^D2(=1NcS%) zA3J{D1}n=}aNV@De%llzX9HxwNP&+j1~`>f;IHpHzBU=nRK{H}uuifr6#?4jS^*5!7|m ze+QS+qyP*T#?k2MXvvkvqxOFZbtNVTmj694osb2x-$fl(a8D?6x)uK{CMsgn$%j{} z%sVi{)Wt#_bSK2A=Vl$WY>ziUa=C8_sitQ|RmLpENsUMyMRAZg#-j4blgHDY#3V-= zx|mCU7e^wo=uAhcrCWiWuCMT`S1Wvva(v3pR`IWqwAq(hGnanz_J~Q&$-Fah#%y_o zeLiceWG#AItX0X(+3l!(h2&zvqZj4-HqKI|ppMitIZYdAEO#ptjF3hBu+!uaIDisk zYjohMN2Bj8rynP8+}i9khwp|7C0halP&x&5WBY=7AXwHq0zuB`D%>e*5*MLD(FY4J zp+}L5uc;27FOZ)&a7Qe|N3$6Dy9mEUxEGQEkOJ=k{`DkzkKYp5@y@!5zr2Wa~8ySu;%iN zbVP)U>19Ysr(NrTeL_zpZgQR-9lZ7~1_a)`kRw#fHF56 zfA@0Z7tWW;F8RT`T}q~y=>jH0)px#lw5_q8s>^8H_nOQtxLxF=uUb^{!HJ{xmC1MU zB1-WRA5Q}argG{FwV70@oG%>J9tj~#9rmH>? zy{%CLJNtL9?rS<#X4F?f*ZeFJ2z8tH&2vW4Q;Zg|8`3uv%W9v>1QC=RI4AX_Q52q~ znsjRf6>6{<9zk)dw*fuVZrcf`>?=*oWN`)fj&B;f&+tI@v>bxEM~YK999eSuG0Ij` zPtM!?eVVg=9^e0$DVbuQuBodN>^PO*rkXb2(^S-L73g-gHU~847W!%)nOaRb7o+-I zT%I)ZoA;vy)5&LLGRdUNtgv>~5Neq2k#nZ}?UnwV55K$+xUJza^qPgGpyl->iskT? zxKmz7eUGef5FjiH)acjPR}$)>c=BV&oEbCq`_;^Zm@xjnhc6EDLeWC9#j^(aTHib`8x_t9Y!vv4bA#Jw zmXyukqnn@hHQd8cYMdb%)Mvng zDj8&O?rNkzJ|BWctg8GB$Pg7;ls{8MvsCa+$v`%7N7NY3v`>DsQ5Fv%FGoiZS7^v5 zOB+H*IR}MjmMKU?PkU3Y1tGR9bfyRpSjZm%i*d6cTRgzMz>Lt7>nrqRY{$ryZ*D01 zmcJe=u0@I}uuODY^8b0M%RE+YG8|Ml=Z@*Sd~~b7dBj)rq;TAG3SY~VNT;6CJ|+wu z$LEl{E+}l1FFthCmg!jCvzrhkl&P+eMFzc(3J*G3Hl;-Iw%T5{b;r||4JaX>y?nBO z!;M)w}85X4LD{Pv%xC0LvbdN#mY|%?jNPggGpaFh@cs} z?mTd9x!woY58X{`arDH2YUPHb7YY{YcNHdIq&v>3m9L1e20w44?VMF;#M@To%KVx4 zLaHCF`+`!}xq|dlKHTW@DEuB%bj2t%i)$*7@SCWwJYH3wXb53#c9TRl%hI0@ z2Q_G%b%!h-|rl%ww@fyFkVXN(9S*_N)-cD#PJ6>O`OK=%Qk@f(hy1SL5LG z+fKS&%0;6tud7a+r&0r2Wj+B)H+NmH)6vg*`9{e;e;%fto`4w9@Ze441wcMcgn3-^ z@P;ewbi8=Mro1O1y~0b%1P0}0q+`Q?^SwuWHBnn6H3g#amWUJydp4X3`Vpph+uEdx zVPweGds!iByiNWh3L20vG;=4{RPb40&4enBXVE|pcTQCPo~*8(^}dqisDfPrvl$5Tlz8wA&*5iwFj@*)C%^JaZrMz68U1B#7x*T7x zI(~Cb-~-xdSXe147i*f zO_BB3R=_q=A7<;@r|$=AD;$$>&kRyjm!GtYQZ(rlg=qe+yxA=EG7xkBr@=!K|KD`s zFX>V|rEcBwhSjuVuOh>>*G|%CNCkH5hq}uiEJ%ASkH!I?WeX-$$`kGjMBHu@X7e6j zZj+}&N5fL&N5SF;`%0zlnLf2y?;FVE>hZGtO*g%I(uugA`A=P=1Yej#gHCqx#xHCf zJ=PCSHB%I$yZOZOiT`d9%0Vd4glgxxtJ0;ojadtO@BtA73C>6T|V729xwSJLRMpd5;7<$I~@yr0Ypwmza>T|rH zPzaTk@nc<0yf+{j$nq9!=?HiiuHxAHRVssJb7NsBM?H@VqdzKJA z?j@mJSsNB~_r4gIcvW-LQ#i}Ljp%<|9+5#y5WOXtGp28{Eu|M|ps`>9;TWm!bvAZ5 z9P*aJt)fYmt^uU8Usp6mVhta`e9ve&<;jLV{v|z`7;HF$CSNdo#7w+S0Jvq;yO7lX zW?Pie=#M{Z|BMth5#rOf>{fA7wq!tj;MhfLg+I9nZ$4Pcd+;~g8<8|%qu@p@=f+} z0%$^9lR51q00Jg=rMk&otTkH+EdjbZLdY!+KWX=_*H+=GzF~)Ox*4bq-?XLfC?Dv$ z=xMf|efwdHUQI7V(K_I2T*uw_WJ`VJqtryL1z<}UbhTgQv1N~IKbsxZ7>nLNbtf)v zB^S|Mn>5+0CGd-PdTQ8{pFg!*yO9YC$hzYV0)lScf&0|Hp6Wl&f0sr(VuGP2MF(yU zrN93e=z};@@Ol9$Hm!-H^l@#4S|UuV;to$jT5{o-%~94-?h(ywKS* zEe7ASf@GzP$FGUM$9m7&wbWrw4V;RV81R~$8K3>jWKZqAc*fpOE{CS&faIS>A_(%ydkNoaKE}yCOl(_p(0hlH0U3EA(Q7>f*?%)5dvh?f2N#g$+ z9!){N!+?j|sPXNovTrHTa@QbkFUF>n1IDQuJJRZ+GnfjDL=1U_dhT`kRG)_hm{xFb3j-6TO^ za!~FV%)KunNH%0%wFyY-_SJ}hSM?5jEbY1uZE9!Tsbx)u*)CzN6x!x46?7cS{E)t- zB@So4_BblIQ3$F9T`4_35V2ZX27%%jk_28Y2-a|}v4x_}4>_QG{RkQAjxO~(g9W79 zYdg~D#S&l4*uFAaeRkR|{`gc?fbHJCU=Cy1Y_wO%y6ivr(`EMPySZY{NRcarm4CYy-wNHX0dYFxnB)=;+4LVGX23xxAYuJS3RnXJ zP*lLecoY;BeN_IuJ+IE2b3VWO`}^M4g@tO+BwO;3FU3s1#~Yd6Ue3CEuq2R(;a z)XLr*JP~6grZjI>zZCNtyg-rqI5qLFv+MZf6OOBmE6pcz&xquo(PaK&@2ZJxTQ5uN zoBwDk>hQR;cb{FhEkG;&smQ9u@?%LS@wgj~$KOt6UAikL;CA%zFNcj+nS~Kzs%^o( z8GA!9;5a32LRH+<9y9Yam0ME=vmy{sw8JaxElJBedY*O$^^PVPCZ&hv#GrvUtn44I zSDDIb*S-_DOErU8MJ1gY&OyLj+#)9X-k-jGZf@e&W1G?`nY*_qJY-}$*y%!Dua~yG+y8#0nUP9wuuD&`hR0fqF-(h@h@vC=mOVPW5+HrKPX9a| zahN3Nw3*y$Q?p4aPsSk+rny`ZIFIWm47XVI<@YLid)ju3D-Sss4oCRi*qmBKjPL05 zLFB`q^@gSv#AZ$p52F|Qgohja+F#3lNK?fgZJCB4B(e4)k{GnTVxA0$mPKP_MbI!S z0Vp&*T>u0v4^cTzPAI%m8w$}a-fKwz$M8`9!NEZT`AT^MgM-&O11@6&>JTJSe7Ad6 zSL}|X9S!GrR}5o$#}@avR#$zwHeFamTBLSe1dA0GeyE6f@%|kSBSR68qnJ>%DOR#& znHqZ0h)os`9go&iGS8mjSct$NM|C)PK!#(n9=wpo%mUGP7IDyyXkBI_j0xLOZj&{J z2q~YFkuYbI1*8*0qiG7`hNa~TSnN;d2mH!(YU_qaO!E|)Z0GSicpeloFVZ{u%r348 zTAN9vb2!LAoUp*zz4p{5dzs3}lt?dO>Ngr)T1nxxqe4^B| zS%N&2ueOtTcQ4pq?nE9Rl0xJteDS*TfY`()_Sj2SoM%TKhan|*fnqcN%d|X6p`_NL z_(NR<+!5VJuDSK)N*K*kpkH9W0BrJAMvWoK7A zs^SyO_zVITBEnLxG8_-X6qozUO*55GHk?Gm>tQq+bO$r|T2T+#N;mo-_v2PN#+-VO z_A)Fp&r0iG`~;eTv$euOJuR##a8oyC)r*fKW9RaBF{KtRH~t+iO|=3l9?&~Pl)@Zb zhJIk&f(USe2jO3Lno^dP+r2Ow^9mMu10Rk7Da$`Ai3B*$mExCz=b2vI+$jJcBaqt$ z`!-S5UKFOUyNQ_#bwWq$o?C(8)QVk}GD@Y(udvD0{h|B=jd_uX^S#WqM6XX|m&zMO zagvob^WnfDlRq}uuJ!oWEYG6iD-Tkl8!ouI4kqI0NiXOUfKctLhuB7ka|xNslzR3; zcd&T>1Dk0ZI`4lc=Hr`=+|GOVnQZCV-^N@xW(CN3>CiYyAE5%Y?HUqR}TPr~v$v0rf9d>&&q3Ye+J{Cx#6-m`L+*_Bcj&XvE;CtUK`%ueukSqbY30`pfSfc8V52OnR2>(S42 z5!wgIbEsxy&RQ=_ZHGCLGJZe0*q9WEbt%~k;o;tmm3G~^zidJ}f0*IIJ1>Q^AxHLW zd*Ew?Pus(kUxeWvE$tWF>~hJ=w3;lhAm&s+r;RMeW`CqTs&f$O`}Hgd@@2An#Qs*| zlQTJ-aufuGIOU{0KJ*Vs$K?3At3_dr{0wFFiUobW?I24sgsbgw_Oml-3Ad zgNSKu+#mz{)oGIlJxiNfIbhN1;oZAx7R-tjL9>R?=b0+5MovdLvFW%a$Vzi1R#ppA zrQ&Oj_|cVS-3tpr61+OIbuY_K27LWx`SW{VJ>^s;u zm?!j)&

^`3jd55~#IH%;bhOi`4^i+xb5mCsM-_j7oWehsVc+-`j`$=(@lhsV1DZ zuxD0*xs~f@ZkfE_x|oQkDT>=?5Pq|Cvg>Wa)a;8Ky0zps%pb0;u9ZjAU#ed;y6w`h zQXJrxgS*miSB0jy2&O632`kKG-Si&?C5a^EpJL63M^i(;Z&%@ePaqvQEUQ%{ZQ5xm z+xW4JcqiH4XbdUrSUyR-$yeL8=hK=yk(hX17lq?_@y)uz3-e3ZgC_OoQ}(3fO5a>A zdc1wxzTN<=pj*WQR-=OZGg7X8>l^QH5vVF96X{*jl0K`tRJP`sl|GKB+KX?9DRJ|{ z3C!hEQ9olw$*!kJpz@y?cWKKd7MT1|6j}pY(;{V=ezxDv z_)10Hz)Y11r+ZmlEOEMUA&`B`xiRvtPXf5;S|*qU=T=zM=EBnK!ULgsZvHrKoR*5sI*Z z-)L*>qW}HVNE8T{Ha|+IIm?+}e5Cp8)K#I%RqdbmX#}Q_-BQYLEL~8G?uJS2SU401 zbIa-C@g4xUs71XMOH0scfDVktQY)K)XEL;(zlL0^wQiyojtgt=`A23n@{e=)|}${p5GyS8O5{%HTS2VrP1EkH2NBOvPBOJ`RB zb!!lwlnorE9)#Nlbusu}9v z`5^f_WqC_nhG6}~KjkBik@sV;BpUIXl^lzY2(~~JeGwZt=|g@gy5NfM zs4!2HJoaK9A;j=f^}?Y689QxJ!z(u9kkb?k=$XKL?WKe76aii{3_hrt+Z1P;DYc$; z{Oy|j8vhh*C-o~q=9vvRudBb;)uRy2{{mqaudu=bq|-Po;Q*kYVFrn@@GvAM#=DJR z0*u5=Vhs$N9w8F-yiR$jSzO+q9Uxz#W5m=Ae6ubi^FS28VB+*m(6#g^&fnB;-Dy-8 zY01M*4azQu$eR1x#6zqja8zrkN;)n2L=8lMDEq$$X(F86tXtmF{46n-@%$HTa5fqx zGm4_DXQp8_kbL#3E&ZqckP=G?#(D5QAS3)JOcIlv9vUuwQo2dOmgOb}+w@T3?@uW^ z7qz7z9}E7`Df!T3BS~?5F%Om|J4ciSV9bx*bQQO;N}QU6e4|MD37QFvL1Z}rU72As zI~nJe&@0=&0sRX4b zZ&YAA(SMns-~{~#!TuxtAV{;u#2dOM;3zq}lurx$pIknPTgw>@j`|TRZ|I8musene z1|$N#PLuq@GtBq-05SuW>BK|488Jod*-}h}i9zwHRtibm46hGFHrW?Nha!V9veXh4 z`k8b(s2z=E!*Swc`)bc4L=(--t^Jc8ipnj>-G3!oP1BRurkulps{DdNBQ$hcY;6FP zi-ue9fpB*SA=-FvKOw_`Dq}zc2q?!efF3BvY#Q#w#aB%xZD^NX&NBS_MaC`H;Kmq@ z9vD`$9Vu6eSkl8TxT;S`g}$xI+1Ske-i3UddvTkB9kEikr>B=Z!1AuB1zV>#_9yu~ z@LcERGIG#SMn=W#;@`Kh*D7~&i6b={Ub^pH#d!}rzNlvK9)$d!wYVXei6=%f=4)4D z+_0`LpKMZYX88Zl6-OQ8Tp-k~(L>gvRT2_S9NyYkFa^x$SxWY#A02yKe|YUGh>QkE zd@!dq<)&S&xu@OwKwRElktav@M_I%&we)zl7`ip#;7_f(4Zy`v&PO6HsKeF9N)}Rv zj<;Yok~?@=NE15nVht;6bN;@&oE1{+$Qet$wgg#!G-q1AoEMh=Qmx>Ov+M)$DA4P@ zs``r!nTJbAIl8k)yz|#3;@MHBvxpjFOW8Xkl%V0z{z(tyPLkVC5V~31?TuLD`$<&P zI+SOVfg&R|sjG7rsZ506S0ymf>JE!3x=5M-Jv@X{6E6)wbh&0TP=@cR-harVh#bj@ z4DeKSq_3acm4*7kHo2wvk|!NX8>$MJCqQ@-_*|Q~u!XIrJDvODkNX~7%!WiKS)NUz zbjHTO6)`2{F7PF{v}OGLhnOB)J@~thHVc9P6GFrgT!KV{f?}R!87_6>PP`h}9z#qM zT3^sj>61PMqh9a5EStqc`zWHSfT-)VWpWD)!-pF4K?M8kl|=~@HN&(CHY^#eYFz3t z&iOM?#yF3^lgPbkCHpsM^yUcqe-uzrs9%mYL}rE@v5*N2a`W}@5*AOoNIzYx|BJ{353;jObWmO0=zj$bHbAXt{DtiAA_g&NwGRM1LChb-*-{}v zj`{?jLNq@lYE9|$J1a&g@~0Hm+XngDHC=+na*MCimvLV)k2oP|BJcM`$S~Ya_IC+1&T7J-P@`4*7;gG1PN78{r8G`1;uXL zNZJ-7xrwD$k^fsu6T+$HUiA{7TH6?%A+aN?vK+LJqIJSAflJu)8#%aXpO~!{+tF(yo8&qQj|ofV;FF{TJfyS(9`K zvTwrb$RM)&k6?iN&_08blM?60+NgJol9x*fB0QH*%~7r%=}u2GhMVs}H^CMhO!1wB zKJ$=PJj6r?vR5%Pvsi>}0-ctN_3xgWl^wDdyQsf7Ya0@0zSaDe>%W4%5ff-8HY=V> zN88MU7Bp+SYdt?Ct$SM8z*pnBx%7vRlp{kH?z#G3JBz&YM8$R>^epMpcaF_fn3v;a z;@DJFs|2y`3Vt{+rO`sq;;R42IeVL)VF`2VfC;n0Hy3Mo?KQ_z>UsMN6F3BYEJ43@ z!xvEH)iinHGp+#=wCDC~l5hT%Fv)-@Y?gO3cMrHxK{p;`PlEZ~46?KOJiGOf%P_mu z2&68TmHsQX&Iz6=xHjmgeQ7M0no`Gj8B-U8HSe~O`!`2Oy!Am5$oJP?sH_oxBj+6C z#sDBjSC^HK%MR<|H-io9xlLy&Hs~{kQ#UNmxdFnfqC(s`)<|BAfYj_y z0j9kv>;AAj$YlH)8q!|$PDJ6j6D3;b<3)NiA)?<*rpPz(VVV&A!`t51CTxfugY>3| zG)RJoKLO*K6E+@$-X~ww8@YRDq2Oj>N3i7X`IJ?$Q{eu3giN7=9EvKTI9GEjGIwI*7J@8fRp2{DTgD{|h_yNcdF$7s`KicVaWn zl*Dmtf4d$|$*W&YZ2Oo~vc6XH%_P#B=xjZdsq)b}P40rBoZJ`r_0rb2GuZ5|^%^BC zUmMuIHTZ9J!2jkce_~;2u7{lshk~QwDj2v02H4x6D-z+tn~T-TGw;!bt8UVp`wST0 z53y*5#w@={E7@$QO?`ycvs!T%9H1^n_^bmN*)mbRX%;y3MX_$m`mbOAi17xuH=%QZnk&E}nkO@3d_|!4EKzz7H>X(;#~Y zEQ5I4Oegms8@nn6*=)Ij*IWRaU=k}4_5Gj`j0hgXf@0BPKirTQ6k*~))8F=MhqBU? z^tLGpM(<&AEN%*K)P)#p;q`HoNvBbH&E{N7JP%95U{?7wtLRv_7}B?DRXg^^OzFC$ zv@tE1PRG>#{K0Zq4QKF^{dpVGfFrGE$H6L)%3vccG9hKlG1{C|EPD@FX1dB;O0HSY zmn)q$XNN_{lo~lk-!*^wCxl&=S?b2)QkkD<4`V8b%>CTY^NoD47s^tP=OavAEm&r7 zVX0zzn*+F;jl@yy*qnTGsDPx8(@cC!Mi%~_VW{Eqs;{z$^5Nz{A_zI}g!KtuS|tMc z`=%fjq1>0tno*!YguAE5BLnCSNyBi=+#|FNX1))C{aB*SN|!cjnaW@Z*qkTj7&oE( z3$b|uto~oQmKleOug|+x>cTy23h-mUPHB}xBfF(%?>@QWtBfTF{Fx*7`DyuVlbGRF zMio9JS#c-Np-OQCV;G{LLj3$BGePLi=#f<;nm{UYTZV*juoY)h^|d8aOjtor zqbYpyyrL~}GX8HpJYE><<5P$n@>n2GK?s>?j@^iZ41 zHph;qsH?ks&KX{a|6r$>XZNK*agYZQ*5obe18PplTeE_-E2PJyDtaaxkBtB-jNh29 z3o8!Slf0F|)>ZNFI3vEa6+H03oMC=wz#{`|IKZcpYYb^RgTyamdeS@N_F5&ca7YT6 zGU1y>yc4@9&rxcb3qSs+G!qK%eF+FbmV%EUqUq*)mstLcSs)J`@K`ylR7lN?yVvE0 zg-iK!X;AS7iuoz&z;`@{tehYk&OVwZ21Uzejwz@&Sb=aE3^7}cKo;cd7i|mrrvGna z94{!#!~nKK$zpePE|Zs9bZ!G9mY@}D5{cD&J-MMt_^6gsD^t(ok#-eOxK)UaK8{HY zB!8IAvu=pxs49zp^JaD~Ih-sJU;&QWkOZE5X1x_jmUT}f|8AF4tnSQyn{x@ERD)XF zy6WXep*#rkB6^}M=97PO{(744qEbEdqxPAbviMq3LR zCQj)zgRE`RzM=nuVpXj~O90`dh4z;bDp&EGJg}`Zt3nZ4DBzmzrP=J}eN?jsiIlrO zBWz3*Vx88s+y_ZKnuFy*R!vx6hk8z%e!q3JqmPEG-4)(bvP1v)5dk#9hgWHKy8%Ok zTT-Jl)n}H!Zwg${aNWW=_&8zX?0}}yGtzdLjH$|Dl*-~goB<`C zZz(Ex0tW>RwF3rOCe?*_z08IkAp;QSzYRa^@b#|O@JP3$cmMP8BKtB8`a|`qK)1~E zsE?a@c>?@4N0m-uf^Qn@@;Svx#M@I(c{xXpUM9?RTEGb03mGUzm15;*DH9b8_WN65 zlon0W;p=pHT1KTl`J^0aZc6nM7L*~c0=w@eL`-R;FeU?jXqk7|mWIdiV=@%$Ooe04@DG>jl~c0~O?1V4SWs zk^&#GMr%%kmqU-Lhi9PNlyXjG%@D72yOR27!M5o%bI^rJjDBcsRs`S!JIjg@yeWS! zV42CI7C29<13npd!!#xkGi^*L4w3mk4gP-EQ8bwsFoVpd!PPcs1R+(ll^x@%Q*R{l z2@I0((nyFMLE`#azJj41*KZR|@%;6`XW zfk5k?a^$plB-x9>K-yh2_bV>mvMv&5^q)_}V&5Q8^6wTYmCVJ=c zOj|&KK%yAkE?6L%TOzfx3Ol^CCfgYem)lrHnR0Vuq`wOyJUD_HGdxTwkQI4}XL^BN zVJ&PfZvN+8)PW{J+rdssv<*|S;Hv$dW5xq z?Pc!jeB5X`u{3^4o*3$ae`ouY^OAr$WA$>*3!kKi(Drk8BA?K^8Mp@l$7s_=5yUc+ zG`@kruA(`__QBYU(_yUb7pYH6*7rpIgsDFN>Z%xxYy*<-Uo1K~c68{~by-;e{AmZg z`OAc+#&gi~^-#I%98~{t1ptKrkZOE3c5{y?!Og(#e#lmsgdLW4%(x|M?s95I3Br}F zXr}9n2$-T&9%3uivS|*}3%O&b%iSym$9x&g34))8fSD7%x$g9jh`^0fwP<6Z-dCA= zE8yq(s}{XzkAPbhl4F`xK}32hLTAN3LzNz<*c>=Tu$hi9Mr{if*J?Vf03ag5UZBBE zjIava3MF;hMcRFtez)PI6``OOTc#$(BSKwV;bx`!Ovj!vAsCvCOmimOP{)J2gk+5K zPIsoDDb-xbi3r12Fp(%)h6S2`!t=ToLW~Kd7zap|jNZ{u{fR!C|Inm5TbdNH2HZ9# zW;*?Dhjpyj;XdUS`!Li`3$0u@X-$J9)nQZ$V*_Dg*$;| z(>AEeh^5B&?+TxlRi@={&Rw*w?Eg=o${hpZOY9UMDQAfIarZA1kF{C{O|{&vx4ib2 ziCfsuH!yc%VUwMv>vFXVeV8vJY7xttHKk&bSME|{FK~25bUyxOn8+oXxMqq7Z>D*= zTri^NpmCqzYP4*Wg$g+B%2SqW=G9!_GDR}!i-Z}gAlc|q8$;|&1>Y+3WS*M9IAp1= zf}-Rq2MQW9C;BQ@p^DsM#p4Zk0ZpkVLFIy2F3#}JPTR+SjGva%r~)PjksXEwovIjF z@r?u~;3?Dar15CMha-bc_BQ#($MJ30GNY!p%I^m(;=x@k>puv?(B|;=Qj5ASd}WKu zlxS2yj3l66(akUANX{~XzI_k2@dQYh(VMF%$yJyjPt=eB&cUb~aI8=@Qh^hW!svQt z0jtgXWEW4Eub!}_?elgQTTqhB<>7p+%yW4nnksQ){aEQSlN23-3e~2ZE3OS#Ma_fF zIC1$hJ)$0PNC~n)w|T{pjG7F-N>9H42!MdV5Dcvvq&bU&E(%7*W&}z+@~ctU|65Pw z9{)%N%t%>+SmrAIdH~V0R<61el6wdFmQvdOOp?=OhvT{jmTiPa+Q97& z%{8%z$q>Lh*_^{ce_$}!)1tpKWeQ4nqdn*tObi$`t_*T5$v~J&4b+HZ>_EjHtdP|* zAX9!IxZbAud=<#LODXZJzQ0Ox4&+b;(n1Bntrm+gK#>Hbc~smeU|US2`)81R*7j&` zQOpihBNMI7l=!Dj=-QWq&ly6jF^Q4#{T-{~zL{v*1f`znle*&vCT(qQR0_#c0mkO3 zIU>ZB6W$&jKyHr*f3^_%#A5`^fZ|Q4I)w5CUIr!x zu0T5>rk!cbwL~#8VS-SxliC|GFarhur_s2NTL=vU4}XPlqfS|wt(2_SD5J}SLM-6M zEi?BI-{vAT;!2;t-1R*@fIT;CX5gNjuuV?Fr$;8{d@8dmI*GDTCJ|nVn+7A%%|ib$ zrDnd63I~<4^_*t=?b0&>x4#Ir@rl<14_A{FvI(!1B|kT7Ueu0=o7c)^CuNrE z_HZO&{p^TI`J7h?o{I)W<)W{zSeQ*hL-~0!Qjh>8*j`1O!iN&O_C8x9BW{Qjz3kpR zwsc`1?<7KN!T}$M)7uip(@ZsA>K!LnSY}$P&<+aNP!VAZHIwskbGFK1~Hy!-$DciHTNpJ{M7Jh5j;1`1-c0Xv2+zDO{wv zNYbJBPShXX9-JaClqsOVY1$+0epB@dcmy_G$d{Ob>2rV-w|)Cd_dR8wf90C;4n(@) zk+Q4WS_ZNA83qF7J`z(tSpz6BdvJvj07d10ULZKd=rgdSgXQKgh^@)nu=~r0zlEZF zp&}aNa?>^z=^-+mgKFtb=>JsJZ6E8cNuGaxk|Gx`~1gHiFnH%7=55VrwD2jY|ncyx~ zKIMXZH&m3CA>QePV8oacReQr)c)B7lnsn?*ITECU>baSB^`Y3 zefU>~A?b@mNR45jZ{FxCTKN@Pl}!^-5_Pmm=$S8Ox#y&_eGC`&037ujnIeA8N+;)$ zBU5tCt3uYGU;Zz_sH*t-%z$*_Sv_`0ZD$^a0|R-`tsog?pt;E*y5nSwBSuw4Otmbw z)j)2uh{B;1GE@vnB49wP5ghWMdso$YN2neYdfKh_ zFjGik6DGkIP-8fL8Pyz1Jje^OP=p-i*&S#)DfEi(hi*nb#n}0lDv7L%1ag#65aPEP zw-aZi1<9wM97sxjC8I(W>f9#J+v10*SbLbs;H?28q|Q@^tZsTAkKg{?rYJi}1kQt; zS(n1^C@~g9g);z<3oq_~R=>Nvx5JQ$&X+Lkp0n!5b77wY_bCi#Y0QUdDUyc~_*$C+ z7;mp3kKno46|xhX%FjK-7o&8FRyT4(;xw|jr;md2-&NA@BO$KTLG%J~1A|vAvn%sB z+}b{{2vN&%-G47Lwk{hlrB`LJ&OR|M{4f)>DB!M~uq*Q5s>c7`kl5zw#LaVi=XomU zf8Bfb5_(vByK2^ahX^5kkl`4hh#n%}oYfY;6ngmpe?P`QhC+oi6X6mXUdlw7eY|9{ zLv*+9A^gdfENk%PmlP%v599Bvj6vX)ds-85KHF3|PMux^fN%w{15kSos1w?|H{c)f z4|uY~_55{q&Q251(M%=_cW=TzFJu#^L|ozymj;r%sm6KpaVqN~?>7)}m(d2_DRpHU z9zX1)gNOn!rAMpccim5Jn(zJlAS-K$zB~SVVeGGK|LbOE;Xr1echz&xTLH0?sp^pi(JyaaNb!uh~l;)X+CAqGl*h3cT8iC!hwVc6;L*8f!T zsvM`(2${cEVER1cv+i~~8N|POMIi&(Y%v!Y$D$T-K{-@L?oM*E!_~s-z42_{oy%bJ zib;p3$vRf=0C=`^HT~H3tfqs>@KuB%*`TNtIo32_VycSfo>N;X%b4eOeL-l@gW5=r zt19)chwZJ->KAt7Er#sDx?TA)Puvv-5rvm{F?;IGfU1MNkd|Vx-Ndz$Cx~kVPPg8{ z398NYhiXZ%<8GC=+Juz<=Hyd1jqyYfC`$Bda`^3`6u<(-X9>4p$|7dnMLz^v!eb7w z!R5fPi?Wn59K}osUqEy`Fw)JAw)voUZH1wtl-hHk2Swf^_qhXZfV$TbhYGmT=a31<+%pqa@2Rkj)yuUy3YIi@3fqw~6 zjNCFj&qTd;%d>WMt>7p}XDa^9)zTlgi(CU#V@ZBEra^2l2hbGRxSt*ao=C2&LQKaSLJ4=Zp}8C`v`JZ!RW0ubXXscKl89u)r?Kdch{ zl)^5auwq+F)3b9R2Z-(5SC%l((d?g>Rj)wta}3=?*BsS@0*6 zE#B6ngc&}}`%U1%=7uECzmNVmt#dF0s`UM=lnX}`f9*9E1^>Da0Vw>0!BIdups{CB z2WX%X1Q6V1BGa?7AR-d!ppbT6HdG)Tnq6K|As`X#T3J`$aIvu-3WI^^Y))racTX3n z4NK?t4m7Ze%R73Bbu2iypOJoTupu)CFIRS1C|iJC(mp@hAOHL@&CkJ?^Z<9I)pb%;m~ zmz~HP6&P$G2doqA-DfQt(@mE*+%ycgX%hED+jQ$@4<8#!+yFQRLzTyjaf zu3_taNNrBoI`CN#;2e>%QN z3e|+5an^D&pMEweFZx+`hjN?qKNJsX2zr&KKlc-Dt?T@tc}!vkBDy>IDHhsbpV_bw z*-~`$&24tuv|uguzwl)0p)0Y}Xir8!C zs*Yb^^c`t_j%O>a2Z_Pd1E1Aag=mymUYsd>qxoE#+c?=|@c|bjqI()Cz&+}9^=-$M zJN<8erEo9(6ALOHAT*HrFG_MOWJgRqQq2jX3s2uoin)x8E!tj5+0}dWpD```5aq=V zC6JiY@N-IGA$1bz_)%p?E#EOh?OaIV$JK~a4l|)Gc|ytPSUm^+lbyGnm#04IJj?Ud z9JiIgMBKBUoq#JYgyc_4QnP;0s=g+lH+?V@l`+8c$*;1#DeT5dtO6$Fb~0&6m{w(= zutp@u?IvQ1oLf(CO24jeku;X=Kf;}UbaaR68y#&c;!(ONFoRM^`;_bvub|{*jXGQ7 zFKjJKLWRsvvKZOd>ycysf$ zVZ2ny{vLr$sM^=s5({O0ZK(3mn}P%dV(Xc9*8`!-IA#BMZ})svNl~c~$#f~#6Q;U( zluq77+pY&@yG(rQlUc>buaHs7*v$WdZYH!loCl=!yLCH4!f#ru%+)h0oIM^Y{aER6 zni){D$X-RhOTDP^D%mBfKGU^xhp$yU(4UH1Z(b{WXC2~yzxI=Ei~e0zm!xiY%NX7I z^pCH8CRUCW^=e!^{Io1ad0y)Cop+6IF1&Nx@LNcJO6%}BZiJpJ_XtN`jRWoeww_0*zU0+ z+jHuaul5n!I}3fX$?MLcfdWAh`Yg$r_>MDcR)0d-T%3TbT-|R40fZKioJY%skjHp?CFotT#_xLUur4hH!;dgI-2Hjd;>1Mq z#!$qPg~g1wi(~hxQ@d2}-#6nizboyIo^*1Jrd`>`Rj`T_1ds3A%^17CeCd0@3rIZT?Hb8ij0BC9}YlNjEoWUH<9wc0X6mI+(g$;@(y7 zZT0fFgW|pNWOqGx=L0W_X`b+boQT3d1$RfiJnohQo`PC@@Ut-uCe`;(!e?_BIyn#G z@OPqI(3u6@Vc-rL0_x}@!uUtu1v%wcy2-nQU^(Mi^^;W(8a~3prOQ(=yYU0*YAL71 z7Y%u>5DiMPDN+~{0GDQeyduM63XqK!UH^_B0UBB8*_ZIO&a zDyyQFfS%Z!zIdeEN-{C$y$nNNF1~~fZ%Du0B$s>eFd z)_7?iE&=bk4Qu&$%fe43yxQLNa2qm;`Nli+`x{zxlOkK^zMOvbBkbEy!3pVmUAMbD zQZp~;YHSb26w+Q}*}vs|Xy8#x&L@;1L@eGpUPZq4t?A(@gbNcY)Df`B+MPf>?>j~I z+5OE^PJ9m6{7Wue6}4B{)p*mesm&k$n(*s-hoH8A?)|P^Qh>|j0LsZ|?}V}dw`yiK zQT{AEF{v3+3uFW>x{Ft*Tsh!=&D%31iO>$wE#W4vuP46vc5FrhoHa-~FL*|hpPFER z5aTB45<@Kwf_{4;m#d>Zly`&7Zk?K}0%4rfLyY7+1JI5aWj2#`?R@f{vdf7I3P&d; z?_F`F!z`;&sktGIF)51+(L@qepe^T^k7kq3`M6k-xL8>`9g5?43Mb$&b}72)ht!d8 zQpYL2x|L)Le%L1uD#ALoh0n0!fZBWN#7&UmlWhMuHP<^yodfLO$<&sNw+P90e-n4G zBkNmmX!T6;kE*D#H+i`>K^D1y79xkv0tgr#D+Z)f|JW)e+fe}KVskFn7Ad?LY2^b5 z^CO*yvb9H04y%FvGvuymvOnwmVrD`!iMm6PM@c~9+EPSv6Ho?4(L2HaNSrzY57{N3 zt`s{A2|y7IcTq4#tV(t4t)$dwN|Ku78MP6JIy;FinODY2t3l)!SEsotM-(qcWhv*C zjAY+Rg1F3seZlNXCM25yITs8j<>L1Wc~;aADHchDj@r5fIM*a!kxbKKC27!Lo0264 zwgruw1z&!Y{s@u%GM^(B6r5gO=<@^CXyARDl_O}F;JTW?AyPEj9LEKb;ugh2?F?0R ztZH;-%-dr1naumQSPR22M-I%r2GozP^cgKN=O$mQNxP{W(a4H>Yn!9Jk&WVlF#BQ` z^Hc#QyS9nFX$9HKhy;+hDvol?yo?eJAxxF%e2mnyMVRn?RQQ?7?~snlperkhslS`= z?Spirr#<*l(*$wePDp=K5zg3qqEo~m6eal_dlZlY9nkDr7oM=KAlYRqjTFb^vYdZb zkbknAzZZN$@T_}RGT&8doDLG%AA{2J5qUKHtKA3orM9^5ddFwfvt>Pwh90_6ACfrx9qF* zBrzI@Y+>f{TTYaTpttpb#c0PO#2- zHdWuCOv@0&ZL+Klo5yFHORrXrs&-YphrSt(Tk4296b(!KaY~m8!?TOiqxVc>Ekt6q z1s{8Nxn6}A-cHn_P+2Bi@bFG{er=K~tMQatnsay0$I$}kxoR1D@^d3Z)>YsRJMd0N zXP(rBTqJmCDIiYSo45%Z;)rGwVNd`{Nr~L&yIUqd+GzN;k1n1kuUZ)W%lTn|TALD4 z9+9b_l4+Y4t8Cc$k9~6XaB3D05MT({qmm@Kz#E(1Y$gm*z%6IOfVngm4!02#^ypS) zeNE*Jfe29(*b95Wo}r+EX{9GXWH3#Xq|~AJ75lEXyQD-KEcU;BT>9rK#9^k?!6!+7 zxF`K_XZm!FVF7^Px9#}Kg)6)N6}N`bLUWV)|Fuc0$CR)PI#}bGhEbN z^LIATxCc0fx++WW`!SUQ<@RUVBdwCT>>~y0JYgYD>9$JCd+EY=S3BL1LyD>;M76xX ztRzL>BsIgNOsV}_v86mbfaRaeGGu9oG?{P%wV5Cd7&bYAj5i78b!9aWv)2eeP>~#y+5US+lDek&=8SB=_AL%p}WwfBCajiP(;)l$}x@#tNovPP*f1$3eQ?A!@ zdY-FaZ#z;ds{mnhA=Js9dj9Y(b@b2G)B*J?S4|2{pEhFHFau8BkH>ioqv6<&%axdm zD^o+-Z$rnnL7H-n&=7QWY8Q}R1w{B)g|1~8+Xm^WuqNgco`Cl2g2KIVRb$aaHz80z*_WTQ-4Yx4hOcwn!JcktWOF#n4y z3P{AMso%bBcE2NqX}9+8l$MP2oc-8klRC(ubzSvJE>z=A&BfYZkJZy)703cr5D4N+ zqBbUuZ<4fyV|i)heN5sC*Cie9Vl}E4AbV!fCeSFgTMfKn&5+(#S8I&_L#lr07oy{j zrOG`blGBL-hi{Qjc*Pg9MFOK0)CvbYO`=*6p|;dMn00A3%(sJ{V<$V+NgNZoHv8LV zSn*d$ZSS5$8dT`rt*qyjygrY*{{bjpVHkafc}>WfYzd*?oGhd^k$z_CnA}bdQP>hx z+#1eY_|cB}aO3IOYn9yW3k8#Eb*J`?{v)+A68!`8%)i&hmknUb3u*7O!2mWyJve(_ z_S}3P=FT$FA&{tNLq!T8IZsU8bi^aUD3ROXz5_9jT^ z4Kyseap}WuWB!fSa!%}%EPSUxk-Xrs>X;iQ-p%-H$p$rf29lvxNp(+6=U|MQI!x8R zQBapLk&U@gUU)r1$Z~XVZ^;m-oVfQ?yTW=r(d(C>EP(B&-t7Ia$@E$)^m+xfu>Y_6 z!0lU*@7JMy=X!6*q?$XP={sv4%=mX*7zQ{! zTGu#KcCzOg!%t0b$389k*n_J2%**!A3%hFaZ$qrj*WB`(?y9XUewes$6&NZC>TS9S zztdUgxO-0a`Yri`Hyzvm$zjci&Bfj^yFK@$_e;%sWoO*FFg%NRRnb36TYE58yy!VC zYvf2*ThWV0-dV-VFUk;R->17=XBa}_6Uc)XcSv?mvXC@_>`9nE)C>4;uBXd&>_5K( z2l3k#{F_p0NiQ|QMVWX~M5qvL`0d@5qY+L2P*FC%Jr>V9o!fg1ssoRF|m;N0H*GC1BTS9kaXh+YEuaiP4S>!H6!$vtqK&`B&K>VY+TVA;oJL2%IQoIkHEq+Z9;9EKA?cBAb z^=0}(m(71~46zd~3jKfmCVD6k9!gUl7ece@)m3@&?QdMG%O>?iF7N_rce1)#>OFEV z(Fl7<9xo-wjr(!)mBt8C|8BV3&1W0ke)7#=Umt}ygv^=Vo#4PX)h@3G({DCjp3=eU z`@wa}nZi2Qv;unD-Rq|%Gt(I zIUPEZv=sX$w%>%Y`xVZ$Jo@WLE#&G+i0?ikyyCt1!DqjNzrBzydf-Cja`&ezDZ|Cz zAK0*?6nHSfFj5IFtq2dp(w=an#2TM-CEjL~M~3LaUNBGk^d*S)0V3y@db+FrG|&!IJa}) z#Kvqw#5rED-s)_qO}mQ(u0kC&!J5s-h5l*vKs8*Wi6lxDtQ{XcVrRMemGaMdO)9*~tYugsn-wy%JTwieDksL|fF|3Wl>MPGb$`S-2N$cN?kFTNpX z&K0-5spxzqe+347`Y1heQEU2w4Z@fhCjBEDbN>fI=azKY-r*~EUtL@u|2w1vQ$hW4 z2dgw39DHEImv2~ar`La{%3iT@qY|bvb+yV#x?_3i#Nb-NeXxCzRY9@IUj;a7znC`ec`AN#-qwC8?Il^zxCJRul z4#4H{rH^K$s766=Ys3G8MMs&1e%BK)J7MiJL8)ED?*CGAA7Y}L+?R6%_UDMOnoDcM zX0Br;SbrnA=R0kIBKaMhk z4Z!ow8+De;j`Nv1&NX$O@sd8#*&L-^s5V5~J|Vf`)8ZADx7H=-~vBScE42Q|3&*6hv-?x)9uZ^Y-1!t4`rk;YpV zm8V6HT@BWa^RGW3tREj|?9mc`-0=0ELOZIrdi0!s&F}XG!eSpoAg z0vBKU+&A0~tKAZ2&#sC2eBk6>e=eVGU3#Owo?_1vIQ+sR@wkmpHyb1@DZ`N}mxCB-va;fm@Mw%`l7!`HbIY`Ln_yA1qNU?aG)ts?XC3}N6$@D#5iGjNvQ6~^% zh^Io8Dfyi&?bKr|qKuMgj%8bS^f%Q2E;qsuD0PK&_Qlfr*rlk9Yn(-E3lv$0Z23JLE0B(#X9l64gb z3~)=E*2G2#xP!VDTLG3??FC1uDyc&eV4+>g4WfgURuGOiX0})`l~9P;h%4V)orR;b zb=yC=&mkTCC?L41hT!%Z9}T}DwVo>Gyu5~faMfD*N6w{E4Oct+QMhFCtllzk&y=S;hMye!;FQ$kYCG#;UYc7sK>(1-s#cI*~1N(0S3AJSEq1zPI< zOZKWliph8@9xiGQF?|9#qTWvvB`BcCPKY^+w#Adip`gaMwJODvN(JB6`E~x}iiTNL zc&CK>yztBQVuS+Zeyos}X~5{@hWxGZLvrHkN7!C^OTC&R3GIy!G*ps}zZ@1+#ueAR zHjbH3Q3gf=n?w4dFuEjx#@fxQ;(K1l?j=SKHHQnnnMOg}@{ zKvbRU#H3_mNhn|8+1TFaI74S{v%rJa3G=@Rh=4U4O$v0=P*>7|f2t?)9f!C^9rc{F z(r=yzi#U3C`nX;B2Iy6m&7a-ON#VgNA&br;VmtKiuDuOZvI)2rZKDpZx@)6;uNykc zHFdD#Q?p-%D9T-@%!D=b_;v;T9Mh5(bPtOmOZWkDn*vMk)&AH}`Ub>7tn%?7LP zNNwN>aL?5N|I5!TC2~go@$y4kM`ywZ^xgA@kKTzecprFZOaR255p<I8McOa9yf6{NdQaPH^1idntJR`1rmpo^IFIA{{k}iWHtYl+VG|;MgEwk;C~2HWZ_#7R-ukyl zo7{`|l#ZjXw;XKTv7VYca{(Q5#7sZ;hXv!!{s*)lF6Qbkw%d;Gk$hPiv!!DZ759x> zU&ri`g37X;1Zl(ihX+BAiYOhj>dkP2RfT$|e^w$_fW50VH=YixUq%RxS@E2i*le89 z^D`3Kf*X8Y6F64m>Oc8hKxdhUrrh@N`kA5+E8A`*)Zz(XzE?Hr?9i#4fKAEXWc4fj z%*DyCdEhY5-U}mDx74j>U!9f$Wbtr)knt;vAZuj2y!n;VbD7SkusN^#ljlyea(N#x z;6T?nD#`1UfGq{im6Vb#8Y`a=KUW*E!sAO;4;feQ=Ztpe2&5egjO0Hp=J^&>`M7Jr z&iTK`&Pm>G?yIYLqGuAJV_8?;mZU}gY~Dty!S5q9E8;N3oUQK}&%ZPNyEnFI_bxvk|XvR^KQ*6CT9J`#w#k^(O?gx7?gi?VW1*PLX#saB1aFc8I*( z&%%(jJKnwdfu>&;M4SODhDi2}rI|eEoGt)bU-{mume3XZTYuaAlS7VXdBt2>?ia&P zl3>)=6Nleldytnf2eKz9-TDq`bA^U%{x~^grE+7yUPU)HtHO{*f{&;n{&v8l^)xIv zS+Efm|NIk#EiIXCDRp^@Rr*{(wrlNvy3W7HA>%JL4?miDG~M*DpT5a) z{kdVMFkSGYB|bAXAti41SJ3et5?C7No}B2?L~?mPak5K~q9dGqxiHf*!HTyip*k;1 zcllH%H>F%3NWsMS>JT6)iE$&Olp>K|Dxy=lM-9eZA zAbsiOyV&x9S{L*>W+d9bYGyC_#%$@qFG4Fu5U)BHsM!lUW zxvU0OW!h@!1WiuaidIW){zwEZMxXD5x*8XU702u{0BHi)e>785OdzKKvsMT^XjlE1 z20U4}94yk)WSz`gR~Ro0)UVCFp$p<=_>oyklj>Cxt?;1ET7Ex3>#ehYihqehVhGsU zV;!jhP&GZwn@DM5GYD@YOp^$w;Sp4I$uyi{f-t-p4~J4fRd_6YE*f8yS%!0Q*|pHM z2Os75@X{1oZT9kqHEMn=o{LedFy5B`?1#PVXunR%t3NJ)=OH8yTN>WUr$Ypro9QEx z880(T52rSW)p>5SwET#$h?Nwj7;1D;0)MSY8W#2nTCEoyO=Sycc&6y;@`9Kmlb%}K zuXQIF5FdO!jbPaMQ{bCzKodi$`7?qahde{Y$`m(z-m0FWd45g+9c39grz`wms~vfx zLQu2=rZCra=e&w29wZely<4r6X4w&jgO) zql9OgMrKlKIdEQ1QKdrJ4}*4rWpU46!nR1>Q&>cd62qGWzn6o~SC`CpJeSGVSj1Ut zVfG>t9tpg9-EodnSsMu`0`0?fpgS6k4$R;}H5ZLcBg=aAwrD9$pX@J>gM@@yU6nJ8 z(_8n#=_3AT*1OMH#=1uQjMdRB5TZ2wW}mt+*LF6B%1c6=$2l*oc>aiy=d#6rY9I}) z_GJ|KgV*iEfB-VC;~xuNImw{0$|gvBYdC1AqA>AE&I_W{ikb@gaYuj%VBDVLQ)Rrv zgkHK6yxpP>UG7|~^DL|H!C=e3&lu6%dwO`T%v57cN%WAfU52_f=Zel)nl|Yew|pM% z{^WmFa65&6yE`bYsy_o+DM>g~tox%{S6A2IuM<4Y0ok<)^TG-q+(1S?6dilIC$OAQ z4*=e3BE~DnrHKALr|L5;ih6qK-Y^U-1l9=I^ehVX_*|bltZ@1+7~;SH?1*8%xIsue zN#pm8fFQlelRms{>8#sSEfq4QK`1TA8P))m3*`_l*Qyp5Od2C~@YSSuHs#pFI*}}& zOBeSy{7-G*$2f?2M12wlO!KZ?)#>l^kUYth5qiw0y;Qohp5D;)X3$-FY@(}n z)Zr|bG*nwX1XTdxx-V9-_?)biOxF-iEJO$k9*qHqV-ObW$S&|+lt>a|3xOU|0dO z)N8rz3g3VGeoh^|c$xV-D~(Ho$8c`z(r{!aYBwpL_9BN&K_4Or5o41IO;~-;zh>fTM&& zwI2<~z2#BF38y-mz#uqh1u(-y?~_3HDn*0F1=83U>-Ix5%H#(>+iVkUWrN}mfu-9W zCtu(vQ^TjI-hSY?hUk%6!U7@->lywB7JeeDLl+67oT$rV-I*^bdX~dKNqg=(f29PL zMVd+CFjYzDQ-w*$+3w#4&uY*K+!iDjS$PT<+mizkyFb4$m*hkp+8&D4x%a zJaVd3{T)G<9g+MTfXo8fX~DC3Xa5rS;P-Z9ZE-RyX1Zyov%M1 zOrIAJ|8*FR8Jcel$pT2a)rJ^}dp18KlG7)$*KW#;(s<*pJhx%`T%zx%*O~UygMrJ}yr<^Q`dtgQWLy%Yh(mLZd|&2EA`$=Cp=>E4 zW|)T5FM66K*9z56AKFN>$IMFE9(MRP~4`SSYB3};$z zlJ^{@l8UZgjmV&#&Ft85JWYg_4@Gc3+zx(Bp_=gK(sQ0?O}vQ9Pbm_x(m~SyBK%o! zF9ISO1L%;z`_h%;&MO$}mDBjMI*!@b1LqSm`SB$F+~ZFx?>^95R9i|fK3oDl#cgB% z6}arll;R?!SZv;V0{5EJZpG<@<9TWLNl7tK%Yi%_C`NJdd3I`d^%qGE?W-#jbd{+o z3m#z?F07muk^eE|ZAzO!7u*OC@E^NLnt!0arS;$JwC6h=Ehe9c`LfLgczgvo{tOa6 zrMy59II4^Mc~=1aW3R&*4_eyZc)^~n+?R-QYz-cJ=2>@%;6N$MD}ONngeh}-Mqpgp zNaG5d_h!jfNwem=qq*NM^aqvl>Sq3pCz;(k^Ow?TSrp^d0u6737v2oXkB7!EYSFn_ z{OJ(B4huF<*>|(PLg_p4cc(RM#s}Xc#0z16FNim>H_b3xbxc5>BA#Z2rNy66Y~d_z z_b*(3sgJ^ZBV79O?aKK}x4!j*9GEr#Sdt#@2tO-~v?ri+hF6LKGzawzmR+Np9<$L` zz~KP*58E^b#J=anU#lyh;qSsue_A-p)7(_ho(2D$u)gS_ihR@I@ovb2KThOyLK6p( zUBRAm=WI6by`icptyP@!3Am?-uy}OoLB(G;Dv+Xn5Lp%C@em!4!GqGYS9Woz#stv9 z&dfbEt)_~0^x@54uAzA68i(jWybtS))^w9y zx>+-UuKK+9n@B7~kp(uEZ`)IDic#iYz7iHM3sJBz=r!@$qbS>&EXnCXUd3MdBPhLb zJ^1~70l_u0b>9m$w<|s8FlTgyJ=FG>+At^BQNk%00iAQqSN;?pu9W+*YNz8x;8S&* ztytT=@B5`fS;Pu56BPFfcuq0k!+c;am<^;M@51KLp;t6*X&mw^^Spl1{2s904NcOlW4NeuA$e~)i>w~(}jf^$jvp`WO$Yz51KALMkZwkXk)btkNZe8~Ic;-k zWNOj!lZ91{u?gLRY&>f9V|l7pf$SBHY6dfqU`gA9F5Ba;2D8aDzt*T8MKN3Ip3qLl z*Eei&9r7DNU@zYVR#}U!?5xWjj@#;7$5k;>=VldC8uK~I?f_l#| z*AEc$`23(m=*eZ`A|ApDU4M9B@|&ZTH(sLMOWV=F$n_BVh;134FEYuBcad{k_Wa5d z(WB;uG9asiHOZp6MjSt(X=!>_VX;`vXhI+W8_ahK(uiXCd40m|`gtdMe5Vt0_`V99 zx@w!AomjM0~UL;E28ZrVSVgNd7X6F zmOR8Z)G460%Xdb8Q-Xl^qtDW-U6y#p-p2jief&lxKXS>2hZ1Fdp*hbZ4XaiX(%~xM zL#QnhJuTuftK|3mYavgh%I13=OPq@0SfPEyWoP`|juv4J=98Cxeyh~HOAUF715;Xf zqK@)wZ9!?>S)HUMXpg^GUC3^sO`6bG?)Tx`Z;mFVwX*Wkfiglzo81Pw;>GVB2r+ z9^;1%7V>lRGSgGK4)&IIN1hIO^8*(F+4{D(9$;`XZaBuy?nhGBr0w7?~js(XNu zHq3^*QU+O!vc50xSUOPS*MKLM&D)8_ev(H$fARtVknmwu)5!(bNVLEAQCivDjnbBw zu6zFS!$Ui;Ldk+PISh!FqF$x-TJ2uK<$)rnh8kL-r>$+g0Zr|L%~HDR(H)P<8~vLZ z7jYNF%da}uFT@dl{BB;F$1x#zyUW0uG0dM7s_IfP?gpv1tB5x0oKx=Gf7e1)G>3SX^l@s~hE9!3~dXQDn{T-B2o>I=$nEkkB z)yU1cSmpn06z2yfw782Ekq48gLc<%4W1-YN?Z5A_+8ZsSvTgrKZ@QPNSELr|jHhtpWPeB3e_g4j4O|K#>+s1+XXq$q4JktRQ z1+8O>^dG7jNRTd4d}PeF3w#_Z`7I2DlRi>zt8?XiFW$v9ViA+B;&fzp-B(a&N$2TW zql*X&=v`hXIK!J5b81y|iPE8eY`lv;i8pj~60uY?;G+B~SERWf%*e2FA;t%XT($l5 zU#){1ew#{b^NlR9Jrbv$;|_Xe1Bk6bD>)?9PT=2y|AV>h~WT_weE6 zY{-N005ZY}jNr+i%LA8qpIfIn?VWhu8=}#V+&zDBjC)LQJJ)7GKi7bbqP+O$E9#tX zEf#zOiWBfTw-RZcweL~XzP-p-&KK&U?! zJ5n~mBT9H9XH0}%+L}J^r=F+chXuoDRp{@v!aOQgbstw~dD(9(NbsRbAg6gdd!1i> zn7CxCKJnQ{>`dfB(8^?o&px${rNW!_$RU_RqdW-Ml04XaIA$Nuv<@IZMVy|ZyZPz& z^?hZ&HLIDTzFDSkG#XuW3NV^D<$ZwX0gq2Z9w5O2N;jRyjS0+%`@-3*TS&&K(=$2jy5JLn!8o5heiA6e@ro}`Kvi*fuksXFsvV_!(GZ=Jh+|IhZ(p=oV)7`2P- zdWl;7v_Y7}fifT32L3`=Ju$@EeECEDpbSu9&w=7*Qjm7V_C(1N+b8ATBqAcOSj6uu zAZ$zll<^l2wx1{_#;Yr{M)J;%361{C?OLV9P|m>pqK0|`(@$|Bzm{vkMu{t0nYxYM z=h`Cwb6g4j`diBC?UC4;S=r;8dBDra^>g4%-y8qZET2VwcdN&-@(`vqKr%p$A8!YB zNddjXv2_P_pW_Div`{Uhq%a-*&PW^76#&DJ1gATIDMVfGfkS!xkznz;NcZB5%vm?t zzC-Gmp{#y@?tHfKWxdzj0SBjtE@OxEqD(fja%kC7Uk?R;po?47)Ug78A5gW$FBb(b zmi@T?!B@zb;F65LpXl>g{=erZ+%R~1$$!>*(So_-`~fGPM!pgjcQA8{I1ye$v^!f| zO~D?ZNo>L|+DOvF?6T@x_RiK;sj_9>&X$7qK~QgA_Rj$KomK?h@eU8X<9HKe2aj!a zyZ=>)mPq%(OFXuPcKvkA%osFENR7YH{2~Wr{#!&;tTgUm0#64mPc5VUQLzi(yKl{_ zGc~h*YA?bmd$Nk}1(4BOjs+nXpV%3-lu7?O=bifE-TY>C{feDWE#Nz0&6s@@{PmK7 zA7A79CGxcDQiWP>aqFkYC-8g~szo@wb(s#V4`9VJ z`5#2!mf2ea+YZn3mpt*53&J#!BNYicn4`%G$S3t%XERH7Ue73}>A&mwlZN0qy4$B^ zzcvcjs=cN+glLYakFXpts8;0@CboQ(nmP%W;mCvYY&PIr0Rku~2SnQ#5RZuP;8isH59)Rr2NinSaV3zIy8CvhQTVF%oCg zP~TGAnGtZ-FLB7G`#JwGD6$~FrQJuev@^9uu9p*Hh1d?UwFTu5w zj0j8>sbhHPAP%q-<3+I!{P@1FJoz|G9^HgXqcQv!Y~khK!z>-BnJQXBp1OG}fdY$O zJFk;JIz$JEliTU1juiqAQ%+>(>2>>R>m`}JR7!X^f;C}5#kpn>5XKq=IQ5uK{@ z%tW(bbhQ=WL<=!Xla>1QO(vy{qQ#OX_RBq?s!o1I1Q1n6(-E~ycr*`OE*e-7)~I0v za1v-R%8l8Qn>vMFn~q6`A$wQ=nhEf;jan-}2q1Zv8Q6u$b+L4BMk_*(qDh=VKB|CEo4yK#POr`sMSQ??B%%>isN zkW6}M3xG(&AZqcdWa2>(4uDZ$qY3u%L;%YL+0s%ZuxTp0F|srZ1;-SdX26+^0b`PF zju*Yx3+CHQad8mAU;uuu7{8zBD?IQ5TRxbRebhK_bA9iWu5gxxol{z(*N-sm5zq3B z%91o?J_S6;bvEzRu!=3GqJ{}iV5q9+z{N9=QZWFOwV(S|`frC%G2`q-McGG0v}D)(Su~!&~8U=qx z2e{BdZyuH!po1E_@xFUFhMui%tm!x?JRN@6=kdMWjY@S@Wy0Rz!r?Z}~(88vIoGg7<{R-ML8 zCg+y}MliGVUq{Exq`Ynau-!Z2IU2h}eA5!q*Oz_d-!jQK{rRf36 zc9u?3>faPogEi`r>1HT`5EChaiaxU;pfsyh6+Y><=_16L42!>r)J<{T>H;UOI z!0AxOIN4*tp=$@W+BGl1FATgEaPCa0Hv}1$m`PXkfU&}YOnVb-29g895L!3ilDG8) z84k5mOukK}gD<%%$37n%N9^q&2XLp&>ZS&Q%!OxGgw)`noy)bNtd9MIPn3dudZ*D0khzo?WRYTE zXrCD{+qzv0g-xzO?5pm>A|H0mYaSFBl2y-JUo znto>qonbJ!mDjmlt}y`N!vJ?8Dtlfx)U%oUR?mt@nkrWVNTp!$r;s{4T%N0vp0%G* zk#jbMqzrUYes{MYk2Z8}0GSlMOhcnsH!ZnJk1~ye5}o7YdMkcr4>C+#=ZmJX{Bl))z@>vQN4YeKY8|iTy4)-Plm7UBZ=pD|ZJGc%5~a0cQS)%A63D zV&9o zbRZVp$v zxP>slm1=}CX;FM`dPp0YburM5hXpcYmp#oG{Q{6jl_E@@kH-IgP}|tc%T|?sH%Di} zPgWr68<5Er!)J#y`zs@|6o~y+6?aIYP&MEkm-he`y0-i&+~c z=dTJR_l~)aBQ>8`97uFN)2lcTHnB%sdZr9jW%eBLGgnRt*1_1BnpgJW1+Jyt{E5v#LpsVS9sksrbOz&Mdy@(QkqsPFdaGi^qLCWOi($1_hO8^ zyXQHf&}T+iPL_RA`YAT)AtS;MoG5gfQ>v%tzyD!)SxBU?*T)14< z{Th4~)h&Ed;l>%!kRLQsl8!H(J$nrUNE6RFZM3Oh%0Kk=8H{C3XEWoNa3}Lh2`%{g z7#I&X#d>ELsocC0cB^Oo<$aggrO3$By_t_54<8^rEc=^v#cn3qeD%E$nC}GmD21-~ zCGy(oLk=@{`qEl(Zxw{DKY5UejJ8IIWGov7`%nBP7*1>EuO0?J9{k{>XveA!DcpzQ z@vcQjS0YjEitsY;m8pZMC`q_hb-Bnr6C_7VjHenNb@a5O5+k$~Ws_3Ol#!zV+^koDB2+7yJ&Q2YWn>+ur;EUVjQ6%6m_f z0mibf)C(h0F`wkM_>QG?zw#jHv3_I+AG@#f$yaw_hjaJ`>9+?`Q1&CzS3p1j1irz0 z;xu>z+zfVzEP>vDn#gFCFTD8fmpX9%$r}{-Fb-%w1l|^e^-Zb18n}@jH{mB|b_*o) zJvloOkwzxSOzc2#_8`cMJ%MC zc7O3oi;$)7Lp5@C+&G5zT5aC*3S|>0@^co_S$#XC9lopCPpr^+eWM)4^Y`te1r{vz z1Ft9`SYXEs7gC6fs{#24`uE!(yyG2L{UGRi_Se(-xeC4h7UK6mhpwrQG?ViLA!4F+ zNL4$`htv5S#@<0*vb`}zIn@?w<)A6s=tFv{70Us9gcKBmn=QqsKUDpAW3yUH#f6<7 z3RQxk5@DCTqnX4|riiI*4*L5?`BHRhn>sV&gS;*5#79Qq&Pxk;mx*rCkLHxvWvwth zupW1&p!!bwkGL0`|Dzly_u%S+UJ zv*Pw+{bD)JPX8KrTO)c$qDRz=8dlaG)sAWGNl4;UH$n!?0M%88DkHKu_elC5~ zQdI}EGRY)TNCp){U}aL<=zgdBXxs;I<<%b!!F`y|=LGY!C#gj77WfhCfwJg5+-c0} zEXwf1wR|yy^E+1|a6V(k6^MpR2eMs#xW2_;Hf8EkU(h2>)Y*->c^Q>@sZff#ikW{f z!A(K!BW)>C^6G&3LX}(1q!mIxi4}SIBT6xOAs9!-9W25;AB}OzCO0;0@tZYLzGZ%X zx0Iq%d2;{!Nbc5ijJD@7J<6LMytQbH^H+6zuD_mSZCUNJzEZ1`Fwa61VXOWS}ZfhE0U=oWBm!1+gpK0H(ZnSZ8)R{f7eed+Y4BIKmAq-TnIj)o^ z$fv~yH|QHi^{A|A?*M&Ep;#X(^-BEj;+r$UFYCVDH>ldjRoi#**h{?I`(^uL8+@#- z%4kx;&~aCN91N4dPs75_Hq#~GBG_>dc<@uUh8z!GmcRFWu5y`Xz3voaR%be2UFSWumcN#_AO3Ytj@}-VrZ-Q=E2NzIUGgCQ~ zggUCj7p6=G)Cp5opRiT_g|gP2d1-BJ6Ir*9+M_A3XciA8zy#5=X%%a zxXcjB9hGZVFge1SKxX|jT~nO1dxf@CB$yNtuU;W9k-VQhKmjP41t+NQRe{?GR3YNS?pLJPzN(#jst3b^sy$k< zM+g*sNkw2>7^$#gyK?m8f2wYoGL{RgJ?f$`(Am6;R>CHz<_Lxu;_x;znrnwsBzC)r z+9Ho|0m+aYP1y~O)+n)5i%aBBp56GGx&J4Oo6HBLddHT;jP)mvTMRb5b3~xF-A*yr-`vXmFRT=DCO>P< zx9uxx`KG-f5Gv26iv3YQd)88U_x^FI;yf*=LwJ%X&spLV@2cD(VO#N0)~a(*4mt!g zX{(gDXvrW#-~SAXf{nYMt1_kuaC?qB)$>?24i0L29pri5rQIi_0QZyTSlV}WtopQ6 zkId7#$w7B@CoTyl{VvTWeM8_XngJ9mMAVlPR z#C40XL7jwRknrke-|lWl@PA;Tpz)ZOQs3mqh^4v=7j*Z(JJd(QH7LJ0@%*U|5aSm`I}d|*qJ-1IwQpQZEZ+I^*Xfxe<#$!k15t~*>v3FIYD%$+)O?E2da{e7hNU54T;yfKPQs2-ngrO2jJUg$`r6V z9(%;&hwLGjGC$BEEXSRi8$a)<~X za>(kVA3#;W;HvwVxrVDT20u`;lYD0*iHAtAhLM;+EKeZEZ^%Qth*vY=uYVvQ$I&DTT$~Lc*RqQv%-@e|?@-BV zT=4B5U@4D^-= zcB9{?qd~tbO{1R4zF!!(k6#FH-A#}0E~qCR`XKx`@RRwdRKIU|0^DBOJEP3%?pnZs;|J3ilY zHSXJI-_HZ8AGwYv2kL6O(f4;fmA6tdci?gO`qw|QVplVf z@{BJ;prSaFC&ouoP?u3%N0FH2qP;kdA1KU{TN&*?BHC~r7rQ>aXaUFUHXjh#xnc#YozNh5P|#_$NOihVM-9NFG+ z*1*qy#5>TSL4}=njJ9`jd$jnb2{j z*-n&KgV=}{afJwY|FuS8Qf`TwN6&z44}jj&%z#M=L;8S&5!pur~MP>#r#Avlxie zg+qv#cEso!4ZQJ3nx&%;@1kx=2^KzyH7CIK%jHDu!@B&CytU5m zwdUoMl)De3s_Pi$COlX|C&S+$E;0HQ%I5aA%SONz6^=Ps5Kv@`l3)pJ6__ZI;=#7~ z72q7n2I~^w{*0iv_T5lJW=rQee0_1;&sOj5?y99|ReY|o7N7aG)<)yDcU^_z=)I(N zo}{-iXykN7jUnt>I?>K_py)c$U?g*lrEi{AYip8xNQp!%5Y3Nc6l~5Usi#2wLElhFuCR{rdc+CcJRjPX+iHmxadWg^(-DH;kZJ?^+ zTJ){({rwU+*&#Z2D(!@>(1n$=rv5yNQ^|W8JUSFI3=1=20c)R43Mm6j z$gT?%r4DDJl>?hPc+4&t^YYp8`f`%4)!v>MyFD~o*~bo@3kT0~^<$;#PMVLEs6yvs z!SOyI7ueuye{Cqs!>98i(YXbM@~BU#vRn~|;WX$h=#j{yZYnUY3LVU}y9>MX=V>0i z>zqHX?a*ujqV7iQ?;6G3liVC|V^rOlG%#eV`=-gQrpFf~;-*T`x9d`2iCzY)N~POQ zm-~B&eVqL-Vp6wytn9|~T4f-gfDQ7;FrBA5j^k z80)!%_T|v+(o1j0UW@#LIDsSGo`J+s!S*UV2Yis5*!}kNI%Rf8yuAl|la#081O@KD zK6@kvtQIh`TsfgVt!J)HyZ>{Y2g(9p!KI5&9#8T|KK63HQyOVNnzwyp@LBPY+v>dN zU-0XqIvD^A$DVwzbA99eg@w!X%V+OOPQyWe_HI)t@J&4Y-pV<_N@9*=;*dn*^j$wi zQsT!tKUMBj6}m^> z_R12L$&!BoVH7vgTgjuzu0yq3)q_!#D5!Z@*xnh-ll?8oKM?N5y7L6HyjyrUycrZV z9xPI-4WgtBd=ro-fI*DLL%Wla6;4~7Fs;DFvBpp;DZ82g7l+j-MF1lnK!N&zH_%=O z&)YP~dsdk>&VUp~#`gVLG-vsR{XxUVp;l&2%9uJu9PAC}%KZ;#!G0jN)A8WPDQ>AC zBKwrVp!4$MwL8;sGAf?AcgG2{dx3l;*&HwAbt-h;{iSaCy}NLTJ+5SRLUE^|Xq7rbeA&l=RmN90rY^F6AwqD7LuK{$UHgUU zpndHDnE=7kV)#-o`rTb@RE4sFoW{7Tvu{oNciU?Z3g(f(G_OPW8hJ|Bs=w@N2Sd!|=0bJ!-`0*hcq2x*VO#Xi&h> zA>e3Glrg$=bQz-&5eK4@IvP=Y2Z~~S4il^wOpF)4{Rj7NzdhS?pVxUE2Qw6z$wTyH zw(@6T5#O7x;O+N)5izAgYq^SNu43H-RXqG4eoXiwwYoyA>_9E3#EX!n+-RAPd!;}N zrBZuwP$CJqSUA}Cj-k(C%-w`fzFRp0sxg+@pFiF!)(a?`?`J4=LsdCoRa=A)zM$zp zOw)C~!m7O&74}zmxM*pRq&-L66fyqO=Vb;zIBz8ste=8PAX&jpL(s<|*-7+l$>xnZ zERu=bDzia+91MzlQm!l`$zHJ@PWNo*$AI6;QEC^1Sa!)+_#3B~O?!>}YH)(e?(Y%E z{Mc-f7QgPBk7#^!EqMC~AZoPT6e z5pfrOoJm3?{)^D=_%|)<`?0D-jcNJPS9|ivI*iHJm_WJXhx|{^?jU9Cb{ZhUl0;GM z*n%OA0yBK$ITrlbDkTh>^tO`6e{F3|GM0@m%>(bKZT@6y8 zh}3E)EP;9_wrM}&7zyD?wejNqmrek~fn7Wvfd>$8UmTP3M7-bc|DC|)7MH!B>X+Yw zXj1k9Q{^-n_5?2vUX5O!L_%=x`CJP=2Ei)W zD%Ywr_hMgvPk%iTpX+In8?ZMr(m&oh(RbL2earAxpZ;vF;X?oI34MKz#o=6TfI=U% zPtI=qfxh1@Ki=Ut5BjY`2o@j4Z+ud-uu~bE>+_plpYIpcz&i}Mpg!8#p~}QnJeXNq z?;PO%WwQL$mdG-uBHS>#!WQ9CvERT>67{Q_tgj65-bGUdTP6fF9R7N>hN~^9duqt< zv;*&ynxKX|DDF~W?fwJ35{Gr(9o1ON!bQjY;B3>Ynq`_Qvng;xfI`x?QZ!? zLf8|+6jr6Pmh8kefSDM5#_nqE7yOtn|wsI`c- z6&?LUK2V8~Nf=DG2`|B;kcnTGkx`2Bm%S!;{&|)=mz7)Hdr4SSg{<~Kl=jauKtZ~@z4DAQy{G5)1$`l+@Y_1o@ce_qBEi;u+#KAQe09 zj%*#NR>VjRx7kVbIfT`dP31{IHa^ynA!3ft06}l+qp6Go{}G~c(gtRswG{shN2Bl0 z=iQ_hO5Z&Xj^A7U`3QG@oXQYP|67HWr;2LW8}Jv{r40Vy8Y_g=E3o+;eZI&>gYqAP zv(QrOwMK(&76puwnVKTV-J*OI(!T96>z+;==7qyCnuKSxeHgC@VC=u-qs-jcb~_Y7 z@J|uObG#}cBDsLuCzIL6<2ws~q?Be_Z;&}?JkQ}g2EwC}-6S929pU;$wp~8dXCw96 z>A`tm9wwveZSc?5>VHXjr@tT-;Qr!LZ6#XM@kV!~Kfar~DJ>WWRdsZGZVtctq+;?O z?O~J@UUTvZS;-Z`xEz|DU`<1P zavn-~x?-}wpk_@UJ1F)ZYLO!?sPQxH)VWxshIT z86w}PX#LOr2SOEY^iShqAPGL`MfpSE{hv0naufqOW@3r(bP+{H(&g#IH?gevE=#Zgh2%N7m zqmbcgKg%)Lmk?c=Z6t*bQafLR5fIy&EYS|ds&$ZBGBpq=T5M(o5v!sWx}VyHU9y6l z@a{b%Kw_(vIgSZGCI(2pG{qb)$!m+b!cw~tcr z#)ngx7mE!&uu_W)m&5YLT5>25q;48Y3c`{{2;kxFVW0DEk@L_y?^xW~2u#6%NA73v z^o`+z+WYzr+PZKh2(>__$R^?6oHdvfiw7ZpgkR~ZmNS593-;}8)NP+K0otl!O0R&n zBEdKS`(Os=9WRbb1N5Ns1c;=@B$`A6_Oq7}XsR3T!S`ZG)@7-qmu3|@O>|6}Zma*V z^yRfD5{y2HEva~jyT1q1J$O9I>&(!6i;06qKy3wb&1_Pwlbf&WD=53_@}Se=9Y*X_ z84g=kEZF5GgH4{3`)61h+J!ba)YIh%!IE=N1?EW_wR)@c_&*$+D-*!q$KiLHY6U6u zC(quRI{bD#-m84z5^U4;Zi}q`=oU944cDSag>*wfVm^K#<&{vOCqu@WctYpJ|br z*O}8I=LQ%HYL-r)xEE1+5r0(t{?~aWjlIM_S9@UMmYNO9E=0^y-OyUF@LkMg;Og(d1dfApfj|N!K<+%# zOk`+G$$#b=7-#$OhuGMD>8p(+uC5S0Y@zy6+iLU(C*=T2=6bX}>~49yF34tFEZ_-J zzuLnW3+a~!!Lg^hlOv}dMV*jF3SB5Wlld~Hlw0xgTpP5f#Uj5cZv5TN$8QUdBzqw& zP|AKy=~tVA*3HsW^91m)p(4`nM|)DWkf?Qyk_nBY75(EQo=k)zZkR-y|6vDtMurGP zhBJk~0dP|ItbObvmil{ZMvp6#%qXb5fV*!tL@I@#XydA(m$KG0yt4nqOuV)s06H9p z8>4LT{lkDjIknI{`JRAI0t@MnZa;qRzhd2=-H-dRj1vdAH?BP}_Do!tA0Hba&2Mv( z&(ng(?r=Y!q&>ftra3*5T~+A(b&5Bxk?)UxrFmv)ULZcRkK+}vb#Gi%-n(Sj{Wx7^ zVQWhy5%G66Z@Er|20?H zU>X2>!21^b=2uM>5JFhnyL|dxp?A{%oXd`eo3{+yDEKHO(^=Eqw%N~Ow0`<3@L!f~ zd#)``e{>f)5D>kS>UDxH;G4I<1^o2$ho_z5*^N_UQ(Uh4aO>gCG8D|c`OqdEb(|bx z*Y~h^>xvmkiF+p-5Z{{nK&~PZ&JV7&12;Q;J4HkFBP1_7iA&)jo}!VtRG1zaeuN5f zCqv_A{Bo&K7ak_~4N?uSNcHuP00ewl(0XtGD=C4jHcT%Q6U@{91UWfD$K2+j)u>*# zSUE{u8U6J9K2}cfPl58Um~&o&L8Ocy^o$7}81u%U0EnIDgxREbv)b z*N)$>rG)Ri+bg7J<`({>;Q|!6zE%`3$qb6|?MUBm5`;%Xr#2wqE*X4n5V}5TG*Rzg z{l*BvM&ek|M0zBW6B)<~G2x`Xj)0Sk(Q5@!>xGhRj?#~BhKb>xL^3|tz$*G7;}(~} zGQ;ThV7lo+lF=ErcxGlj`AI*b&874E4dCc61vUOTqAxS>sss&Ken0KlXYX)a#FkV$Q)(z6H2t;fI9Dxmg%OI+x!?kaH|;T5 zBurM6pdl}`$1vvNLein1`Cj7wI%$SGZ*9{i3zWWlwLyhLiVOUhC!5m^dF+F^Z0MJ7 zAyuvR|2ik{AU$-k4y-w>?pDPFCv%*Hp6b9Q&stevkrrEsvM_MYtGF2-6nGsm-Uh}; z1!qZ!v_F7b5PW3T1jJ~0xjbaQX{d|3c=UQjudRYe#9!z1v ze$_Xoo9E6Y{Wn>5w;{iOLur|ElI9&2|0^JMS@;u^a@w!D;&J)XyTHs$pO77KPcjIh zg32sl-zG-fH2ITnO}`_yZUxMfI;#IF{Qk7S&{rgPTENv_CP+eD4Zp|S`U+`@5nK8O zd(;8O@Ie19(3c8F;Q=JO&LSoOq{IJxRkEL;_+45xaoMzogt6jEe-@Jr88Dbj#-#l^ zx$E5kzm3U27oK=5!0BlyeA_U=Gm9dHA$$rrK$7}n^8!Td$Ois&EA$3`NsDsfC00l? zNTL0UxHZ31PCLY&6i9TEH*TuA3TgQyk=1}?{+I9Jl#>0t=V&VyzB=G2&KG0YDH5=N z6w@`Zy(MN96N`r>ZUI(gWFj4Q@P`1B3d<^RPD?J$g_MDHq0z*E4;d#y*Wm$~=`U}$ zzldXgG!Z0QRGkbepW~)ekrjSa3zuY+(*o49oVwFwJQ5*enp-RiaBwnIr%EM^>hC!4ZhK{dv`m@?XvYFID1b6nUef>q zBf}7!eMgMM`*#3Z2QO2(kd?u^-1SY$e4!BCONBxKye9Doy9sgg!2G_pt!F#-b(fLfE3g z@)n>vqOne`R?F_{;|hs5OZ2?K%y>~!EF7-3;za16E~o#v0sR)o>MC7mjiqgYg*#^B zj#0s6uF%n|g-9m<1j+^^=FcEDB@kOsZD zLdK$|tu%q!Km`jY(2HVe&jLj0Le3qhemaQbWn6Aj!RsWrKM8)4lJF`&H8c)>Hdf^B zZKdA$vIr?Bh^kV^+fYoDi*j?%DzSxzsY9Q9T$iW1O4&P7!v#x0GUf6m_H= zS1}>js)|2)0Jo9ts9lD~P{A1d&9iQhH~H|8TJ!{0EyO6O@H)nB?Sut)n5p6UWf?O< zae2qv3*|V|a<^g*1DPyx;gzEzpXT7_pO#x~nB8W=v-9TqcsYgs)n7Mfs|E~8g6sKOtiKm0Qy2*m$s6k)ejLcpuXT}e z#k06f$X4+1 z7eKL>`l&+&Um- z@-f9GaBPl&-0a<@pGQoVMnnZ;d$uIe;7KB1(5s}M$bV3Lj4XDhd=+q$B+{V!pROb0D#l)kCDY|6Y z5~gAzLV8N+0qHUFJU)c__#~9o0kkj;;6W6HDO5ph!hNaGCwsW6)VZ=e)ulORZwwMM zr6sub7yLl6Q-oGC^FarToJ^Cx6LoMy$U~6TGzV0EdbY4ZQP!hAo2>QGBDL_FqCekz zCyqvV(E}38uXyLnw@&g47%)2$AVdPJS$q7ogrkO{UOY&>?SMEYpCF~luP6Phny&zNJ)JC_gvbYtq|=H86^^sIiWj(n znyzj8Hh|cET+u26G$ur7OSxHvUj72H^z%`;&`qBR0|JRhM=!>reqofAv2Wg*U9-S^ z_=F&E9daqiObRlI;&_aXPCdAGZs%q~7=nNoP@^IOxa-9*`WREDzg?Lip zZh9Y3zI-v2d``xD@8M-s3_rT3nS3f00!=AEIt3X`LuQ|QbVuR47b*LQ3MQC2JGcma z|9Oqb0^k4d`=`&}J7n{Zx2eTm5BMfJdMQD0Pqkw2`;YM8C#g!isXs1ZbIfOdkA8`Z zPDwEM7a-XG!AKujnZUzR!XynTAd1s9(o&FzKv`So78KeQSnK7A=xXRHRawJN5&2Ty(zL5gSUS@6bj9iw?}6POvNcR?>I(f}y&@#Lia` z-ztR`*w&bC=L#q)w2hZs^>l8<+6W|mn~G4il@R$RWD%)xM^)l1ipfi3W6@H-cOzG| zP?yS)BJy694jR5)#myG~$(&$Hv>sDg+08a2(({E?JbKJ*Ig)6Cn#Z>t_pLlML4SM$ zKcBBLXdb$8*T5^hU?lB+M_lOFcS5Ge)_;fCrs_SvU`A*gALu@)V3qYM>%rJJ2M3L& z-Q5yB7k2Nzx03gKCj+ChoK8!c9~VS>cSxR*y~DAUIm@lD*G`mt-Y*xHDN~qJw6o7< z!$#3y4~_dYQFzv)-p(b`fYk#Fb<*8^t>1yF^7nElytEV8slo;WNH~%KX(}P!R+>t? zeugv^DRvg?@R7z)ajhUPpft}>CY9)$Oa+lozara&El{??hG|*L5Kx0{;H=;qtF|N) z-Pg)E^UR@jT0gcnRoJ9pM$}oNx3cY?)$6;GvpR>rtGOi^f3nBobSk||B(ohS^9B9z z0m}{xA+H@}LTL^qF6xEfK;z6=Q+R1ytd=)BOIC~|k zzVrrczD$W7iQcqj$J(RWHh~rzuL=#USfUI}h}ESjajm7B9rU*x?fzjKA;mXnUBABoH?LBU}(PJ>VOh7JI1ntZSi;y4R#S&hEL5 z-gY*nKJ;}mH|uq2H+0tUjer;7Q~I-(JUbZP9u2d?N*zAx)r;~kAUU?tONa6P!K-nM zDf`w8Dw*IB?)~+mKcs9*P|jrqijj0WG^Ip%^2-?xfl&>8HBh1#R`YC_`B8IQ;expH zW`A@{J!^#$uNO2=o%qiNx6vUQ6q=<2#4o}s-+5I z^QO=mD9aj$7>o{k%1`uTi)(@}_Su26&~t1L4TrEO%9~2(ZStGDPalp=Okf+@b6rHq z$Rn#2DY@42DJ~+-YSjyOe~S&K5)d?oB!O2IRa(%UowSOz&l0A}$xM-@ z3KOhMzoWOW>rqtRnKe-;g2aOvY|zo9I1Tsa2OTD_r^r;$O^kwtd-ECu!Rw-xtPQv! zeiAzD%uq9$WDM56N#$eibR9^HC~47G9wm0~p0}FndQ@x7q+V(FQ?)CN_dJk=YtY1V z_=h-xZE%_4#lf}5%H2OBM6brlZuofSC zha)`baB(wRR6(IDO!A`3o1V+&dpGBx1S=lgag`xxL6X)SBBdm*EJ&tcD4J$JN4yvO zB%Aq(zlQ&jk+Y9L@e(<&jYuVlu{EVp0B!5IAzqBH6?VYG#?$Z+R1Y~&A`I_VN^Gf* z`cUZd8t0tzKITs#_7JS`AobLMP8$V>I!>i4Q#g@@OKvtIVi!;L4uF;EeIST2{+y?u zGa^tCZMt%%yw07O-uN_D>A1_PxAL_jkIORuW7Baty!O2C<=DZ3!_T^e^Nv`~g$csk zNaKlq}q1=K)ew+bS6bIeGq2owoj6FRGsYSfwvt&C!97P{P1=QernfNyGiw#ru z=lO1W+k~6FLWeu{^hFQR2b4$O%3LXZq50ZW`>6E?F`=QsJ}U=UfLOsmhJY+OR5*4L|0Q+s;#xoU#n@x?aXz0>gC6(z66f;nFKg&`Jn3~TOX@rTavu_4 z{5UnbgRl@cY{pCqv_BKAlZRvTU+fnKUgVq|-Osx&?9}V}=(@a;3CC98(fNBHO<-K{ zTHez%9S)kG_j_woL6pl+p$Kf(nLs+x*oGzDcn#Qw$IsVI7=_I@|HVT=e zvcC*?0t~TD>AcJmDUm_NPtRrBp%&72uMJctijg0Wyx64=M^M1z3v`I8G-LE#QeN6& zeAm%xp4Y$<)NG%w_xn=U3;|IjtW?gf{X|&S{{&01D1wB>m{cj*b|2&~;pXq{1OCFv zkN13IGDE%E0%l^YDPE$!Z(e6Hq!dz{qrz82_!mhN7UcKb8*Oahp*h0AtG$JHpUMvZ zT1pirntqYbdD;F6=RqzEhh_gFO2<`weppCGc(+??HORDmUPk1kAx}akUF^xOisYwz zf8VZM*5BYj!%D25Dx!h90l|r15lxFU=S)NjHE;LN-X4kqs=WezI1bl`j6PmB%B+T8 zAcMD414>qd+qMvoMUl1y4Z;?l9&WBu9RyoGoNF75+Cn1PsHT{pTwaW(MzViC?GH!0 z0DJtHBdE(GsABdbkc%#9A zS1UE`2T|q$ii3qSreI}M&a-x<+r<_~#AWV=gTF}LOWr4!?M&Z%DI$;oG6^#K5D=mz znUcUBNbz)Jo{k}Al0z)_GER+jw`jBuFoB5U;rqBHrZnh&Z0X;IJ*W+(ltL@Tke$7G z(7nu<0eh4;)>83Ju^ON+0h zptQ{3oJNK}G=K7{za5J|5_0faMukrrCA>~#;^CLnoIRC^aw+=|%zOymapo0%6$(iy z0OWuGJqkpUbs~`9ptH}-f)08|=TAB3m7^tYlA z7N|pqk+~&odNG6sr}aQrLD#EnJrE{wdeBS<4;R`>RMTIptw zwxufkTwo@K4wwg^_%#>Iu%vAoR>T%OBC!X(jtbq~DSm}ZjUCvh!f{u_L-|Iw>zr~$ zrnUxGX}W}QF2?w%-@fseF`>(vzb8=zBxo)L_J;=AY?ZqEpe)scihd%)u!saS+H{|! zMIj(F0x8FbL71gDF76KvC%gk%v*Oh`g{BRBnH9|Aej)y)XD!ZQw$ajO8FGDykk^_J z!XY+XOq(#v#IOMWA5a9JhzWoYnyxQNSc{|gokLLrB>vq&x7sxuupw_vAX%}QHL<0V zv{Ex#W>^%T%^9^@Tzx)JrhwWIqX`Qvu(D%Xb<|3p3OH!H?e6Pm5Wptrenl2%W?w=j ze{uxP$*3<9lGyG8Q$2f@9)yY*ctz0d3SG7mbsNy;mAqH0FLy+#e66`|M4bML%%E7$ z+wT)$0U`sCb0bRicKOt*WWWStt{RoEnPY0&$lv4DW;+3OsYEg37vk~BuOmGrqw@2N z7u8Av@GuW-jn*Qp>n&7)CCtxAp-5yJRq*0uXzKlD3&{c^P$gpq&OdDOAZO|aWxnrf zxLyDnvY_~GVE0j=yZwo|xU=uW?3H@tUSX+ifCL?7A1qrOk%x~+OL|^PJ4*q_7XsTl z{9!vvzf>#UH(BmZ^1p+1GVf63fTS+9w9W+;B~#j(RUP%K)M&&>l?~)_k)^+p3dWX` zVR#&QuYm#~PH5Bxd+i&OveM@r-ZleGoKFbTKt2)+#sZWagY!ktoOT3?HawrzSkGmv z|8{B1n92)wkp+!>@ zkYoYg%+hl*Ar|UKm=tiWx%5S<7KRKMaxF~K?70hgDVj9`psfa>l)3#zn&+w6P#uD_ z3P1sw0GbNs$c;W-cE!K;g|GODW~_}S9&RKWQ~VfbHVLlhy<-ZV>8g(WDnALy^F!V;vKEz zSszb%TgW>Ey5!ZoR7Qd2C5## zL!$66G7cPGxBO--ZOy(Yf*tA$jPKj=f|L10cxclww9UboB5DjFff(wLlR#3_hBeQA zyl%Bz^KtHGeW}X{K?`=nVYcYvmHPGFMGifL4-Cq@c*JzELRG)w-?qCM{Vx595G$h19*t&QhDP@wH;Uy!5VOEb1 z8ztBl7V*HEr-mub=Ng~#>!o-q0drET)P`9t_Mx{91lqcgG?ZqEmcEbki&RT<-}DsC7#!O!t~X6^6S=BH|T_U zrU;k(&J4Z@mFdowHZ(#8P>dgoMcO)n2IiO5n=W-fyrf+nG-9lCogVg|+>PBogt_c^ z8EtqnLI1@@x7xF;m#QASYtcE^W~$ybSd;ha$6OhsQ`1;v_v1KJ@_VJ=rcuq{^1~}B6=WLxVtz|OrgYlOB7l>@e zxlivp>UN-}+@_(1R6Fb~lQ7~mGw4g%g&m!oA=j3o!#&!|zC6*=TwX2qMBcieLHY)#1(vVtIE3jKk^v;Ply#}K z!Wfj3$7mBpCgF9=*G`#W@Y(G|j zu?1u_RBvAQWzZbtf*;8Xc9+s{|NdI8q_A86u+RPBKk$Hv!4z`6zL1jv$KE%^dmCbz zKUYC4bI>pOgl5T|tc2n2w|CUpeDYL0>q82IGgE*^5V1(YS3e|hS($pU8XcvCp#(mE z{;&e-I^bi?-hOxd0(kJ%WWfcF&NKt3KufYGqg?(%`gR~)ZfLtLn7=*x7KXi;E1OMxV9J9GsNOx5b0L;zB8Y>(dFhxV{`$}|VbwjS^Lj3ld*#1oK$RL4 zw))lzKc|k74kk$#t^7~p3&&@`ry6T|u2m&x!SUU$cK8x1F;Zy3^H!enrzRzZ^qp3-~INy zT;1wLF7QL#=cE?};7)@|c*kpjC@MhEwC$vHZ8}V}P-roKWSDG!;lt#)v-dBdjdau~ z^kfy{>A?-Gv{vRUMlxK^zg808LdbB56QU(>?TfYPGZ{_)RJ;*CS_;28x>L@-ayunwoP`cz6fv3>%?9*iCpS|{edFE5(9eM z@MrK8unP6j->Epq7!l6=b`7=W5phZxRNMxgo2$~@(|xJy^l7`wt}Z)?!OqSuaBvKxEQgW1Mv}|bh(Z(z%?K$g zkL6krECyEw@2hn~aJeGtxYMdAOp#=ls;Wq?b*|k%V{4y3TifY<*VEO_-4Xe#p(lYo zjXKK=lgdMhO1m_YA{h3X`y!vycU~btAN$>$SgO{X5+4FoLLxYTSv~UN) z6`Y0D##XmI{EEWyg!MLPb*ZKb&p(U$61D=BgyHeFlJGL&+}X$UC&JC$zm zYVIGr_Ald9d*L9+ICFJ0tbh=6=zyyLB=OP4{+6P}wm;&NBNXFZo!xy=idGryCzH+T zhy5)xzVALbn(TRGzeLrA%4+!IHisZ==ii|1`BxXXhr9|ZU;$>m>3SL8DKe)Xxr-G< zKXjn`@KL08nQ(rR&;yDXx&AlV*)Wm6Un-bHhY+!}5U~)2Hk`QBe>1D$_bRA7bPk+M zhCfNe&*1bMqaH$WzFQ#L)KSe5Y16T{k&o5wsrpN%b+U z(w}0O&C3l9<($8^;wQAU$iM+-!#pU6j^rqw8GOy020&ph1VuEX@|13z2l6%DW20I% z9Yc#R6_)y=?a?nbfcr<(765V3+;&|$I(PVezK;2)6hQd0!j?VY_|Ww7&?}3FEX^7D zat_)$wvLq`mw*L=a?kFm9hz7s-R{uA4CC$Lt+g};_;JMKu=1^@FOoW2D)L=T!^UEv zw4XzCa6jX~QMU*_3ZTGqKUbr_`@HZXCmbu!d3A>H3jZPq~_|e zkALo?uQ?X$Ob!r^x+UIR0`Ewm^`FUEehnlFB&!5g80@$C;`W77zLc?0rOfPY)`?8V z1BEKtrdKW0M)uex?1km)vl5N6cI=h2izX5h2lmzHo7ssz57#u)3^4^2u=MW;g#xkz zRuUI>>Q~BB?4UTmTY34z9vbwfuuisJ&3H_boCQq9Bj0k-azI;L?B=i!A4Ul2ahG1*|5 zw#AtBr51^hIdwyAsaqdb?3H)O*xUcY4-a=yw(eK=7Pq{qS!*A5=wX_Hp!0`J= zp4dqx-z^yQF9E*umu~ZYgpOcSEigfoqA;yIGYMAs-Kx?>}0HbPMZkeLf{Q2FMCK(RzhT$SA)Na(JWxJw}>y{%~02!_yrVKXZgY z!sS<99*t zK|!&>k%glj*tQQ=NZpWy(`-8rQ=9MJ&GE4VjY&!M*6|9y&|iXjC%q(tpYRP7 zpyt2ayUjXHji460P_YAg_D!uz(62XZ-5JSJdhe?)8FI@3rV~uiyeItU-h#8mVih4( zMWR&=k9`j~uv}5(1c&%KI|s4Re@M)epwtc?+K5RO(s0 z`nAd}O!oUJZXJ3g{K>PKf_xE|lNW0+Z(WYOAe$^Z< zdkKT>iM3l(G@N;Ekyl+$f2i3Jf9NTh-#zCv!YPyfhZ0X%J#MR9>+ZI)FJ8GoQiEF8 zBStQ{P8i2AKIcatcRyxQ@wC8rQqf?dK;W+(!{G4&CVAY2EjhBV2iE8Wo?nAgso^26 z*6q!!4sc8)`?+v|+U0YddEbL)=6_!78IRO~zYQ(~je^5qk5fV-?)HTu^=j`Te?YL` zEN_cd{!&-GR+e`5(gL@qC&4!5+&@_a)33d1_%7DLo4u_Yg7Y2<7stKPbTz!8dW&z*L9IyiRFw(LQkE$uR}-b z+6=WNs?D6P5;|yL`r9>y{ae0esICU^G`32xp67CT3ieSE`x2sL&6^3=# z+mc5a7fjki6)+zl5#kP7>DL0fB~b5#GHG%1gN?TfLd)ej3xeK{Bt&>&ilhPQJJZV0 zIs5BWNNWskNS!1op&Ph*{M{Gmi4?$;B3kfTdW7%4y7tJT?NQog{=T0Cd>R?zO2}EP z^4cHnqZb?6Sdgf|gZCs0`xDHi{bjqDzU54}z!{}zKL~o>eDu5dCz|_I-GQq{w4ba~ zGotbgq?8`V>zQG~RJV}MFfMo{V)9D_o|mg_kWpirF-8XU=~hWsv!PBy@FgMmq>dO{9lc3z-N|f@S6;7S5B#rx|V_&-tU8Uk92=L8SA|nE#i>09>3L2tuVTSfS zR0HiWg8>KH>vuXgRdxTamrNBCmJ16-cru@c_5;#Akpi-6%{5N$k-!ftF!?{*it%#P{ZQRf|1M zOQO16(&tbo>NPTAXj$iGIyIn#uo$%;V8|c8hMQ#yyUtp)%Y<2t$UegoO zmDLK#NrOlEhp8rarXPPR^O-1MU6lWTB%nn@g?m9HO%sf1qUzL0c})S`+PKDyxTRn>l0 z6%PIqw3cO_N)z9I+_ATck@5=%G^?D6i2b=DT(k}Rk&NnOs+Lm4sxptgxFO)~l38`b zCw|{4yVY{-ky`3>a${A8%%DI4MSO+^QQDTOP+^rhdmSp#TZHP8=8ICVlet_-KLcdf!?H$5}YGIQv`i5Q>^U6e32B(Wy zjtDqq^v#yJH@xlJVqev~UEWx#=ie#>k(KOX7VgXT5++OTe+ZE=mVA9YU7gn7>y`0K zx_H__@Ag1jcSfsDnK(@y&|skhSUM$(h*+{`E(yUe@+EH}fe(9#TpBW+hv09>^1EcE zi>~kNljZ$P6ptS_6w6UZF&;|~fBs#`?zLT9FD;g=`Yi@h2r#|-kcr=dd559;Ek~;# z(QLCZR_5i4vYMw_O}L|1S9-H<3`STM6_PGqhOh;pyr#p+UJ}Or!x6aGUBd-Lj5G@A6Dqqj7Yboa z-P_xTT~$qs*&4(E1n=ngXBU&6vhP<&I((qRS>?5=h&ZUeB5u=eeFPLYL2#+ zNs#P)8tBWbn=YM5C!NhWiZIe?&n3ez#ejCf_3KY>Y&Jf|6`VEc0SE zc{-Pl`12PTLWak3{;?v%b9wM@9*dpN`j=A{&9JHOz75&5xxE>yFZ?JhEMwkbaPmHN zmcO*XeS1gD$XbL&`_)vPOT9ad;Y4~=tNiLDNnV)Pk(}5NzGe|^-PP4>K54T85#+io zzL8qWGLT3&(D^#)b$Dvozn&p`8v8u&w1?pNt;;IdItU&#j7R+aXhxud1syE`T;X6E zJeYs;x9%NShqPfgr+N|r_J7;H$ zR@;DL^r;)RO_hw5JH0C^O_E2-WEtJn<7+x=gG!Qg4+r}S*LWP=%SD(3DzKs3JbnUP z(;D=^)$u`atE_SBz-V`HOJVEa#nv$@s^Y;Egsq1N2kQipX~5#&XOQ8|5H$|`@D?(d zJhM=rcHsVvWf_&Ux4w&Y>3Z{Y;IWo_w(zw>mjo%|9waEMr=v~6JTrY(`>DbE117d? zNP`J2vmtI}bPe-Pbp%zZ!4bZ1>p^CAA>jM7;49OUeLD1XA-J^Xo8-AxX9MaQ-=?lu`{MI!3yXu zfgJbKBdFg(2HB=}>!1IhqO<;M@_qa8eXqv`3`T=6x^bkWj!t28DUOm5WQ2r(8{IlU zQeuQisiQGJqY)4%7WNSA_zo;olxNRhaQ||@Ue|e@*ZX}Ou-aoNMyT^9aUu*%%GwDZ zv;k$=PRE~cH%S-v+1*bV%sVENaD(D~KvY2QO0!nhWNFh{dHLke?be@b(1%M-S06*y zb+l9gsdoezSw^Vx{=WP@bt?wzap`zc=kx&sa4_#7<>%tt6O8?9_$)mEKkI}C1Q>nZ z36~Gzs3+~4Kn-dP244jm3lORd}8`>wlIEbyL;$-TS(Ui;WxaV3Nj=>}axn2i5QgzKED%n%5@ zXON7xN`Cs~{WU67RPns*ym_%C?DilXB1zg?q^JmXIkn&px1-;3 zhGkae?czRnv@r)XO~2*cJo{1X^7^UFj|Jx}XTxt3?M6BT)p4)(S{rf31yls1PHlG|}(Me9GO5+?gTPmr5iN;JX!b@zs`L__7rG0UlLb@poE1rG-w(sMJg&ZnzxmPx|4H9Yb1vKM?plc1s2TbMLA0i3EG3@lfs!Icp-MRUG#Y}@>| zxssZb20QFEru9JfPFBXzI6Gl!TE6p=N`%WysYIlY(OP%WoW9n-Ch1=hnJp6jzs7&o*ny`7qRp84VG(;IiG+zTjw4}JRWjDPi{~mt7Hj}vd3XX0Q(26HB z1e;6~d)%8#H9xGb4o2IL1br;6?1P$$If*7gtP$g;NpfTk^lqNuEr*MTU*|}PVU|np zI#~)#6%^M9^}Wn*nRpvv*pI zusAy5e2q{{EAGIpl6wDHm(0!MZL$*ZoYc$frQJ(5pB@+o%UF@re>&%dU(tbQ;TS? z91wh$BI;T&cOCApVPxcGq1%0m6w2u4mx>US^e1d$u`schly;j=FguYopgdlo8{0ZmayflG)oP90_W> zu`r3$H{xhp9g9_lU}NTIixf@;c$Vw;Ke5-gZT(d1i&k$Uy1M5vIR3)nmJ@PyN#mPy zGEw==T*tDV%@u{#OSgPZzWDC*0uD_fhae?~f8o{s7eL5w*^Fs}GilV&3oU01P zRkzdZ%H>b;kLhV4i-`6!Cbour%^AUo5+@VzZ9=r_V~oVKVa|!}jR!7;Zi7`vh-rxN zwSS6wR}{YixfsXWJ4NK!p@z$8AemmG@`X?9QcDIFh!dF130tIlMY7PGfvSt)Y~jK2 z?++W>!f&b81S%D%oNfK2)73I05mcsCCnPz`$YuNujkA5Vq?N%l(7D!bB znm*k}$;o1YLgUTJ+uW44Fs6wgAWmf#M(aNjL7@!J9Z*?J9e*ll)>SJoTe%*)C#Vb_ zhs!r2MY-P22~9qohS)fj{qj)Q9`)GnQ#j0OiGnoFO!f0`aP63rZ0|#1aL8?OrrZ?O;0G5KhGS zAc}<2ZR%AD%PZR5(xlqxD$in#%o+pl8i2WC0ih=ICpWr_6GyBXIcaNzwGI|Dx3W0j zwVYR_ai+*}<2%X0;A4K{lONJqzlzi^J)1!jh|_{(F6_e6E(Ag82wQ5OOu_tfhbq_Ip!@ z-oF)|_It`amjY59jo_;I|8;vlJ$WA?h(%+vOl@VUR7i&hsm1R4AwS{lz!v>ka` zH7=!i$*cC5ptfkZRbUAOCk1KE&(9Gh(9!rqZAi85T*-y8R;}w?k+lrEZd{=SBDcV+ zCX9{xw8a*L@e@Mt=wwgEWuanjw+dh_=EJ(5+07pd3bfQ-;d1xwC<+}VPVMHSWP9fIp67Ym~TpbmzL4%F-GhmZe;qKZFwQqR_kJkrSx zrjW~(Q`i!FxnRq0lUCh%HvDDVL#R7WYuV~u^OObzQpl;1L$zW0!|f!mJ}J1I^g#Xx zqu0b{(&y3Ni6&2tC@~TMAr>2=djv@*;y!;NQXfGv)xg0i)mfd%HrX7b7^tFvBnQPj6 zaND)sDo@-=Bf4rKKQQ)I&S5obzPmRmQv@{vb!g7_N+um2vME}~WlS~@96<4RbVC2y z5;TAbgRx!}>dCc3TVnUpD1eE9{v#>e1gHr-LB4T?If&5#2R2L^OF|gzgaRHvE>(^F zMG}ic)nlAgf-OcuGEM`i2I=T$4k&(MjjHQV=-CfahfT^| z@Vj2OW{!F~7pO^N4r_?oTgV-p&vTa@ZUd2G;eqG!7KJyApe4__2pV9M^>W)mow14h zh=pLgX7|UCF#Omb>4x$2i|~hT;6B!pJdFztPE2lEUow$0*o@atfBKZRZK7Ow>c+>) zIqUEOpMsqWDzWyH>gpO3R&@kJp@Fi)1{S!+xr1!Cl-@sd&}@9yP&Zi|}y;Sv@3=pfP|crntj z6$9yAaNkM2kr45{wvstysq8R(Q$6)djsTee?*7h6^?L`M5Lx_dgE3#@C+Mv$-%}n3 zDDv)XK5?42zl4zzLRmMH)b1~%@IPUnr}c_<;2Ar=kGz;e;nc-(f=aLiV_R68wa@Wf z$OSu~chG&B2UQ@%jTR;ee^Yz(5Ff@(DJN&zJ&Jd&Lq`x05047L#8NE~hlt@&cLJE0 z=l21gfNYP^&pr7)4Qj1?T$^d4$TN50!7~wLKQ6M+mz*b&RAc9$Ar}7@xyKKOPzv3J zClLxhsmB~6Abqz5ttPTs=t*k#!s~HIp71hl>E;VR9r{OMX=~Xm#4*(*8+k&46gjb+ z1V{leM=s2uJ~w~Zp7_(Go}Kc-J|&C*2_qsD$5RUGQ|if?SL)FEjF4+T4`cy?l>Lr`b%bW}V<{G^$`eWu3`IqTta5}%ZcqayNM(q(iQkLT0yqfH z1nLM6zN|0$cJ9Z!G=z<6qw92G77AbPK*FM=3DZ?m&gov4mv5Ema4B* zNd}$y2)cLZ1{BzYfR((;Xcmv_`2n?O;`dNW^_38wJY+aENXB#*Q5KytxDQa7$NNj{ zJ4a5I{CT1oUMfFU5&zZ92#-H~R}rWO##{zpbRE-x5&tZ0;9dL*5x3_ylv_u z%2KV%R80;#aLQ<8osa4<4K;x@cGJU8!p^U3VYS5gV`Dhc`{}U~EJ|2{FD2C8~dG;+z$uH~x-nM0vYQh16fyP^~d(Crn zEW#B5*;%bUcBPiafY4Y#IUTNATwD=QEsH8xsnyDhNA3DJpK>zF#vTJBgW`-6zD8yvU07)nh~R(- z5)AS?aapQaGa9hT0S<@mHY))_wnZ)RF=xW5XZX`|ISZ*{j(B$qb;Kp}TXFk6=%JYN zg-73Jn;;brp*{BV6i>D#&fc%D$AK18b@9nYWyH3spB3i@q(dHl=I*!g4#5f)Zb!yMgNd4nj>O^27crY~%U+>rJPZl>PsGg?F zozg${AWZv!IB>hm;X-kH(`ra-7)ky?^>PtfiG4WbR&xWd`N#q)hAQhoYI$m%37Dl2 z7@09Cj*&A#N@u&itD}cB&rOb8^>jW=f! zd7DUnS0odnv7@hW;Wx&L&xlTqs|LVdqvt-PhvcUK-k$QLA0)@up1;!1yzHvocB(7q zAkNI7N`FhAWD16o5J3W6qZb_FzU_}Zp$OYfKl_$e@}NC8Bd;))cBfmZuKVnAp>@?` zycz&$x(bV3jj=B_E|3w@iWyDrRM8o}tTbVC+FZ|%QXPK`n2d%?sGq%Baw*-#%dUZS zO*5lSItfmJm@}a#a?wOYI28zAH{37XN8HN+)rk-|-@XKh#g5Tzfzlh|?W$zqC#Etf z=v{=-xx;Z8=O3Nuf9PNlBokj$pHeI}Y;~{rvG{o!yG8c9d%r_ocz4jvvN9sKVozHB zw}!r#0+spG?Z-OC3_BnM2BF|n2CP$KMd%E%C7o2FqAJw!dULmCY6rtM2gpU}a`a`f*-RK#_Nc__q^wGT6edIb%C z3l-AfLjK2qDdV7WENFyW+{Sz0xs1ci)roQfJo#}>D!S##{{xS~jVt^q1Ruce_v98vW0?)rIzsaD$L2gZwLzoUuKKg?8pu7>*I+Z`)mP z^m1#-4J1M3ZCaxV=jQ8MWoL{K=YKibYG+K$0?XI)q)ICBV&i`hx9cgl8hF)J`v(5- zX3GJEAU4!>82-CbU4K*oJ_KhFuLPE%7fp`n(EmG}q0r%ZXN$2bA8_(&dcbx+% zy{IFV^e$i_U7+bD@{HQUJz_)0a-B2WiAOXo4J}^nUYF)oYcm~U=XF#JC-rnM2jodP zUoV?GbZ;8V@k~b$8oK?6fC;y?nvqb>0LS+=LN4r>JlZO)d4U#PP7~c?X{=9 zuB@XGb2Fq7D)YtqllfL{$Ru=TIU|8tmKr8Tupj{lT;%Oph#ggC4-SyS#eHTUJTQD) zL>^GS#{Pnf%%y@^*+7qk%oB$S^alK?*d1uG6_c@f_(rR%52U(5{5 zctUTn(ng%*ytMVth4V=EKtza$ena};?^J&a+=P=3h~H_qPv%RCj80{13gNtkeFY3aZ)e?0-*w=q*? z2nKq#4l+9qUo?M-+XY-}GrxWZ132%x`UU-uBHP+>tU}>uoSxQ`cnA6f9XN=tZU~&) zBGHWY%@4ZQ@=W#5XN%~&U*4Y*#;>qsj8VS>=3tlyyHx_WOs!|EV6E{Z@DX%HZaow@b6fCoK((g3Hi{_iwkY z>gZ(an|Mg8Dedal6=^t;K2fE|{K&#LP9%E&d#a6lzGd8UK>B;li{BCnh5tLm{jDu# z2bu-%P4&#fPIUngI`FC1P{h`KA~qgQx%E}`*N_(^L0Bm5W%17ZnWAlk6~+nO`gg%# zI39N%L4a4TKAhqG%)5L$wV-G0-`&f*)lZ(`MRr(=Z=U6O&_2lMoXNPYNrx4|QBKl% zxw#UwqGAbYT5)L^(g^9`R}*7$q(&A3K|*M)ZLJmB7;IOC4h@6pyFj~ur72X5^oZT{uzelHsY{a}%5T~7u`+NAjczu5kA=t1^!efSpOl{0n(YrB8qb)D zTzrIvHL8l`?TKmX(5 zE~JFi@S?XxAO@Qsn_bgAaUyo$fLE;Ib{^XnVrSGj%;J^AcHpi4S?WL4nAOX0GKRo2 z5A5)s9eTUb;clJ{N-^>10!4&L1shKXg;tdcz^KRV`MRw=lg-DjQ~WVdQM+%AC$zUF zmys7EB3x0|Ipeju{c^oWOf=a>R#Vr>xNwNdk0OUmdafSpaNrC2IJEFilJ` zaDT>miCOrl6aB7Uc1fb2RPt#Nd*waFBnh1;@X0IP)K`-(Cr~GlWjfe6fbai!cBAX* zK7*Sk?>*nGl9vg2mhHuYCB(^j#^mPvoT_$S{@v=k&mBa{)c>_DB3m!Y)O#w!C?8A@ zji{6$jo6PSp%JM)?8eTWoLuxqI~im7RjR-~ro*Ue{t%yxk}E~fS(V%y@l2arx~FQ> z5zxYNpeTD7HBU#iGmQ*;*(uN$C1s!TJeDx>glf}vY5h}IgAyT83D0< znoHJxFw^~E!?D0cr%rje?&8wo8gI_5#w0hoK;4aq#p8VVaAE&VLhLM7({+H-~S?=x?We{Wj*#&G#aTvglv>QLXf?c-xv1dew zgdW_=ccF4FkOV^^(c8AD7dZG}%0(Tp9ylt`s?>eQMDE#rM*{wdOX&bCiPlOR>`ESx zQ-1Me1tUxk#2$%u?>pF19#Ukr=djH{@iN&M z7usjpb?7I?9gn5W3Mh-WaT_I#ien&z`*qB0atg-~)2%+q1n zL(&7-(S1MM&J-C^NIe9CjNWgqnZUQ#jz19jc@H3@|7~)<#XdMM8qHDCwULXYcGj9g z5{r&!DfE?ZNuzB}J9yOJ|7r9_VTm!Vay86(*D|}O?~%@yzgw(|-z9XJ>}`F`B%|jC zuB_z~U<)4B^VUoX*HsNTBXpe}Eq%uZfTd6bXsbcG$uU4j7WZWRvxy`zle15q74^iJ zZ0c#vgTi7HNCTKpj#Gw(3d|YePG^hu{t$#_kbL64DZIWvav(kWD=k%^ai5ukgfbm3 zc{PwkfTLCJ4CMRYaIrJ|a%(vC0bBMN#pzh1y0yabp{5~ruG)bo3YDwpQ464|wBW57 z^GKdlbWQlV3Rw2zkSk~{_JBFB|qI)l{2NwJ;(wL?+r)|Cc97hM5P7fvv z8bui3-;*5Pd@YNM4LHVz4m=AR3ROVm9;PgCJ`6gdQPk+84fH}iBc%eq9}%PJ-O_559@7fXp!&jq+<9+JEuox;(Uh@1*$r(9OYFb z;{K#PV>F;C^pMeTc_LOZ^~uXp8`hlqG`r`tY!D}mZQt86?T6`)Qu?2Cf2t;XQaJfJ z9#st#S}^3a#r9c-S>qvulv131|>N0ds1uUUoR_wV^ny(9NUpp;DZf=^U)L_<-E8 zIbu&x$ca~=dzGdKQ)a(YRBfYUFc3YRx2Btl%+a||7hw3CGyFSneH z4$%Q3FjBcBc6yCTD-*)H#D?N5ky<=DlE#F{bo25r@xznZPaCoMjKztgRVPrFx_YKJ zLH`5)6NbO>LOYOjV}q0Dg-&Q-M{hqRC;b{aZKr}DD%u+(nEzth}JKqZsq{@2WvN;w}G$fFK8=SL!}KKAX1ls zOL3%mv2mB93a$_06%3K8DI38z75i1Ql;f_i;;&)$jXQLUhb?)9?2i8GFQ3tm`fyXF z!+&_L>kBXO4E~#sDsYI))4Fm?SG264Mj++y+M2L1_7-kMTCQXHjBH=4f-N3U9KIv< zIj{Q4%AuUfjw#r+4%F4ze30{}- zr@W_IG*fns@qDls?@u%O-$ZNUq5s)GZ~bUY0--lc;VzuqptwGG%qjZ%G0;=%9s3ZC z^AyPEbvewlx3W~l;IFXzqE5)N^lprh(Z(uBQSG@%OpOE#{(w|WK#j0q?sI{eeq`LB z!D~Lpy*7ATBG_Lo7&u|5;S~J4OW`X8`10_;NgLAYc@1?3r*CK768#S~Bldg|1-_iX z;3uU0>$FZo!~N34iXJLp>HA-@bgvVQw=TeC^rby&6h=s{e)G0oGwL~2$Ln+8p))7J&Zs>aQ~7OVbq4A~Pt{pmKTi6l zl=c(pzfU-A3lwF;-thqMuYyBmeQ#uaU?^QB#bdRnRxYCT@aRgVYhyA@BI1Sn2! z?THm8Jr%Ltu!6+AI0(#zp5q9BB2@90EcH|f;d61W(Htgi2qEQ)OFQ)i&U5AznU~m-8@szYsMG z$^#@x5ETw|$5Bs>35Bufx5QwULnrD|oNZnobRSXrrV;wjR-*8=PXr|(6=E|S2F3(r zU)U$-oF~*=pZ&QCkmdqy=?8kI%%8QH7lI_k`8}QOu=nb_a4!NNffJ8dEgK~w4>6Ny zZ2yE68jT1aKYPG}NI#oOen~3#1wn>ck+*(?wX{T+7wEtPpd5q>1@29O>yaAO2(Ydg zj5h~LRxU&E7w_c#IGlKNC!NJQk+WtRa5Q>YHMbc|>=`%_a0^quEx6g;HeTSI19}uQ z3bE4$jqgw&?~-og%yAPeo6>#hrm1!Y$(`ZXsIm$^Rn;@-xgM2+6igf&Q9*%h z`(vtqcGgB=>`0;!u$+3&sTj*)%@_w9DC*#)coJhN!Wb1a2P0 zB+9wE6V13#!2mjN4rB(jJtdI!bJtDtsu05)IQ1qvYaZkL3;ALsB4W&Os;+qKYw#S) z`$193mv-%$5~^?n22FxuxPT@J*if-nL=pN1OWhQshk?+X?Ixk~inkgr+`W$yClt`w zh^rsqvmM1)e@twtXGU@soE85L06Wa!{H@M%W0xNf8AyQ#61!q}z>cO+16Vju&~|CR zK)J8Cs)UBBJIQ-duT!DH{%78X!4v}=rBiWtl9U}m_k6tLyky8`vC!#xp`rJeJ?u*~ zLAlkDo^yF&9Y}>%b1@-OFO({p|9zju+5RJe?0G7MMG*Cy^d_K)Hut;AtM6qqWx;t$Gv)TQ=+YjWovTpVsc z@-M)nNv4+mBvt#n{nvDfm$oC1DFG+vO0SNekm+sje>aj?-BzD6pl7PSMF9?zlvS@@ z-VErzW0YL|Xp#nn_44GM;#On*hFdpI7RCCD0RHB zZ2Ui%nJTl7@8`4RseL(-WkVjiDV6z>5o4)%smA`&e!ZQi`<9VthrIr%tL z@YFmAu*?WZX6Ju97UNoVgPLVR0;HsCL6{I8a=I(>SG7XkFQfvxyflMcj)O%`l8|*V zh`J;9H}t}~CmQkH0~kZZwUior`0oV_<7x!s>i7r+p$JUrJVUMinbeO%T%3;3%Aewg zlaJ%35`if#yQvDwjmx0>7SAU&4A`HGtz@Cnv{a0GeZ$^gP$%uL0TEinGcXb$!;s$p z!>ftdZR6|e0VFFD>!9UAD9+&MyTN#umM=9h6>3Y9cEFbrx4jEz1{Mu2o|BPzw%cYL z;Kb6FTio>Cvyl6ag*Yb)xipQjlAAJGnd+$=RSm)@Qg0noj&-GXrR+@DL87tee|<&T;m*I; z)caLO!;vkfROOspV@gO)N;_8(7(?ZL^3J%XiVoqO{b$7n`PhXRTe@7Rq|HqFMH;&G&Atv!mB>`6D>QzgUYsmOv!w5CXB$iu&MJ-+u{J3dq~EU$UIb&!Gc1R5Q-$ zN|WIlk5H1g;314kkJrF)FN_{ZQ=I{`BSJ0LmageCw+d+D=6HoheTVI*6 zyVX@}^T-eF$=0se@;H}Blq6dQ`ZDg)*mZj@u@|3V)HyW2VpkXg z7HW10s2bNG2A!r?UHDB<;CpvU}E_d6rw~u4;P*X?PRlQGfU-Bf|Ib&Zw-uTCo69sP0Dk5+L za$b>!$WL$*Ap8_~%e7B*!u?xgRIA-D;;8E?W}hp}zC&5Sa2uExA*TbRs7^%`v1$cH zx5wka_f_dAb^F6kBc)PBO*4x$E+mq9SN10Fj2={jIHyX?Amfeykzm+lAZx+MDE_U= z{mne97vGz8TVg%@+q}gnE^yLrZ!cX57;*C&j>`Nh(yn-7Kl((byeR)YhXj0mB4zS; z99kbrRsSkd65^ftPv$&XU|*QPQYF#4|_lzSN>4{5gQmOOy-a z!6$AO?_fn4pCoZ`H5|l;0`WOJG~iXbFqHkP zU1-k2lxQObPTUZ;*~Q>bt;=)GRLO9G-FIjH%?cgCq-J=k9M2G@h=l>baXQlAn|$lG z_m|5ld7uAn2?v#4=FeQUBe-98cu+9_1p{SeX@y0_C8fm}SQ%EktWdK^u27qSt1J{L z(zg&SBo%9G>*$nVX}uPOm?Df0rnl2cdTjiP#5JQE#x&z=671=lg+?@a`CFng`f#Y0 zmbs5j2h#m7BoP|Mq zm9mLG;UbMy8zyE|kAlqlo8($2Sy7V?cZ%jPNv8Pdly9g>9S1<)^F_UWxW=^1T*8Zd zqGdm6JBfuE?|->P zp^{M^^_A|gZn`<&JMVpAsbM$t5+%0~kW->WbLnr}$OR!Kv`f)396N2!Kj*fVckNxa zrWsz-BjS}=O^xz4efuvyaE={#P)nSf_hk|jn)6q3)l})zC~Yy^jFEpm2Q*dO&1bJF zC{Bw^%4%88wiW%^bFWJGo%7%{)&!==hNN=aibR%ui8Eq*oxC_0$!5wtLi`(PlA*!m ztqUlshRrFs{!45Ufm0G~4>jH$rnszBs+R!GIyeBt9$g@WVYBp2oaK}Pb|z}P4lw)XUH-}`K0ydYGhfstUrIXa zdA8qQ$*x4BpXJpX;KzE}y;Fv|nIvocvOWe{BRsWlEm#TRf-+^Em;9N8T^CF$UlEbT z5f0AV*tvR|mh_hw8)@-F&*=Luxg^*8J(FG#_%@&B;k|2k#h&B)j$0sU<~N}eC-}EA zd^o$72)S2+W3!RzT#!Ag?=na_TY?i<6Dh&WPm4anbpA%k_WvnD$k=T}?f)%;%Om`& z>=W?+-^%-2R^1!}qUX>v{6O>e-0r2nAF3^0&`Qa7uCrDyywbHfQW8!2uHjG~cAxHY z99=kTlBx>RxD8Vqw?Vm$duEcL?Z zXh35--);C=-a#9*x`M8sWVl!~BfatvgwL&&w~T?6H4}>F-f1SQm>-=^?bc&G#Kk@ z^^!dTT(~(g$agvkb@Ij6vxS@-p{rEX8x*M;LbefVTGv$h-KK%ei*aoadMA- zeeR8o>z}@(XP4i5o=u0V;(k8CvTK{%Z!DU1X!(lr$7WS>?uVm*wzq?UZ`UUfMdsuP zIw6gv2v4_W0L zO1$z)9L_)0X3we@u3@APDTOymv0pYy7*hN~b#<5-PXaY+m&%F4L9hB)Z#9+bL-%`# zetG!P+}jU=5{;NSrC*2i>XF2Eu{N}LkahSpS}kbG-z>ivB(Wh2C9Y+q)I9X~D(YB` zjMAX^wfJ3-E!2_uFj!=uL+%#kk`?C=+MGI#943_HZIhhteazPpOqKYdwfJ|tIz)QK zvt00_!L)nt*xR`FgwF-jH{45$AzANFYcgK${>y6xP(KcAYq3#Mth{Y^lj9u&)-7nU zr~Cg%b8;k7E}S*VrHk1>9O#$i|8?#`uL97$*FaIRKc!NXs~Lt5SFYdHcb1pQQoPX8 zH(@Vm2T7@W;AG?lFRwdu<^|mh$xdlJa4y6oo4#CZN`mZMnF&G8Sgi}tZ%)J5R~sVX z+XqEl6kRcwI@#whM>puMO>gbEkIj0!PY0 ztt#$vZ{;bvqVl43a88?Y5 z%s8k+-kF?LbxfWPe53C5A&U6ik9223K3SAs={$K!J%^=gD;_QSot|@`ke@8fjU|M* z>+58gx+=Aqi_+m)q>z)VDmtb{iLZ5hS@6Bg!-9%X>AU_fZ6O-GSXo~%D4cv-F<=Bn zDr2GV5YVHu>W5LuGY%R@Z5-DtPwh+|siYMB29s?9qTF&$emk)@ci(P&gJbEbp)x^M zj0;b&1gEfz%>)@%?@N#XyPdgX1pV5%#m5s$7c6fXdv2gMD3qv40Yx78^KtD$MWT zT!%*deT90!r=dnbjH3QA@5m6b?2V^-EM#AEQQ=$B@=}uSkW*Q56-AQ;qx~RBCTr@i z9TSeoSs+NxGt2!4VFyx+igDo?rp0b6Dr=&Mz`R7AyDHDZ-Gwz1k~Wk|$Ir168@Bb6-l)zyQR52W|C)z<9W ztL}fYTs1vpRXlip-$&JgrNaEte2Ke$RcgOZ5(lsd(P-orsgz9^yPK1dUSS;rtFJ`3 z)nc9KumENvsRXrX81g3_<(Pqbasp-c>U0qUK7H@FwM|43ACnE_moSreQ>0&QCPsWq ztRxdJc{_d#&j)|iR*?mWQ3Ve5r*fmzN%*0Mx&)xH#VmV& zM7B>L>cm_&UVqOoC*|honDXxeULxWhgyg{VT~rAYTtFQ32^9$P5^w>1*nvk(qvZd* zHcmF<*NfeP0}4TyK89Pnq5__JfAYnz=2H<>A}XOCMWWUebSbIAbr5O%ID#97^3Q|6 z3d^aaEzcK~0;gT8EDvtM4-Tq`687xfI`qod_%S44{d^G&fb3|- z-n?h~Wxmy;7ZBjMJbQF_4Vh1J+EpFXEJ(Ax5SvF7WC3#Y1k)Vog(;^iUNPs%_B}Z9 zs~cUNtiZpHXLm)r61U>%Uo|X9YNO+*)67a$^}1>qnfo#7iPI)u6NTY8D3NtibhZ1P zpP~OR9}h{h4angPQ=KEMn!q02x`iIzn50*(;GGATKLqy9BnuUCiz~W2Zz%JbBygwv zGyyI|=CyL)t;SL=^h&89qOt8<knu z#x0xIK8zJpZ&ZtlDNNH0>H-V$B2PKI7C4=|pS+sz_7$pEGN=4W%DP$q*Q@42D>3f5 zaJ3xxxf0a-j2t%5Hles{?Q9Yfk=gV0y$VPLAJ%o2@ES^h0q1<6KU77S?Fmdcn-V3< zc+F!OPWR5=VXvP29a51isPRLC0-b~Oqq7==pH6B4r>O}|9U1!N#p1QFL^^eT>;l1oO_x6tX35F=6TqaIbX| zb$mQ{(s_;xHKF$lOAGjkp)-=vBhu(IqH5C_$F}wzEFA>apvDZxt4)zIW$l5~WKb6> z_ID!axYsU#07SH6CDp)d@fz3G1FsE^5!@m8avn_Fa65q#;8+L0@)%=`Noz3WUGVbEftp$1=peKkDRK0cnyUS7 zx0@9GZB3K?T-lLm6z=Yo+7bCFF@V}}D0TDFUYBbkN9&Wbu62JJDI*&zr)!(Akj`gC z;u#{MOxxXkTWOasI zrw3GT^z0ZXdd3v+5&^e^qr(|~YwB0jvcp;gfUE zstPnm2N#RA!H42vo)(*5#Puv(Kgh5X zAVa3Z$KGXX?lP@Q&E4$ZVLSOyRLO!>}ia+c_QRR;u+N>s?8 zxeoeO`^nkwx~`CceV%Zu&yZ#98VAH>Lizp8XE&Z7yYr8V-zDF7Ups}&1zfYPbre4s z6Rmweh1w21vSGm9{dpy(-Mh{{XEe5 z0k=V`-m&T3Y28q+-@8{3-x8oE8+;0LL8y@4wKN6}e$HTA!7{N4o{ zu#Jro8#%gRbj#=zMyEO&0d+Je%IMb7snQ}U(qf>aOOaAAzkrC?l#0o3zjN*%aL+wE zJD<<-@sk0uW_%aMT?wy(0GHJHjB8y|IWL|CH6K7x$N0JUdQM1qzkE9%dP+&&Y#v@m2`?HzQ*M{q#MV>dm9H`#1 zL<5}1-OH;f{4Y$wQgcv=c6-2O^HG+7yG>~UmDyz9^NTyF=1h{VF6ZO!D|b#rUljqw zKeeAK=%4s>5SvR9&DvFQ4k4bLDZJ_cI5tA_u<-axM_Rr^uo15gxqz;1NQb3o*>nR{ zvDC@B`%&b44^ z6LjwAFBd>$3;oCg_;T_hb#3~L`N)I6Z^a+QM%`NyItMrh6j8R`T)APEy8yMFb$-t* zaVDA7O_pvZPiD5iLc``Yf+{H?SU|%f7;rq25XNX z*tr7`P6AvyE@Z_8jvPIEsBrCyD_9xUoHXtCJ|EEE(s=)Iq!D}N#i8|U1;Y?Bh^gbu zpJk8YhdFjTaZgf*yU6}#xKUJ2(yMn$f?cr-5@*(e@5w#gI zyh~2GuMNT@ZFVRHVfG{)!ueuOI>bcN*|@aLJikH(sESg;@tk55Pcp>2KD+f!?#rQcT@aW!E!x1o@FDa4c%L{?g+PP!wRa$skZ zWn+pEBA4o4XHXc4eYcC>3>eNIN@w{ef;Q zRxKq??l*RdKCfi5qZfA-wii;0eNTuLDs4Ju_8gjo)*{S4yst$vX z{QArRO94@QHghx8hfdX?{y6WOPNoV8kgQ6*0{II~_+;9j+YF~OE{NmgS%cS@+5Ey* zDDU-pH>{VX#=YlZo7pNyY#8#tO6sI#LDiPTtMmDrEr=95FRBbLsA5I+-}KQgS>{4m zCx7Q92U_96USnTY)~`Iy@*jyL>9P0qUJfU5r_Fs^Me|Lfz6ykQ2(BJL!ZWSvqU(6f z@80K@M8yL8PO0hr8~kfq*~r$Eo$HSl##K26%s|RBJ*;%#=t6T??Nel1V+6CM6g`vy zx<2$$JEp=F5Li_l?0VvN;$(bDK9|**v%gB3ZR@*4(rY_9nX<&`@hL9S)oY7 zF0t}ow2&O?W-gMUZl^CzA!P_dKOSfBf02yzVWq+Q4_Al`;q^{}W5Bun)Gl+bKbEpY zS;H_ZCdc_FP_9Fjd=ysb`-w70P@Hq4w?4@uUGR8|H_JKV`iUJOn@z70B2Ggdd$o;ovF&Mi0Ql+wmi?A2ORq>GKxA zpbR9eHxFVIzUyjh(lidhv9Zkz^2V!HF5XrfS0uOL?Dxz0geO-8<@aU2o1U%wQ<0V; z+Th}3Xvo(GK$S&2a)#BHaMI|*G-(awkPh-frhwsjz0-Ze@;x! zuw&);(`kls%PIH#TEaRA^Q^jWf8Sr5dQ=)4ruujf&NVC>e$SS7lQ}OpH1O~@X$72i z4>;13J4`X$6X^kPB{`^~aA!zfwWUD4pB+Te%yUXz_q7{$+{jvkxSx{E?g>Zp>$8JE zN+lzRKUn&QbxC7EPZ6A-@nnAB!~4lbM+$j`!3eS1z0@iGa`cj46sGim?{g6h!2|d$iWYtnSk6do;cEZ|V8>e+Iqx+pD34mf#krb?-3` zhHX-qiGM6h+?TKE4AimjDvg&P{H-@Bd`3YT#8p6Ixm>=q7B=hP6sbLL$b$QeCOghK z$uHG7YNHT_zz#wqBMbPhHwGM8DB@^uWoG!1bhAc=6`s8JZS6+)Gnx6iKd*qgzNXtK z8rvsq2ABO~E}y%WYZkPsCo}u%K)HI1r5Lc5{UcSH7u7d%BBv=tld^{GhfN-4pp`!t zWnO9v6yREE)h08i5(?hdDM}7k9DzCnw&NO1!s^tMd0n%FSUiY~w&V-DRtK_i{YTv% zo)_R67lLA$+kUyx>B=jXy!uY1b8Tf^Nfqk%2|58`pAIWADF`V zemL>=zbx=RG=YLrdrSUh)}8fvv765tK-~TjHO$;xz~5|p1N{4{hdcL9tY%b(E1IdK zShF=zNb(mmBz#2ku*K(KFkj=Cu~yyr5V4H&h-s|2N%NxG+T-f<2q{@JJY(D~#(D4B zY^w{2k~qIBDR)iou+f2wi14dTei*6j1J;sQ@Px>hRn?;GqYcx z)K^WUD5_9Zuap9Cu_EGta({(rD<8GH3bfPTR}EkeDa`hW9d(Ej*rjm_AZV0P$S)&m zs~I4vP&079wR_>OrMeTpq5!D#=uwE%)xSzFW!ZlfU`7Zj5mxqRzmrpn(Exzhbx)jv zlZ6)bI=KiBzvI&FKf_%z8l48yut6PQ8C(XN5K$pJgxY#bYf+rk@;G!On;Hd@`A)0@cH2 zuM5{;(v(zQzPg^Ehg*VS_7Lbp_Z*a7GtSoPsp`SBSmz%IM=&u}*~|0UGS>A$cl{H$ zKJJGPaYWFb!8*bUAl(uw5Q?c?d{FJ36GNL))&5d)XzGU>|FufO--Utuv?qLtg7 zw~w1bNQ}3Kemte!xPrKE-fNSAP}@#?82G8-mS_C&iZKWqoKOefs$St-{cI-KVcWZzH8HQ)9eG8W#!NPBIU0Jt~wX3va)D(qqC z*1Wqq^1@PWca!mcp8Jfmjoi^i2Jz+~BQqsTOvusH-nKxD~uOor_^F(BP2CF^>0h}C5lr{f&nbRn12Nlm^du7){&)K;ExKxLWvW!41zKZ z`9jF?xfk0wv&Dj?^ndKSBDR4KfOPQJ74bQO*!?M(Y@#e$GHc;tm(+-rrjn?7F8{RI zHCx=^{wZ4=@2N_6h*|OS4@dHuTO*a~>e%XjLrkEcz4q6uR&vR~Th=d+5=d_jI7q|I zSV5Dah!E)c50(?7MO?m8X4>VNpW6+McOw@+LN96!%f8&o*4y_(2@)8T+EC?E42V=@ zm@gjCGxftvxnnDb#WzUFSpsPTEvU$g_A3xRBg!mS9gCv}cNXPfB6FlCgg4EL(qlWS zWZ2mLkoTT~JfytAsc1!q-{akU~N5-j30s3Q`G-@K8iCR)ZoNwAE%st*})lm&HXYu>5wq*0EP4tUBebZq+o@b(no-$IBo?H1NT z)0t4m&5W`-oBbgB2XoHunh7;@^AQ$oc3bP19DOJTuPg2CyBmK{rqhSzM&cw={YkqW zq^CVT>KqiNDU1;nARce^`&J^N$k%%>09F@XLyo})3MhaPe`8E8OMv30P8Lt2Y1)FX z7*gXs#x$tCU$N#~Hp#ym!bO5bQsA;HR6m+oOFt)1T!zIP5o>v!Y6>9btSUZ-HwM#0 z;<%4j8KTV1I3r0*Z^>?V^qL!OFko|;0 zxYJuGln@>VOB3w#W#<8J_v-vy%W1a=8lmKWvN^~%igF?io)4ZszdnygvY;__P+2X$ zI{Jw*XQV5|*>b`#h3SlB8ui&EASH}1VC|h{>0NAskBp4FsTw#Ilo>BmN%!Eq>gcGA zsrHZJj+Xy3D`&bW*RVmbpkS-n_tzvp*SN&ny$Vh;?xJbpQeEm*J8luCO0XcC56eYn zxmY=Rx<(!RUrwIQ5N8Sn;>v({%ju|M0l7N6yv$?Ksquq0rqKw_C0y1DPVBD*(qQLQ zaa_@Z4YW1(RAWj0zYs3J1WeW%*>n+j%aZ3G7R<(3ya5QyvjNJ+@6ktUH*7i zNsc)=xjF^1?0McDwTqeORVvP#=N@2XoW*1$0C_4$BT}VV-mZIrYB6{rg$lRG;gso! zo2k&Mc#o!%05wx&NW#glS+F6Euv7Z{&nY@#X2^465xR_`y{_`+VbP(kkO{ia3r+r< zKJO3R^uI;oxh}}njD#mE1zWVl8h|Iz;`GH0biIqZqLpMd0xNNqVZjnKWEA4%CDc6y zr8;1W<9=nFr8kqRD9*?j+KBkhG-wGrXTZSZyf?Lwaq^cfU{`L_iJdFR z(vISwm2mrC?@oJ64<1QFD6Dm%>eD4FN-He{QSu_+ycfd__TywCat<9 zsk(9nB200nKZA%;%P#OYzid2zVp8~Sk@BVv?K>#o1Z~i8P7CNS&-h-i9+e=`=%K$L zs4E*~TFuCm!0=)#_upJX)3S5k0hd>^U;T9Bn{Rwgk^H$tIG2-@w(7da^j&8OTC-Bk zIJ}+0Tl)6RjJF`vglZosXlhBvIMVT+{^=J;Z{&tkeGDT(9!oEprk~9|9m=)=T?^GxAZNnEuaLQTe*=4A<Z)>1lGhu`$DQkMcK~A&)JnbDJCD=W zrP`fRCr9DZng>-&nRd7MUv@aFOK|(WPn*oC*V{QI)h0%0a)6ZQJ|dnXZ$UkdSKSEA znpswWvp`gXAn8Y8PGcZk)9QO&!`UHHa-yH`n7RW$Ruds~#sc&D^d;GbvsJe^mxZe8 z7$EPKdy_$L4Z8@=Z2JJ`nyl~0Wbh5_B6zTXG#N4sT)45AQ_9G2$bdS|fnBEMw>p$p z6HLSQRW;Y-gTYz{rb7n(`mZ?iV?<#`udMsk%9!6n`S1zF&QYdoc zjN+XNbr$)*_wA{34a{v{RBJ$@G~=1#c@bVIDGG?`u(CQMajXEs^&37{H zN#K+1rQw%%EOce`=M|Shbif1M1nk&`|WI(Xfzz00|PvW>L6y%+am+Jtp zxJT$=!wkAQMU)Z-<>{9-AcBg<<2{<+L0GxXsZJ1lMDN_VrVaFZpSpEtRe=ZXa_25w zQOR3S#}1pQXH|H`y&|CTVi)iWNUB@)WxmhueG>3t_!t&&6O>n%9uu!KxJ!~3Gg+6y zvkpD(I5*LN5oVGCc!v^kfNVyx9NYPQ+Kg?k^rf+X!k__`-o`Ju?0lg72?Xb9I_Pz% z@T{2}Rqhe-+;)5>OlJttl#?-3xnEu$S2Fm@yXD?h*+VXeW^y=RE&?fL1Wt475<`aV zTY#e=)sWe*bK5Fx55Wvo(926h*0%p!x2#=izmo|*T*4X>cqN6;+i=q7Hx(8Rab>eg7{iX_vzV?UclVEBXF*YxV}Oxd3sdY8-XK&@ z`Ja{MJr0n);7`t0j##=s>2nd-y@@K-sLCvm`2Zw)3nDZJkx)ta1m-q9;J2K+MMuJlkpfFX{6gvWQoq*maA z2_5Hx4F{O;6cUV|jhkh6A?VOwrV0_7mJ`th^6zu^e8VPskbkAohz+zHwQS1Vbikq^ zIDLqhWBy|p@?s9RD*h7lcaP)KgL!*;;_c*tkXvfoESKdk`zW!y_-NdBD14 z5Sv;M6Mf;$Vv&5>x(Mb_uVBRRsV@PI$9rLB)btoC2d!Mhe3hC4gk;V_RJH(hX&4(N z%m-O28L0f-^pWTd^J*ipmrk8m}nArA%O$+-X30j(E9s%{E8DI|nq z-eP{6qVW>_V&?8(UsK=e&zBr{JhOkD+IdJ|>g2mlSg-$UYrn#D{iaGLgoAw^-Y?7w zZ}<9?$nSbXiDTx_)H8$#)bh8&bL7~8y8JD7^wZgg?+9)F@Sr^OO`GsW*H}R`861OB z@aJiZY{0t*$07OQgIvzTq+>iQ?6-kfeUUF1k^(cipM1%4URT-_p!9L z`z0?}dE6J;RZQE>u&4)<&D(y1NYf6i+AclDN<Gh4nsMoa{CRJXVue}`Ig-<^c^t|VdxM(Y@2O8ADYk-$+;T_&~eBNX! z6&l2k?9(+67Q73x_i>jjAY7(gy=3{TWz264-W96c2KPDt-G}LFZq1U6pLEJF%q5!6 zX?_qpwJ7!anmc4g3(alhmhIE7YK5NrGg`9RfA?*xhc<&R(DB4xKxU%CA~y2p$|Gu! z0CP~HHe1iw>L9wHKYH_%-%MuG*E>5SE@~Fvre$zdytB^kX%7j8Eb&@(AGt|v@$ zYxC{{Yo)PFDWPR18h0U23f*yYfspxeRd|W{HAP5a>}NOnr!uz!5-V@9{`fv!A- z4CGDa13CCKuq4*y)MgQiA_G@E%BQX~X5(DvcAqCDfG;QY)G!B!Ay=7lFN;>sqirvm zx>g_h*hGs9-mI=ApW%ffQOpD6J(ayOWXaboawm~GF&d_AYq_rSYAd9AlIhSB!;t?< zO}m^YIGc_sHvE~xH6S|8Mhl)%)7GuJBm3(Vx^&k9q$`+w9c;2J9AEkGwwZd%Xa--p`9zgP^gjh8PjRXV$4Oy%edh4P4uMk#KMzh6 zh14f^#oRA=M{sd0{jCGrwvCmi+L(*JKkXZ4CGGtpA?fQ(MutE~i%k?H^PlT)6Scm| z#5y1~O-i>%^X$hF&h9TMm33+AQhRhub zU9ieRe@DZQ7kbUOK93|1W$*!uEC{Y?tD!)lV`~OsD4kJk4#VPjPmDeqbCw{S#mLp_&C`AjI z;d@e56Y8qNnw9nCqSohney}9iNyzrh65Jh7Mbn8TKqAyP^ABA@+G+1# zbo*+#>tRm2pujTYohcg5Pk>wZwbv%Y3MTDLxGLU`bcJDRb?P&P`OK9}y9%K^$2GD7 zvET!oGk_3%Yv60Gsc%bSYj2rm=9o-(f4i3g5M~)|$LEplSlLdn0iJp#glZP&lUGx# zAeq{5>U*z8O4OJwApAAg$1Yj6pE}4(j7_+rM&54@y%fn`R6y+hDu@RltvC? zkGsI*Czznm7!hR;n<#|wKu}OC`bSd_Ui-&$y8PR4$H%RO2b>$XQ%-Yt|D^G45Mn7#%BD(jTOXY-}WnOG7=OJ^n?F8C7}k8>V23n7->a*(!-3 z#Zn|!7|#ra=xI^4V;Mif0B9)*wD7X=6xQN+oUx95zuJZ6O%*$NDSqg`<8xJq=h06^ zx-R74!b-`{CIm+}c%F$MN&->Su!G{_`^b?IA2iEaa$R>S>2QdgC@uZJPhOdZX_5>k zWt5$%0K!oaPV3`#k{n#;8(HcB(CS*GBa;E8w~29IT@8*-WqoP=Agb2=&_ARxwfK4< zvaPMa-ezLTm$zQR2#)}zi(%7R8^L&uH-^QtQV{HC9uRA-{i)N`|E!Jd=8N~!j#CUc zYf4Hf1^|`Uq$QP|WF;WkCnp#+YmwZ^Izf(ZgM84gvc^aZDFgBH$Lxb3^#*OB5xwsE zHr;=w?3TcyKpW%n>G?RN?W9zc4Hbk=oowi$%c-*FSQ2`l06d+7pvX7`2 z9>SwfQw73i7OxTw4!jWsSYC@+AYjTu@!4uP$&el%9%FkRsEs_gC|{sw_tUVCd)U{Ytdp_hxWv*`SGrueK z8E^{H46|6)f~tagzNsEFcy?SjbnhKJ<`0yoAj&%V-`DfTn=B6Hl}>a=Te^~0sSfpf zMKUMlL|EFocpAxjGP3mCJGwXB_)V2x(+81-oWX07qy?|VH4Wh=VCzzzUEr!)#SWo4 zPX-w9WPf`m!#2~aBdu`_BcXn^{BXG?W<`j*U&tHaNYpGTrr!kQlL{&4Z4Px7-2^Ye ztBYHli)#<~>SPZ{BM?e9u+x?A`rmB0!L2_RnQ*k%7hrDg5uK?#9qLTZ?f_i@^%$(vRIB3A=5W=^Age86QC5~Tk=!S? zlPwLa_Sati>6AFL5Eph9o5L+_xqSu3y|My}@wyZEMS&#6 z;r-9=PX6YSY&1gEUArzkx>1+dF0;7@QPb5yJ6ewNF6}e&5M44o!H4DFU9++tJb5@3#zi{=p@N@r6sM&VbpV$Jmg1}%H=G?eMV9L& zg%!_HUOUGEJF3Nt>BjvcJR4_U;v9$#&Ntk!a7y4as^Z_4#Bx5L70TIP8~&!Q;hvi) zq5623hPfV`hmS5^3QB223!yuCmZMedHeKED#I|zf>TEYS;7&PeAF8kR&1L)thA$ZT)Q$T&D0U?t*VY;KAycssV3Se6x~Et< zGW(HK*EGaQDJ`!7?ak(e%)_jGgJo^}-PV8}rqnwr<)t-Y^*MJ@UQnjP)L6rxNl~?M ziBax$=v*|rv5P2(gV?GQ3wY($%An({NMuVYX+uG(6=~Ngf3n!1I1><9f$RkzTOp%V zXF&-~h@a$r8%d5YuGggaU3rnu4jwA78Ujd5DMzY*yFWfrpBn8u$ec}V{4Xg`*DpwqOng1 zs5&5FNc@k@sc(tEH3a8RLSW%)+?&og?S14|1U!=+!l83Ml7J3xA>?O4c0`M#2{56P zIRf(ppctc8%8XzUa#sEeRhlxv=&8mb8A7T$(Zds2E_nd_g^5=%m@5n}HuKVDPv}?wi0I*j$36vwOfu& z`9t#6YEBGk!M$S&CYkD}uepjaTnuDO#k-TVR}ViK1!N?&e1i${$FWx5!Z0Cfg@G6D z-lk!s`Si9BvX#KlPrSDRd#p}GyQPw_Qjr|`WKj|<2L>Un z_}p11?S(-R*v79M8CyC~k0n~R07kYXvBb(yF1k`Jsp=8Gddk%R)uhYC8^7ad^`8}>G@|C+zf%~ZE;fJrnz z6_gR9=Ob?B4`%No6z`l4{Dyyj8=a$xe9@8aFbB%dLJel2(v*uSBxoz?VwK)S<`y7I zg-EgY2rMtQ(n^ue$u7b;0T2yI&@4eM0#}qkywp%>Ae=#nSx{6?qo~T5ObgY&nXRk0 z6gIwkw2$9GI^A$Xs{l@gP~*dndLp510UJQTSc%bgaU6V!}a4AOR)%pOwmx~ zL{Bcl9RN-V9+SqK>OjK6E1GE+YSYSsgBy;0ry9uBF2|m%;A1PpVa+-MW>hwV0cB)> zGX9k|pUai(et;_AgLslj@>FEKE=iHbaik6+No!(jzuEJTbVfR6T|6;OZSaHPqt5i| zHojLYL?KI%P~Wbd)LO{FXynk5O@i#%RY_!n%{t-c1g$+e<>_UcA5RVbDdwRYrP5M;L%~`GGQK~r7>#A(graWh%waDt(O~u$`Vtzr=T%d#m1#3i zuhhw=tg5d>ArG9nYKF>rXw26wow8ev%vtaz3u;7%KbnJQ(m5@Dd8}aB{d9Drjhw@r zpldivtnn(LMSW-I;(w;ZXKoHBtT9%bhCaONXj9<&y0kZ+{o3io^JDGbt|qwn3SHaA zL4+ngVz;#gnSI*zyf(8vUOushWcOhFflG=#e?kr$9JVJ zz$itFCMun8@*5esA4nWR=M=%7=(Yr(5gy3*e_K6hr7-xd+!5_Ru|q?j=9&-+V9lX|_ z(K5Lu@@$-ak&5AimmjSLx(qw7&7-n(!K5qBVhw&NEGE^Xv_V^Us-`6RSBr5H;krfD znl-xKJ$h-#?@OLwECEf1NXbYH8z%c2XC!PSSPI*M98DeNzo?2r0-4BKZ=y4iKTvoW zMoc8iQ%5891%kHwA4D>xXF1q&SLiOp4ZAq+$I2v)g*hymKZ2LPfLecEem!`>C~;bL zmsceSCrpK{+R+Z3;Zv0Khb0Op87PPgxJJMO@o5Jt>D~{j>W8YU+6B9woZsd$(9Ylc zG1&3MDySd&WQWLxdFY~iOx_c%V|cW>`r>V5Y{ju_@fp&jagudhT(d^(Ok9e1!H zHn#$pp9n6p0K12OVhfRL50R%n4C;KAn=dT91stU=CRi*Q(Vy>Vuj(C!r_gS*?XD5T zJDXdi%e$lo4oL$`%etqM@ znTIft1znyj&#`}|!g>bBVC1#{ck(g1)d8ITT124zc|_8+F#rOi@%&T2UTx`roBMH3 z+F8;ly0dcd)3WB#aAihQ%iBBi(=TjJPXI^$dN@C0h4U&hk#|sZ%!ia$^ctuBU z%|!X}ODo0PoZlh@Q^nJn9I0dN}^a_dzXK!Ey)0 zOrVtGVjsLrlX?`58elgPc{(r$(bq0HR=9_xP|lp6tC7ER-ze%rcB|;qkPw3xpgS2Q zkKIkduH?RWCS$lT!|qE;f3{s(VAsQrNPPC}SO9rVn@JE+%FrY`h6tOv3Jt8z(*VoA zD#Lbg9v04)uE?;vpRNqS%3$9vkwEGOZzxJ<^vV^}lTWy8LKee-smCAX&Hq{%i8h1E zb>ZT49Yrf1$=A!H{5;&o!a}z`bRNPyak=L*&ER)_AemPtmqL?2#uW~YReZdc)B=c7 z;2dJRD$IT!=0?t4#Ofx*i+yO$3^wzD6B^3k@cMV}WP`s(tn=4wm1oZCl{O8`<^PfviF z#de4Brlg<&PVEr}x9MDwY}W zB`(-HTdi||w36W!pwliCStX+dy|@YWL1qbJZ%$B<^{*y@6oc6_Ev&LM+zeK}muk*% zJFH7CD`SZ(s?HN>17)G)ovO`It9X@}n;-)h=p~i`S)g>CNYcSyc-&K|b zrH{mj;hSWx@@QH;Bq`r+UEg?eZL808MCb+>WF?n>@x?T8*C+`hesmNo(a>B1Nxc&@ zX)}~%y=&zaPd}VKnl($d8ra;wz;{|Dp{GaA2#zS?&f#MR5@XE;P)!=hO|L{Vfg8Dj zCxf0v->y-4agpU!8aE(iColi1&TDYqR19kzFEb+?!N+#q=6)PW*?Kc=v_cI66RDVf-8Ts+TYDb`Fm+3hiAQT^vQMAukhA@ar5@8gN=G?jDM8@Gm$ z`pgkskazAc2y-h|@pxP$yZ0lT`!LxCifi%H#{3TJjCsng77- z(umoi(O-9Y5N1RY)6&|C@(69?&_zJyh;?nsL|XM`H2s8;GEga%Z;#3IE2lCb^2+63 zBl!A1D4te2$Qg9(eAi^^G;ec0}D`TV0KW$37My{S5G zeIG%6vla513x!TjgMxbNTz$*Roi!aj1GYC}!>xwX+>adWOI4(YNY6b|?iu(ZuD`9M z?eJQKQ)p;BPpQzz3{zEev>-MP?{UOsZ`)ln=o2{WsjqRl>42GOpeSY5kM+d!M8>8; zxG1b^nhyGzIj&kTf71o8p?ek$eN*pDXU!28hc#!&8m7h=TN>8V`t=`4Bl6|%k_O1n zU6Fv6cI@$SdW|B zZWx^>UoKU3A?7iUGv54iT)LE5h}T1DE)&N~N=plKBLg`p3=qZp7R+L%i#ST<6o21_ z;F&Z0uFFoGq?G~$U$eY%V`_4|x}k+MC0?&-{3}MHM~DpJ+GAXPPSs2k>dn#(F?^bT zzeHw(8lj1K#?dKOtjbkD_IfCRkYWreKP6p1ZBWH`V6Dt+yk5qkNLb0QytH2vY7vOr zX&8^1ij_+*4TZ*^b~MLs-k#TkNW8vUc*hP}P5eya5Cu&4xfs@G$+q!_!`M)@C0|rTgoR zMc;F~xHUQ2m-f^oU(ATyti**b?>6}#ne*E-MMJ9sQL!SR*4x&F!_S`{@_O|!QYeY@ z&*^!S(%2HF!%j`5%T_kw`d6pBLd6NyKdZ7|732g+iPcRwQ@iB z!Qhi4R)=2A82$MnM>hiu(i^j#h^(2=+Km&=`Yy}7VMMI}bMZw`nj`W}a}4r2=!0+M z#bv|fV1ohn{&_~SLd1=?jff69e3F1WbmT)+&f;;@OIifSOw^_P_}_iWbk_nkpa1a2 zYohVYt7h(b=iTZwz^i-i3j2>J809VZ>sqe5F!_2V3xz4M+Lgw{2!+sZAGu!S>Qt27 z_@pA7e6603gCpO62vr+0${)63X4Q7e{>!`KbA*W7Q)wazF?)-Shl;fMYz4F1gn&9g zCbt6XN6Eq0W=Q*oVD&iNHV2L7R+e*bYP>l?ZX_BJgSCv?EQ)q6yGNY?XkJdx!`m2Z}%+r&t*rnOWM-be#xDko85O2KUf<}sokq#5bo_!%;^?Z0&H z>6UK*OO(#-|k7M z|7$t=cU2_GOV-g*wlX0oV4~D0ZZatxtD=0oC|S5;SlAJ@vdI|=iAjbJfCVZ z_!ewGyi?N%=F$6v7y0$)KIDNjQTOhV{_%wEw_S&=rSfJvZa0fw{!bl*SoYTuE|3{2 zq_eCSKK_fTo<^*r4d1T#RGnL(UVTgLNOBg` zqa!d{tN3zL6h-D=RU;#oB7bg5YwTEtLZ3dKxKZ)I^XcrVLr1wAZM7J3^+QM_ z{*>O6Q=Rv%9xdQleFuU`onY7-!CBMTJPFJ3ZfbLOh?lza&J)|15JkRyggn`NEepb? zdMaRUi&wlhJX9vvFrEH>F!SK5mgI{gNS{WDsaTXS=*U+_cT1!6 zY}5TZxqrEVjxlsokFR|+12P<8$teSCaUQcRf1Tp zZ@jxv!o)#o_rxS_sFFCD`i>%ZLi^Z-I+$C6ZG}5@yo3?s>iJ)JY>S4V8VPn7^n5T2 z&)5`jVuSX`AYm6;+zf-!VP@$eW|~I(-w-BrsQy#Jg|~6mWZQ2#6mLl~X4dI>X1a{J zY(XFPk?BGD)Gh68EV%fNjc3H-n8)R;(!HS)FuKD$o5PtVth`M?b{c8s93DohV5K}# zW5sYNCk`(r zyL3jI#CwQ`VxPF`5q?-WXAtpqfOVGeeYY5CiTFb;nzqS!JhNLMih3E`!6 z0s^1EY)T$m0ZwX=Er^NaZIAjQ3)im1?+L<1f{ttt3ylMEBo!h@C+mfZ=goN{-CfeL z5OuQhr&tI*UNQAOJO*2Nx1-|pZEnR`xXl&F1Auu}|8h#lK}92kARTZ5)yRA9Phle@NzxSVQWc2Wz+LE}*^8MpW#X$9Y2FF@G;?8jn}kTey} ztcyRk+@5*4`S8We=xb}3fl75mp$;(8OULBtao+c6;yP5SxH&SMLlO%>=`npWN(ObQ+5}cc&eG4 z5`Hi0>ZKirP4m8}G;-LHw$;8kD=51r&u2I*abc4vFMu}rV3XK%c+pu(l32VFl_Wpj z5DSq7C5rn(R8DFX+Ll^ewx-_ejsB+1rxYRfZX~U!BvPRT%eMl;-+Uwtl>`SSn~*TEe}K}4{S5v+E!?5VV&?(>ogRYIQsB&$Eq zsw`1pN$R}kdaAD{VXVv&K6N+vyLZ83Fw+`RZD~XpHIPq6#??jCrmg#_ye?+0Gj2zy z@TX9IsBui!p~snWgI*#SCY~DrgJq8FVf(oe5x?k1sm|_=`{7sA=X+CIh*!w^@^con&OSv~GSN&V~?%XNs@|cras?Tvr|KZ4wx&uW8Gqzw# z<3isvmQ=3i74rubUa;hW8T+@3@6J|$)_L)IWu;8(@mVOG)wk^EMfv4={WG$)^(gp$U z^rnzG1gQr=6>)%v=pA+&BKA^VWDcXW1p@oEb_*DA)(gdu8f+fX`{DF#-#xAidiSMZ z;$0qn7uNt6h&ofYQ1QAzXZ2)S!FV;1kLCDy6aUmqcz#95>&Iq*?HG z(!F+Sh0;ClDv`_E3YV24?~R?|_&w3?ZOB0*RR<~D<=27ky1PwOI`|KrugxdQB!NQm z;m?1X+AB-NGzfD1CN$WjpM+H#(rIHB&fPw}9!s4oAorSs zm1VU-dgAv)Hb4AQ z!)=j}O^oU<)w~zCHakRCLoaZUGI!FncdxOd&JwTI2w4W1twk0B*VRtCX7rg_U2^7= zBa1z{CE6o#F3&n(?EA2vJLKB3Q%(HYPumf8T90j>re?d^Sa10+2Fgx)K$Ijzgk;OZ zEm^QT1G}1U!+j_q?Bm+djAXWAD-v+e4cY2AkC>bqnsSID7s16)TpA#KHLM`g#fEswbxoYiS1Np>LLK*Y6Cl2RjQ z$_De|h+>w|#z(E%?*<vR+G`r_kWJNx~76;83OrH+*8)XCm%C-xtZct-EF6 z+Ym4f09{5ua_z}a&(0nT*Ibex_$s#uDQb7tdmu!hK%v$CN>wwT0G`hfRTjH>ZTx2woFTo%xo zcIv4WRMOY&e;P7uJ=w9~68)DRm&1*cPicARB|N*Xd}h|^9udR3vLO^n;X4T^fBO-! zjxSSr$oJsir?Go5(>l=Dg95L6d{XCRXk!j!fDUtz|CGJwX^AGuiR(0G*({41N#E+6K$6ZcTrB&UZKYtmCVD z7UV3VIAqF`)-oF&g^J@lv0oIH`25Rr=1264`_J`z!o-i$^6>wnG1)3FW51)}1>pfv zZIEFZml?rtvdd%38_3GQ1l2uJ4)+z~_#*>(3)Xs`LXl=TXT#*~C(!BBrSZL4kml*T z0^2~rhX%z;MMNc?|O$XNz4AA$I9PXeb;VBTWt@c+OknVqngQb_vr z_H!Km^uieU=hXtD>YSF$kK^^c2mpUS=h-_+}Zj?km?D^V{X?cbb@mpM^NYt`i-wwFAVe3$=WKKcD(}xcOJJML5C{fe2HKQS%9sY z`iFcwh#ke&PaoTJoG;7I6Tm-=sQLoA%4(rUjtxWpr~I0d#?;9}Txj5^z4}@UK(<>L z)qL5@puxO9Vn6o3{Vt3)EPq#VYiB(b)#vBgAa_$h!ltUvfAV{JetWLg=3aE{rLz6H zn^M1`Cvw=-T4NwpxkPx|62WIRCE`ZWDM}T%^9Ps)%D1CmCR&fjJg4N7==SE5I;yPymUh@J9Et7%D z5=un^AUTxMMGjZC9%HGdd0FEwd0EcPK;8_ifZ5P@Rrrl^L!%|KORzwpgko&jr=&e> zrB@_}2^&$-d4mFI-UDBLxF2Pj_9gAZb*twylOfb``u9BWc-WX44?HNNhEw@9qtr-= zxy{21ds1QUPzhzfv_O$J;a8?!|0*{zmYvO2hQ%=Fje3;h4xTzQY!T*GaAlN} zY9AS<{c(pYRLcyD9jSJPPF8!au!PUC*<)a;4p?PCzX);I{y=1ov|~NXKXoK!$G9qt z3Dnyc7=+Of@sc{)rZ;|V|NgI68KM1#iZXCDE@4P}tN#%)`&QB}nnQFY>wY*OhAq16KbGWRsF&%=wIZf$*a5y`u?NRGM|`T6B^G4ETO`yy(64ei zTu|FJ*q}VCy{MeV7?zx+hiHZS}PDohRy)%zl$}-D#;q@qdEQ~hb4H~ zVxFKu%YU334|Q8CM>)@I-*$rd`{m5vN0BS9Mq^CAjsPC`QF!m^q~h~$hO|cKBzily zQA_M#H;Pk)E2lDe{%9nO{056imGi2dv zm3i02J;93>Lg(z%Nh{zrsGX)5t&^;+H?ksF;t%E)O&dMmBs;OOTq)^;%Yxy1si3J%75P7QqO0Ih&4JX*K7Jq&n)K|3 zDafQ}pe^|$H*4|Vm4_`s;|1SoSOr?Bj%rPIkwb@NOr21rkPZP_vN^?TIA^M3!PHgO zr_NovCaw(p;JyF4>7#kp%@em zpmJxB--ZXATmSJ|s!9n@^}+!YN|Uk7r={rSt(YUu5_AL4@{7bcOVJU_*LhLvUKd)- z+|$uDcEZy3oF$p74k3)0ezwWpD$W!$D)C^#5-@*TP}e<`<^5O@ya-jFPRgj4WEKVW zO;?|bfh8X)tW43OU>$2l(2?4cr@wdde-;QcOy1A)=Uqj?)-rsX3@rW`P5~=0%izdA zC(WDY$d)=E6hxenZ@!uK>eUprjkNon>^60X-ldCtt+sY5X>`BUwG0o^4c4DMqoR5< z^A4Y>kz^ExI1Pl`QEGY2dDk9M|Ze*LoXjp3w6VPknN zYh^(La`kcMxHZq>Y3jjMCez9{lY&3mge&YT;(roi&HZT&vK^81=OZal0|9-)#G?tr z*+;lMg%VJqwh5diYkD32U)J*shae5X_$}Zz1yJC1KV758N9Bvk&IQk}TsO`7wKkmg z&G*?6qyJ)#kyu{{zlUF|y~tWB)Ct0Vb1I7MDWy{GtBF-Q(h%^j;scAzEk`;>gs>0YF zhMgyO(-q7xuiy^Dw`K!-sNzm47fE9u-NJIKjh{@%mJxuE>eg{8^_%ej8Up!7daq6A z9g;RSR4!fDJjjdAJA&WT5|R^pCn@t1z9$09^_oF9s{{>Rr*7-1g*Ayu_B&Tu?LT&W z>;7uXWksKa>7$cX%64@sWc6!)V0v(<1%RjJz^!iH>Z1#)m+>_ul}S}Kh$ryld(B- zbi*HuW)0cO%$1~7uub`nyB7*=EZjD*DP|75=gqN6X!|=x*Jq@4nVyo&C^WYv8@fVO}n^rrx?VQ;wUyupua# zRcNcyFmrki%eZdxSYc`dpud^QW_;s3hS z*4NJ-bGY55`-!>OKKWSbByx!ux;RHMSw6&$o3S{7A*r!OaZ~7Cf8-qS9{O@^1xytYBuH8pHaXH3Tkzpf0qUNfdTaE zl62(N7f6D*ZB=zv>`%I<%82ztvRE_C1j1R7#}Ds*^6V&V7w62n4u3 zkkOT3AKBrmt%?AsP^e7UG6*s>m)?v&&O_3~xDeRK~F`dnBvbI#nf*`j>61 zg&BDWlwVQi=$OTkd>T@dtM?-g7pI4sYp|Z6sXgbhof&lfdcqhVd4T-DM1E)n2swcc zBg$5k3p@$T;!I%&6nGXTq?CE#L$4HXo2Ff?Sqs<~1E8*UC+3A}=7fsI6rS2Ci&l_V zyA-d=^g9G6%aHd{*O;;feuAbH4S1x0o_yH<%6TQ}ib-X%5$kem95tk7$Ydzihz{D` zJ5n+&YP)Jn{TgO#QIF_KJ(3z8vp&@a>M*9aXaa#AHhtL>QEVo;*zr?vdQbT7B zzT_7vK?3Zi0scDW3rz{OH2R86UC|Vco{9!<4U3=L&8VQK{J`-=KoQ#`iA~y&ta3h@ zo7t0Kwq%w7;zC~CyEw6Is?mziRUN@fnWS_Lj?Vtu2< zLnDd1LzEUk!Tt%4T6q+pzT~2OWcILFm+1lO;?HbBY<|ip#Cg=s_hlofU&ub#%z;qD zS9c7bkkZtel3!k<$_xbIsQMN{PxP*?8%W8EI@iCgC{-^+Qe-p@{JvlFN3;I_`We zCKT#UkxECuU3NEU(>S>p0VSR>I+Sf$yca@zI!g{YP^b!hu|l+3IyC;P3)Y|$wC)-y zQ+TASP{>{{dc(QHzB7NgsZ^u2W>}}`cwGva4*s#%q0I%b#xua!+rFPlA&wMlqeM_J6{{b$ z0!$ZLihuPsS4RKb&i3|nY2GWouL%Ga^63CCNTHZCWq6q=07&-fiEUA&gMNRLFzy8* zPMMYi6b+-KJYIn*62J_^zU(_Pj!nOYZ1itk0r+{vhW_kwAWc z7O?0PBwO^J0 zOLNr|Cx9ZUP|ojM5Kc{T22lQ6fMclfR^<396%s7!a=z7ciIkJ{t#8YpP(r!$td(@44Qpps?O_?3~>LQ*e9~h)4>Fh_(R(%@=bgp5+(UtG?}-_^p$Dy zJ@=e4cf~CWmXEAB%C(XPGSEo}HleYBknX!LzXCn8Rf(0=$W3OaZ>OJnw=MU`iQ1uQ^FV&(Ae1EgLUU%_rxwA)@^%5+P z6QG!kOujoH0rEonJ`(}scP06dk76h%hCI#dj!9XZ;e-L=T@ZKr)eakg#+k;ssS3a< zUa}`+{gvqViu0bspnz-vXe|0)(P&F0y+JHF4*)VopMz(1mT1POUx^r67Dus%i#{Ci zRrE{vYMVaVWbC0N|Jx~uR&W{89ZxlOH-ZS`;#H4XiW)4W&_;rGyav(U9Hb?6j;;C{ zd;9}O-Is`ONRfXcbM7fhsAbpdOm63+M|HEP;y|i3f63``SM-a8zUULGJTFXDhQue? zq%r@>MzLgjS8?x*j41$!$U1VO!{_|R62p|k+r&w0G33<}=kZP=${CRo_w49y`g)G- zN8|C9hH&H%z{1HiFZbxDJ1H1a)TFZ`KRNt<$MePtoW@dUz;~RZwnEKpf^YFn({WfAnKD^ zDW~kZ$k5fOdTPwH$ITV@heth3({aO7RZ?$}2mOuOXr13F`y7}k5Jly%1Vw$;w8EF|4!K|HlK-8lZQAF6orKk}Ux4n^%V zzjz+*=kCjz6S}v}ZFS!xb-J+1E`SWhR7nX3Ips}cVJvR8(!ZAG#TMspXv_O-EML$T>>!yf3G(S zOWHBum)rT>_VA|-`OjFD3&b0#I56~ zMZXq(=aUny_CG}e)NVaqRuUNW8~d=(xqJ8L4=)aGwG+%A<%f<3}X%_c4G4 z;VsYZk+5R)j%$vMF{wyqlhI_5&pjmoS&eb`<_VBUnK=-mbS&Ld0O)h6^JI?1?uwtc zquINwsu^#iTl5_gx_4emenR3^r+mcGJo}H+p9gZ>0 zZd$_RJNJ{5wH;cF!^ZEqd8D6k{cDMqs*%^dTELVQ(sNpFvSdCpO@eTFm@hycOpsGN zC~0kblo#YO*CkVa3N^?Q7GHiZH>eT!!TR@bn#rF7FM)mB^G^}R`^bC9Tjj0|M}%xs zJ}|O>+A0Mu<;TggHC`5};;P(h{hxr?%1=IFX=APiR<|5PmVv(4?CO|O^{?P>HKf#& zRzzbD)uGPjR@s^Ma@raG+sOj=0FQcNiI07fk_D{BZ#hBQx!5z7ATR<90Bua|f>&-2 zqz~+;Zih>DCKgu0fTu-+`s;e^eTpwVKagul!X);Mfntck5|~gwlh>*~#OdMt4;xB` zXJ_lG%YkqRgCPL{AMRNp62MetG{cC2EXHHe)foI$$|#H#7KOE{twA5)3I%YGi7Tlr9A1b&^+ndq1WvpemSb*>B;r}k z&A_*L%`@-KS?2iV46vx^TZU*RVsT?Z-vq4d9A8_C9MQV;X|Ln-<; zPE=@u0-Z`u!Uz#u8vyvYEr6ERj3QE^$%4?ukMFto z!DLP@%Vqi|6i}~07UCV63?v*)_y1u%2+rU&Db(UoO<{5vr4oZ&8VeF~kHF!w{n=?@ zWIY4dF!fiC{1PpZ{;%ejmIEa<>Nd6&$4q$AL3L-F{+oqXDuIuZ=+A3p*_r&LtNXWT z2)4vBWeMI@*U)Bva8OeBvDhpX22_$Cdg1MI##B4J%QFz|0+ziNt1@au%dGpLbVPqU zV^t6?1XK~6VUMejVI>l0QBNw1KDcz&U(+UW#S5v;$7?iD*?{IVuaxYT;!dY{%fpqv z+VU9J)o~Spm9CJu<~{NRvR`eA3+h+uwgvN_ZJdxkdrjzVDuA~ER zmDF-jwzkvC0>1pZlL!bFWq%PF}qEN-KhDpKw;E%fv0*Pb>n2+`={z5a<%)k#`zobq7yhjt;eUHtt!ZG5D z-VfaUW~y@Q=*oP;sL;w<&QWeCOzx7yUg=9w3XpBguMLNG%sN#5Q}VBU@JQUjx=_N6 z?Uq}72qlvH9uB*mVagk}NR1t^8MBmnuf{hDQ^fak^Lq5Mq?CfF{WB*Ix(S66%Oe}O z3i!)2{PYxLOoVjp4wVP#*OIKmlBDg#~P49wuG1GP%`D!YY@8!E_2u;DY?FBb|+NYkzuAT6;Yo2sW`jLzjVeivezb6p&}&8}NS< zTxlU%3ivyQhi5MpYV{Rtc&r|LREbx!MReHfsg0>OsLH_Y;G6dS{m00iYco$|c?`T>uDC-nHU+g#CX{K7IMqdyuK%U=jsb%Ae2tmR$AAtay9 zWXfd`2Df9L-rUv^ZJbOTk+cdng4wy|e%$3b$ky4& zE`81%Kql&^fIu85mZn29O&BCBlGBf$^y358&mr2q^TH2j36@=RiNKa&vYIZxC}~P~ zt2OHNrs0xx0x!buA}b}7>-5^l@~9G(+`W{2_D37fOD*fZ=M&?{B&);oNiL+Vb7WMk z%$f;FG0Su+)7#g(xIRJ?)Z^C#+^~h5>Bsj-`Yy6Wbg8}@9;nf!4`yhB_f5jv$UC2y#`Lv6=}hd{4jj?DES>7go{8 zc4bxONg77=#55SliNnwnx!7?{d2<7dl9*eM^{omk8*!hVbKld+U3wPzR*sU)?rV_* zfJaZ<(AB(CO5N)5oFWwV8ivd~>--H!KB?Lh+e8NOz)k=2bmm8p5>ap^%Hv={y3F_o zZw5Q6$C6ZK?`3iCq&u+FN2hEngD~u-b4@a3dzJ5o-k&|WhFQ2y zt?LRe;qW|E9u|Lk@@ec=G1VdU|76Bs=a$eemEGO=){tX?O67ncI&btPz!7rp$ zWGji+ml@r9Bf&3m?bwObPp^s_1RK9-0>(~^-*uiLn)I>F?&#jTbesZP7Fq@uz3i4X zS;jq3=Yq(h2YMtk;o{>PWC+3!j&M4QbWC$`?J4@DbfYud-gsZMCPD6h3j2eX=^Kdy zXp!+u7opjfA`9zlxvzM(N}k%u+J8-O&Dl@#i2bv7YMNm9Bw=#A>!(>Ru=F|i+9H~ z>@!KzfsN=NzL-7(lsxo^9!A4aP{}Ezthx((tHXciO;?YtVUmwSoUNcrN{v> zOM?e+gDxT#>|tMc+94(7gMV1Ko9GuOB|6TL1lIgrr%siDtGVHg*r4rY2FZ-LmMZ8U zMQwHx<#Q5!^Mg0D74pH~sEuR#KW%^^6SnLDtan3L-v&Cz$L^&_FYN~Hmzm!HM&{}Owk3w5O^g(91{h1;`9t2vJR#!st6vnrR zd1WJ0H#YGNA+bY2`ci`5?pO#PRzW`)ZWZYbCSqaC`0)eMJQL>fpNGOr?WHlb!tvI=o z>F*+k850faj*kllR6<=vGfZ}Mm=LxWgDEns1yFJFJ#;c3rh;5hdMpojiPe~}dS2sx znKgH_RST!pU_8cI`lOlgn^EcKL~8UBf-{&L%PP}UvUCcO4g46^2=VeWa&>j`O0*^6&{qR!U6n3sr5d&Ky+7XW!M>} zWGE)D3C=*`F7V%+OQLj#z?-Pj~!|MvCj!OMmK9&U2EKq=QzYYOzA{`h9U7V^Swv z{5D%88}DTDhiOE7OFVpbW-lWt3Z>0tzj7V}uBN7tSv3yg!6p;o@$fKz+VUPYm8cLD zZH<$s9+>JKC~8QhJ0`cqy@@{ZuvxHUO`siiWIvvG_nI#HnidemS9@45KLxx>O1kHk zdZiz@uv-?la`qvC|FrO_z^H`u9sQCK-q&9>)<+LS=evPGGU!m6AMXF_GX!~B;5BBZ z*GA<~SlRMI-40l~*3XFVS?BLtYqFe3v5h(E-Y7|DkGm7$FX7QYNck+0<8gAwqkr(2 zA{%p<5(o;J;Y`CpXiFmm=#}+ z6MXJ0mQIFTTyRv1tQ_!n>J39`0&G!cLf2Mo_=pMfU`$`w@dg*X`8Ri1T@{MQgQS~( z!;-dCoB@TO6MJ8DJVR(^ChB8(^kTpP{W}hLApk%l0V-@Rons2N$^|wJH|9KF6Z)?7p>|bdQSXdDUe@&#uH2vGaT=djK(80uKR?o z+1J=P0`9P=%EeMaOc7ocqm@Yv=t26XH4#{TG57Nd8I zM}ZC63QZ_hvpy){6Wg_zG3i>XMc4@McL56Jt z(!B%1G8>SZB;_R#>U=z?9GJg+rt0p?L|C2Ty0}I?uWLp$kv__PS=f1&Dovy3TMwFC zvGr!+GS4T-q&p$6`SnmjAHt>*0}1`@A6j>p0U$YEwRrr7!rA)E05LKm_^Z7V6K2S{ zYfMvVzX<)+2)OFxj&O>yoQjs;fb^#|C;H*OQ1p?6+XTO`6tqv-kcIG$g9k~C?q;GmEWqVdxp%veWVmijV{@k@FxWw{OCN;67V+^i4{a_w+b6=kF%4;kz)jE}n$})nB`_#s3wHt-OH_XJM zEC6u#hZUQByELWq-2iw{^yiBwuaiVB8=vLb9ITy!)=q&{Wg!aj{$!9k`He~0F+_=pK-3SBTe&sy%=zC5j6?<30Y zM7G`5ZU8Rr2x59d$M=TnUzW743Vzt*{o&(rLGcj880D+d;lwr)%I#t>VI9ADPHpoZ zv4tws9hW0OfKKkY)8Klepktztl2HDq6|MO_2}7nwWaq_SG)X^2XYc4L3QPc=1Dl1g zCO77f$(d)~&mwv?qSrn?NczPiu8O4rKqO7h+oUlzSUygF#QG~ri*+!0vkBR?aJ!gh z8NOr4(KFxNGRfSgKX$o4lzS}`fL(BYvKCS*&9&4*>!{s6(vbc-G`at%HSJEl=3cH| z<=IE!v&P?uA;3aNP3Can-H_4}T^o<-WBnh7j{VEg7d-4e z{3=y4E#FA&x=3DJV+<$U3Qw4x!fJuSmx0CZwK#fleUdDWG*LK#2x2 z2ot;xie47dRX z;5enWcT}HdJ9ZQVx>1(C7EfPlJH4BNe42YKVO;9U*pUG-6lXr+--5y>^Y)F$85=6m zBHF_E-uOA^e3a&Ujb8zu+9cINoc3k}l96Wxy!E32$?H7c4JUB;j!u@OA+%k3yeTLJD4s ztEPCva41S8{BNfIxsHzpFl+?hs~cr^{^PsoJAP1w6P4u;VZ5=Kd*w&>|0dy-g8Uju z%|3M3R9eHAmc7d*l?k+V1cMIuM_+hoQ zmJ1F7VvgxIz4$>)0tQ-8|h4`OC%cZ|dZO-Km-23UI^41A9F`uj?{Iht<=g>sD@G83IrNUk1hDJ#M@+ zi$5`?9dDvPlQ$rV(N*z|s%*#TG`06#@%40V-;t1T&#(_uuz3J@ex541$cUlNy{8Kj z*quP`_9gF4hu6L3=69qC*l5R!X=Aasa5#ejg+PJIFlA{1O;na4$^ye!g$yu@FHHi- zSAkd4VKp`}KyW!mXfwl*C2QJ5Y!nkQK)@-Mha`J(2C=#Wq3Tyfj5-SbbFZv=l{32g!Te= z%UMe_;6^_~`av!xO^3EMGEY#mtk~$D7S{?5w5d92_|bblnToyH5(9*YftB)-L-7Hq z%(&|tSLryP_F0D41pi*x^+VCxX)A(buU0;GE|=?+)7dyFv;D#{n@myuc7}AsS=+ud z_1}SJ0IchnB7KH}i1V;u@mhJ@H)9+9qIHwOe6o>cfQjiSQ_+b*-34jWTmlz(fwu^V zy(pPN@qS2N=7Y^D?d0lm|D@v2JSUM%F@XAV2n26FHKp4PKaA1~Tyf&^LX${*JQ8yC z>>?*#fAV=f0kesc#n;1>gzYSk7ZmC>*o33fv58us{HUIzjr~*C6slr1YM6Jb7s9J7 z|2e=Hk+B?LXVLU|=Z%tMM6b6Eltd1-vq)KaWlT+3wgbp_WPUiz_)|Irw~)JvIme9T{1A| z{n`k{0HOoHaTXZD1h^^kGZn{GyeQK zn%9VsaKT-OmQ|-zH|or4CA<*^py{f*!^I{$=3SUGKPz(DOxt|ZHlWATL$Cv)Pl=U; zwtpqgQMqhAN5sXyk;6)q#pMymh$r@(&A8a;GpL_8$TY0js&84EFPF@{bv>&~MipUP z2NpHX^#}3FFVo8i`pZFs7#q^c<=)2auFpZp7yCAE~l?epiz-%*RCf((dmlil%>&teCu&S)F*s=-6{rliS|6tARlr(*2bLs*_ zjjZiff(q0(n@vG%tS^3lQGMF4-1l@u$5Dt1U6e zgcSIZ=Bhp3Cs`*bztqlFoa0P!AwlA$-%z>@gx^k?tlB4DeuJ1V@K8oCXOgapG>vrU&w(FDLCcAQq+A>rVw5a!{^Kizbo z9%Ar>f_(Z%SNuY6k<7uMd5y}9>9(5rr4s!D`1@9&bh%s~s`7{7Z>?!sza~NNch~|b zPMQk}f^`wH`Y04D-~{FJHnFdWj)o$<3yX6HKMErgNAJg~Fg=A5LUa|tVnIr&c&=yZ zu_}vlz|P;bKICWdpgP6VhHxD(0WZM3h=`l0CuSa z!IL$sPyav}rMe@ae^@u0HrzSED@+<`Q!G1|3#sk}$9_ipJl}it{i@73Odk?4aL=NO_!-99D-6t)l|O?7G8w=>*{q{+99T3cEuGQN=m8Fu2LfI>Jwe8?F_!tOV6}wTQLaNK zB0>RDFS%mg_80msIdU*Q=7hrE*&6$XH89s2RjuO0$}nGMik+m@Ahw4;P=EHnpK2Ul zJRFZ{%EsAs6%OQdEc1%>c^wgd8}qus7PU6noj7qHBRCn}LnxQ?= zJ+T-p^XHcV5CxFghd>bk20#sP_>qAIAOOz+lb4n1APELT`Jhln9s>r3!SYM4l*&Z1 zGpnj=uGZGoH`G9Z5Fog;z2o|go3}Wew#J^`D$)KscklIQ78REOhlU;&Wr`9eXnDXA z(R|tI>4_J2J4?j6GjkchhlR^*Hb*5mFmqw^ud#zzH&1>NY8&8riM)tA1C_uZ1y zV7)Ns>Lhe2z-_p0b8hjpKzS|Aa^0MsXUs9a^|Q*pXD*Y+TM6=~wwj(ZZ(mV6xbRrl zHJFIf^3%9(UAom3(H810p7YJ~E*N^S6rshI4JAgdVEVKG4bPxVJ22m_aO&dna8{W} zxB2pm$@5?hH8%xUbD_sGEh#v7@Y$Eo>%Lq`bdP?Kp2p*nCOf-fw&E3km=2-WBg>CiN%|raG5%cc;Q*oIKR>br7-tHAEZ}pGI&LC2sg9wC?uvDz2RcjiUO>cX04jf)(iZN zY*RIFcIEQ4_FV9ldygZJ`9IiiaIE=j+>%Yw*bRFb<*ZZoF^HKT6qHpEu^G_NqZL3b zH^@<*%eOOFT)gg|(>UG2eXF$ITK8>7p(I(Ob*S4Bx9l0EENlMUy7#8+)!f%{kC&nO zu@&c3^~bpOba&^uvciqAc=s-ctBtl-e_8C9w@+?9YS-Gqlh=*!8OpXD1M(P06z~*$ z;&to0{;i<%;fvi3D~G!!AqUxIo4>1bz=@W&{rqB|A{+CTE4QUJ5<9+4-h+_SxO~#N zjfTVgvTt;YU%mq`JFyEJbRXs>QNaZ{>OXp?N074&;CYcOIiKm<%nQa%idc=pV~Fh9lamo*+u4mM3w%n zc4!{?^{$qB^xVA-F^7~X-5hifa6 zq;d-XH*r_)9}A-yf_ggG?ln|Jku;G`r@Usq6-f0!IGqI0AEd7QF_ATI(tJh_UK< zTS@SVbc$%7Bv=C!`xRkh%sjgDM9+??VvfD66(j>wR-P|XG%cK`89-!)S`3Y*hJDNElWLLkfqpsK5{v<9_WT*MXMDF z>(1uMqGM}j&we{7D&W=c9!ywNn z$5%-^Gm0l!MLMG&56KUnH-}zeF3p{>V>B8?4mdz5OG?u(PSmgsAvj)Vs#@u!7qmG` zn>d55ZJV5{_}AOQvRChMxwz;_pF?Y=`^m#m={9F#3V4#trwkKNfu!!h_)i!)7Zp?^ zMYsLgl8U@)iuau1&pST$Tha)hxgkX9UCnc!jm`|>K;=#mMQ^5F@vm0c?C~qePEGOi zIOX*LVC@x!%JS3Zr*(k44|IeFqklgB-<-{DbcZ`Mj#s>>X$vdl^+(1<&UXCgDBEX- zqI6(u#HSRVH{1xgJYgGV^FQi~o;%MCJ!3;`Xrsu*J8c#>c*}`-dLlGHC>f#KJ(nFj z(iYfGZzrp4ozi<_>iA@Zp1k?$f3mG79#VtPF(`JPBH_W#U{acm)#!r}30&9-O*2Ns zMN3rDMpE}0zxBH?H;^zd&8te~M5bLJN^$?G5;dymv$$tR!=$-m&E+Jk(G(D!2{woK zfFYlmlKho$JiLc+0B5-)x|y_8%m;2Pe%G|eMwhY~U3Af1kAZtg*XXJ;I}B-?9W_We zRRT05OSqs1pK}zx*Yo-UWa)L9{So{!`_nj8X$6Svo|al*$c(MF&@G*b;(F%6%KWWf zxA4b64*S!m6~p3RON%gF`wshw@7@ifu6h;$ztlFUPwu{E^#8aK{q(<+2L`<98Zi(( z@_87U2FKEdAi;F7<-FVCB5&RYke)|Tm#!#ZMYvmYrON)25a(#K`G|Z6C@M*R6?^_> zbW1%#*b{o55plc!)#nKFf;ymh9rL~nheg~HhyQtyf;~$EOTRb-2yqRbX*)qGL&z}$ z0BQMNEpFNYzgVnMf@Q35-5%^h=k>jwzHa*;9hFOWCSx_CKX*jBWm?PuX`REWZyQg} zW&sXE7x!IFAka0V567P05&Yor6a1p)zo_T?Pu{(at{7ha!i<-(s`h$yU{#&*^1kcM+RdtMy>a+HXKG=BvXoy0zlS)$ml_Qir^ODz0#w2Vl^{OcJc2I z&TS+4?W;elZ?nFL(KBZrcU?rEbiDcKpV@uGi0lPWc{@czjVZ3_KNl?d%{tDqO8wx6 zO?TyU);xF9=zoCT0P=eT?ar$!A47Cn z6>;eS>t@69e6$#d%A1j%1WRDTt-PyG_%ocm=bMuR;K>Vdkvl;lgyq-^A`(fk(CYQ% zA1zU83sHN05c=(S<44g3G@w!zpeMlnIt`#UmApF!$|C^vIEfU}L3|!P-ncwkn|U5V zhwL3qOInZr`RKgOvh`_?Jmbfp5S${+zb+FdG0?>91O-i}3mh>sZg7i#oignEb0aYsMF$N>^p$^4cEeA}h1~ z^s=Vl+z#Uuo~11R#ZW$E*le+;?}~kub>K(Wkc7#UC+jJk9*7)@RyP^1x0rFqEr&|m zOIK}4*JHuZWT2puSDJzT@D8Pfx{#s^nzO0qI~lkZP>ldKprB=>Ts%3q7ImIL;Ns~~ zopn3hR3|k(k1`sedzd>_$mWIIQvLNX&u!_#fAlgg7Q1P$y)hGK(;TqEZS>kR187r9g-RetS~JiwCdi!gz>9YUE7lRHWzeiweCk zHWuD*<95G=j_yNCJW_8>S92#@^6!L* zm(rzn>s$mxAvtf33@;Y9`1xJOW}j-TTp$Rm>YuwK0$r$t7&23yTbGReqP{`aT-QB+ zgATReDulGfTauwam!iLSgYsDDK>{pP0dr&HvN9P|-Vd4x5RuEZg1L|a@xX##wS^4e zAh8OKE^AVBuqcrdlK{*)s4x`}?~#F5O_yN-_}#s-r^=bYa=8(@qF|>mm09EQ=)$KX z#TM^l7pL5A+8lq~mpt2iHU4`5;Usl!JT1eu%DpXabK=UlO1ge-B&@F_U_Gux-i>_2ze(E0tk|8&@m)`Tl=*G?yfY`Q8J z6vq`%096`LzyfCRvFUIT1dwyZU0jKS(#F+Wb5LprTT|I}S9j|!g)sj8tdHu05zv)< z;>FIN>7DCY$o1l1Un_{+d?OUyWw&chKfo6~jp5WPpIz#eoVFzDdC$J4G7{9DQ(ZCH zWQ&al5=&pl!>|NUo&ywqx{PB(%@}(SB?k1h?G0J-m8q3x90lU^J*ohVRJa_i)(mJ? zGSsouW!964hrK)u^C4r}3u}h!4&*P3U5@#?QU4 zBL67)iAq1tL2WOg;-{OUL0`$7GS(gdBOyQ*gqqYV#snl;SMZ)CzN&P{RBITzX#eQJknGRa%c)Vj z{M9|A2XRE1-7Mu1azi}ulojw;`KGM`YJAM8FH-gkZXN=strhn6-;u@E@nTGz8%-$hzW z*#oTbvI6=|L$)Cg{#rr^mk{e>Iit^WD)Db$eCJL8a7`Rt^IXX!!l;2j8pQ?cur0D396k56QO>5V-Xoo# z8@!H(6cVd=g(0FlAT@|9TLM(uxgufKV+#RFP)h5XHA# zuo?Oq)bnE>#;Dqzk~~z(nP91PI;wZcPmbED4+nA&j<-(g=MPgVOOK#H1OqyTbe|lm z6WG6=MtyB|wBlssIdofw)S!+Xot8g&v3I(o8fFPx?u?IjBydS`Q0mW8a-X4mysjO6 z1eartebNut*Z@9rgG{cQ3SclpP5MrGp74>Obb_T7V? zdmYq{=|ZCnvp?XCP84j%z@g4clRgvEKKZ=~prhOT`UcPaB(DbpnxV?E27qOC=Wq9- zw*t@``^I|Q=y%uqYLw|#`#VbpbCLFdSu6UcTR$4#(U-ihlRW1Z#thnlX<{E1;I54% zH)@h^@-iRO?_K;hH37VWJ(j>DjHZ)c{*>xU7DDx(|BP_KsQ) zREBd)dvbD6{JxFRVpaH~DfRgc&b{uA`ETNp*-F>atj^tQhOFDmAN{Pg;JL>o1&rEy zb?f56i%sCa%jYEM(Tt9s#-#Cb-0=41gr;YYi)2^B)-CZrNFJc$?Vqqwx)7|9I{@c@ zMF0rEVQlZJ*xyxAhZn)aUf2AkZBlK#`5DKPhCwr$5m`R2V}60L*3AH&Yv*Zj3+ zNLY9^$Zp^+dLZ>k+x=;P_Da}|x3Xv1$eKG|bC3Tz+?T-_BbOzf1lv%4 z1fDzUcK(SZY-wlha9$ZrsV%0wl{;XjaV=yHqDgr1*K_<> z$6Im(`i|=+$7@g@^BnSTJoqA;hY6@)L%xRIZ=`PHm+xyS@1?(W`~w**u5Ue6>R!hK=AX zvy4|Pn4GG=$YZ>l8t>7XA&K`ApK9sBJl`Myc&{ACF=`esU}|+$@PeGalPAzPqh~ z3As=v)bQs{zZaLO-QBxR;X3Kn*~UAgY+9xi zA|!M*uQ!<)sk~hk6uk%Ky7+e2AhOYITh_Z*^x9qLq`i)(XPb;ZRi)w?D`(?H7=SYa zI6?;6<5&55&_^0)js{=<%=-aM{%Uva#lfZ7`U{z7p-JBzxxV+!-0nslq<^cC=XxR! zvG99uca_)Dq3>J~XK3!z{jKr%!+gc2)Q#r}Y56lpa<>zICdhhqoqv!~bnNd!(brY! zwZ}3^#jj9huRcL3-RInsw?1^yd1tO2+dY1B-9e@()$PY6&If~;b@nb&b9wP{VfE?T zJ9L4Q*B~eah)7S(rc%LND_W|II$aHONsTH%sI0QNaz#*0om&&0fuP}VqR@1>CQlL1 z4Y)eyhM}efkD8kHvAd@KA%})XM#l=WO~$5Ys7Lo^9_@8`x8kB=!eO#9Bd@32z4VJW3-9Z!I?8WpG}<5AP+gP1SF5D7 z(fISd9S_7AM{hXl(7l&s!#XJB>upr_By90I&t~F@qo^00O-MkdX(zuG1DKeAXO`Of zGic8yC9@-*t!TzSUul*l6Md}?kZm?^&7?{~fNtp<{Ns%5QxD(VpYsY0Ty*a*57nGa zP(1wb%hOHy;nSx{;HhQ6>uOs&!XChsm)v6x^B&8G*{5gwj;{5`15_M{4Fc47Cc9Z? zR55;vSftKx>X%et`f+wDiytBr<{pK(w$vAe?9T6r^Lu@{lE=NFY~lmPWpm~t1vD3W zVL#|9{a2sm7IvT#`&ddhf%(sBL;=CiDfor=1*zr5#mqA*ULCW{eU zkVe>jqUw(AQIw9)hx(JbAGjx&j_-2jDVCR0+mk|F%Tc{P1Q|Qq-`C=2OZ+9ztUU960buM(vy+R<3o|Y&}I<6!p23eF# z$HFM09+zKTzrDcveyBsnMwtcIrkQHeWC5}mA!0$O1itR4G+_=Ko5W|o)!Y<&XowIF z_?aaUbdWFM=S$hwxO%>ab8VdBxzw9xnb z{CfdJ*d(S(TJ&EUZ&+omyfK`&>TVMdY_K?>QPv(;S5#7aY89?i-X%UIkozMUA>7q_ zBr~lo2gqu~5Wjn~&r0N-^0@v-T8I!~`pvi^=`c~G9Z84n;1Sq^tKT%?i zwXQHdBpmfUIT_eU<|**3mIQY08uglHCo>_EMsKqHckoVEV(QHFTBTjn*B}@@ zpa8u)`o2`_>doiDd!O|m+Z~C$xFztm;~^CVtInwLk@Da4XinD>Af#N)e=rnR26FAn z>x(*gT5XfE0v{HGF=CWo7e>2&WrhmwixID2`mPVZ=ShA!uz|Tw%o@@E?zjNmv!=de z7;0hVY98ueyKmB`aaRfo``RFkSvPfQ*>x_nJnti43P@k{yOaBZpMW^kJOk@iEsG?9vgcM&CP& z=VaF!;^%mIv+_;EY>No}@J3%b(^#dLuX zvp%Ma^1fV$+zrRPIp@`nWA~A5e4gUjK^7eT5pp|+%4l>Pq{s|k>+d!Rz-|X z%j-Y$!0`GQuU5OXXHWrgyj!-ibeaScyK#*jldjG&GP?U4U z6(VQMEKck(vdvP{c(3LX6%-A#@q<>_TfT&##_Ok>3B*vnprJpVl(G@=gqxEieVXDqs;KVCgP?+3=6@v&F;r`sO+d*WWQ3+VM5x_oy!Gi@Sc`&8j)1iISp zAiuit#g#8^=O4tsS4-f!s>~95JK1eqYJ~CmnJzsnldZG<0r`Ubz3ZFQ_Cq_}X#6ig zwk@3Y_U=maxu1~lyNv98{Q11Tg;pX~i?*X#q;$CVt(!Lqs2F#dlc(z%?G~SAnld0FBh@2yl?C{b z;OC#DaGDWboycQYxHtO(#WYdlhg(nvmuabT2J2|%f^(`I(&Q)d&xHHq^bi{J(EWO& zbgW$cVvGYUq3m-6$r2*npBL8z$$R?`l z;XGkX@XR;rG6fhslK3|bBSi4@jyrO869@ZZ$wXiOT*==r zj@umFiqC)CBjv^h`xG<0YN=X!G*N46d`Q8fa*iGegjj%zJEZW(pd>-nd^`??rRn25 z`4^KhF7YCwDF$!(Xp8`DYsA!8MokMM3}+n7EUFW`*yxUIS@M1G-J>K(^)hfl`-dj8 z7MU4~&>KrdkRY*SWHog!%TR~n$G{Cw20P5lpS^$@Yo;RO;R=kTM;DT^LXwtkL}8Du z_%byN&5|8lA@ZEaYfD-?wm7lZ>EAi?Ha&mrvTykG+41jjg*uJ^j(?Cfv|l>p?| z!R+u*+op=bhZT0pmloqwv|6Az+<_%`sJE_~Ju&i`yKrZHWIv?vk$VbURCJ^h)ZOqO zqw>n*XjBI9sy9x51Qu>B5(M(f?jWEit@wBH2kT02>XwYU!E9K7JK6Wm!7_kR^tYwR zx%bMl{~p|g1bBv87@VhXeT|+V`)A|J3y&VJatm=G!IdcHl#DFH;Dl_3Q3i=}tcm%RWp)CPeh=ioT&}Ghj~uYmSRvnR0AI92gf(4pqkVD7e1h&^mq< z{sgad>ZgISAe>_QOSvqJSjKCR#kUI`?IYmEW7vUQx=>yjVtM+o(TqS%GI9T|E;oGV z;En>sL*b7sQS$h(i#_ph4@T3wWBV}pcPcVJ$uLccOWP{-V)5}?PW2p8QlcKDp|z5A z5F-gBe_(j7swCO5XhQKKKINYGf)67M>V@2$Dw&316y!osa(Hdf9%vDQI!tLd0tqbl+3<;PWv(Qn?^(E0t zlF=A($93?bn^qey#S#(BzT%uv7MO?ZLZu-^W}AjvmIf@>7(tR(UPZvQA7k(Hy+dW5G6}&H@{qc=VXJo zLA^GEG5nsvQYm94B985V=U9N{=CNu0B47RH`UR9P)BD+xy7LUEKNhJ~R+A}FG3$4{ zn;+Q6DpfI)Q0UguU%f~?P>!~>iGejV-~KtTxc&4-V7A4B$I*Yw(od)*4e17T$AJE$ zssjO#GXsq`>`dWAE#XZDE3xSq3v!MTaTwWO|4w)gy>}t?Ha5-{m8e$Z!GcC%;ZZ<~ z0YWw#eSAL{dM1FNv4N^1Y2p&~Z8U}{36SbO{bgmqey8kySx2R3X7S<;OLEG$lI;53 zi$01uH*z7J@6(B&k=G3~1Q&YKI=KW52f~s%>q`e(FVHvIGqptpA;SUnaXst(nqwmn zO)N0>40(oyIK_s`Qp}ZikqI0>D)a^&b~h!%Je=*NI0|ll3S$fVc^|RpzuYACJ>+Vj zYPn>Fw%JV#6nk|)Afm(mAIa>8A7pe37C25H<>dep>`}-3hG^g0HSOV8<%S!V?}S7h zX`kxvo*uBE-Tq^j_H0JjKd~wJX_4dqzkhqxZ@$gecI&az!O1YZ6O)Ga%l8IkWE4=r zVdkC3N_aD%k$6NL01?Y{gg&fz3lTg&bM);g8$Y=)gpkB%?q^s~10ph(b^RO`8O7m=@P(Y% zfyvSDw-8XlS^p_Al=jt{7jw?^bPd}fy{mEc^xX(kCZIj*QZ5%c1;88-pgq3Os}_|B zK$a6QoNV3LP?QC0Z`6U%GER9@@A;4vHx7AQdx~3ZpG6`usXeg z-3ml9_F|2gWF%S1N4ZGX?m-nEJUdtopHo&N!L)9ByX;JyA`}~Nl;&F5=>(KXt%HEE zZK&1*8s!XPyXimtP0Y9k1`AIX?oq1YnX{eaCqBuauZ9uCvdIp~$*8>_$bL|0+bdoI z0DlbOJJ2%u?Kgi}&a^*LkSq9apPTRBRN5qp<;D+a-A2AW_-I8piyM!404AKzqgS(q zk4jD?XG*y<{hkHFADJQDu<&CmN<;EC-JnpL15DUKgKJjk?W0F`5-hQ&^1F@YF*^uk z<6|@Ky>hrQh&nWHK>!45*+I*~Wc+k0R-5<&CCtM_Y$saHkVtRpZ&P_mTo3~m(H_F9 zN`!PvcsmP?`~1Fh)XR-m)jV4ip26YOGeyOUtg-XIwc z@O|Bf6zS0&P^fqaEwd)sQ10)g2?YiQ5W=0tyJ05|f~vr?!R@|FUA3t!tgw><#$noP z1>r|hz7xf5uTG0xB3V8y5!;^EXc-f-25s#y-d=_mdoBrHMYuAGGz%^$RUnM?vZ6UK zH6|i%L>pP1S%W)Y^#aw;f@r2i?41qCuR%COJhCf9sQ^-AB{BBjXTyS^c5!=__XfzNYYQhlUTY7r%QR zkUzU7b@mwJ{iL_>*s-T;#|~Va%D52mWocllo3Mk(eRuEViW{c8kF7rE|CdXR^d^Oa zTpIM2-+4m^rG}j5t<&VpK7so=l>F_^i6w#D@D;PKuYXsM5U}vLD)j zTdd$b%AcdVl6#PYkbKZLD#4l_tEdoLY-})iVIIh52SDcD(O&#TDlyai!;}8J?%nNZ ztGtm~eK9(FF(;Z>b`<;Gig8MMyKJ3%?k7*Pb}&~t=}OHu(w*r|W$b}I=Qal}Dha;Y zPaT>)D+oZx({ z6YDVhnK#6x_{I&1nin*Dyx^jU5^3#Lm5hnf?AJ4CvKwnYbVL&In-VoTiC*-y2?5?h zJoxoRw;=P%v(C5y3xShR=D(dJVDlmo;!giGLE4l7e&~Qdqz@-+d{Ul&+@w;&b0cmC znFdpqX|*2Rx=X&s@}55&sT&y$VqX}?f31ddfNSC(oMyLPJBD5WmFyWG<|GHq;biT1Ut)l`SRVa**}JBU(vqp(TbJ$G3Hr&?B24(Wfs}x4U)ag=L04& z!N?PW=lRS=YX3auM&EOsi!^#t?!EP%Tl4Wv8AMiv(zWX8!hA~$d0kwbBs+k2zB=Kb zgd7JUlP@htxa;+)?!aEy$~Naj4}Rm`3zzqS;4ab_K&eXN(YE$flznPms<^(mJ?auF zuLNIFSz2IQj^~Dk`ug~U`6P!XC4~itMPF~XQH%0DmY;XbvA5T8@a|okJZ+niAv?hd z^QmcpS#_JE?iW*pL)``3dAPZG#JFFmKUMD*Qh&ADy`D)>t;zai}z4 z;;0p)R~GNTRE%>ZRL@ivbL3DJb{gp84FJ*#ffzguqkgW#BO-*!Oq&se5*9tQUrlYE zkuvd+Ba&pP4l$L{QlRPAX5zJOGj%OfS!h6u_!$qa7wey7TFbXOS(m=Gw>o*+o$id@ znge3?l-s@A?@McXo~t_IiHko047f9yVtbu)k{Np?wI%eR1qb31CKHT-5h|IY$8A;9 zI7O$i=u^w4-S`Gm10iw3xY)VZ#r)FwG}C!GIHLB*1?W>@{Sb?Cw z!4u=gtFai{RbCO_fB;*G`efO0(Y(>9p+upFRyFt!vP)-t1sU?MVCrINFcBe_47koR zal*zdxXsNSzwtZ+W@{}~{3KDEMY$^PNZH553X7CJyXHt>h^JYMvc*BcL(%hc9t@~; zXzHkDHYg;!yDTGbi4D#RIC9HQk#Tt$Wnd_*yU=R+cRmA+{u2^RC%85pH^{c3kGpx) zL{A^EYACjn^ug2;q;Ld%dyTzb8d}OATx)n1#toxbqOH7Q-LzBwHg9)tVNtIH3dF~0 zWxtjPVDIB2EvSH_HgES2Hopju2BW26Lx@gG{BU-v&25w==!JhOLw{N~W_2##)T;5{ zzZDj*d}i#Ws{1)@eEGv^gwut2G?r9R*L_tr=jA)0YHGa)s?e@?$A4LMZssSMcWn*! zL?o@*c3`lYFuc4b+Net&*;x-QRxUoK~Bp>r}J6-#a%!A9DCdpw2DQhFJwjExL4;_!N2F6hO;W~21dSBpS$FF-e8vTcf#fG)WNo7)OBE}Yx1@~3*C29#M*Shg$x= z9N`c2XiH80Q@wKHblu;)t%$SS)5!|recl4Ns5BH|@Ic$!v#M(OhgweH3@imWc7GLs z{(P~ukg5{u=?`BG5z7QkS35Ttc&E{iSg9BeRHlMBqrY-8d@q0@CxPnoc!Yb zOG&eLJF4j52JlMepGdEDCEtldQ?hpV51MYWM>O%QVKFkiPay?7_DSBnH{yxX<@ub@ z&dcKE6kJ-EX5F60tUC)Y#^~2*yHC)yp?Wr5p#7Ap4?S^Gih$F*F>T}@FZ$KP)?Q1Q zCZ5YbsZ9Y#If(bYrWh+c07^Z)+}g;bs$;iCWm(+W*cMOv z*KGV9|CXH4Zmg8*;a(I}h!vOMZ|!bhci2!MO?o!`l+`E!A+K(xAeSbF2*Mw6?D*_* z1t+zt-Zy!y6s=5%dMyV**4y6;%lfIl9J@LSQ`fn#mfVte)2cZ8_w6B6v?_qgSJ9qp z<;K-QYg3^pzQ5gKPZUcxBzDiCa~xah4hPA2(1A z?W8Z!Z~%3>ILOS;Xl+jGNUHm@`rE&dh3lpmKX&~C8XH?bYF25g)ojxF&TRWH!)iP& zSfQlqLEC41aIRp50X7Zp9FnC0Ih%1apN$aq;zq~-L+F;J@#?Ckx`}E~tFCN5OqfzX zivd*C8YL~<=Lo4?%Knec@y$m=cZ*<}4EInzA^ zzm8Y1!SFFl+9DT(P5~~>uFVKRW%CZHyUW^X9GRw76AR=ms|ik(yrMRmWn1rsSXgsm z974wC{AJOdwCF#}E{s~hM@}|JC9aBh1#hcA)&F-_B z+2W0t2!pHnT7j8EFmlHMVfoq_zm(7{F(=w{(=Rj5r$`R6{q@B|A?&U>n;)y8@@wj= zTuPMgBJ>>XWYgLh` zXE|o)SCjO_?I*9lYt=sL4VoD$VnSrI?l@YYSe@x>NBr}gp3OMMF{`e3+*~baJCh=7 z6n};HmDZPZx%TTL59dMaf!?Y^2Xy;XvV?=+APPqtN|o4j-zy6$*LrFEb^WU1VNd}# z^|&B-a4^GT-D zdBSfB^e>2O-dr?y6-DrK1|em8b*_sBYc~94OV&qyPN?h=VBxwh)MM(u+YGWGD&>B( zChLKTBq$k_#sl;wKNETWd<5P-O~G{sZpgxj5`aOb=}MjYlBGO10kCYcM4F{Mrl#-- z2ey}l6N7P7V(eqXrE~UUYn_ZNZC*Lz+0?g! zCn#q#5Sh*IJQ92SV&g$&9Av2p@_*$d1G3u${vIC&oT<#;N#necZbt;=@%v5k-I8R z+`e`8O?~39Yo^P|R6KulAuI70@N%%G*IWVc~6-hyX02ZU-*+32ggzPTcPzLgzwfcm5UFAr+RW3LSEeUm8hFk+~Do zjW8&&bW)$BA%+1Z5sI=BCF;CfL${xb2=wM7z<-GLsv?8N5h5sfz4tZdJry@l8{B(G zpraXDcPn$bJetoOay z8?P9SK|1FaV`%J1F6Qx*-TBix_8Kj2hq)*gSc=Z+lB35^A;Ob>RvFrcwg0!nrbfo?a|qV zuW?mD`#>Vs2@e|YNAYVGIWVFN08XRgS;}>gD@YMWu!@a9e}X7O^RECPM+xF#VUt&` zTn!SqAY7ZGQYSA0$mas`9M23ocydi37b%$$;!e^IQt+q|c$AK826e0Ix;Y_p4e@o_ z{GxbRnrH&$2if&#+#7MP%9iK^M1972vG;V)WH-m8HcJ-Y;F_a%yQ}dUe(y@c$k8nT z0ks8?w-b~J5M>IlKgrbUlgCSeBoVWVU%OGC6`N9zgYpJ-cG(v%v0&Pr0Z&9FhcCIu z7}R|ZRJ6ybJ7_~_tKwHzumUTT+;oT!3Zg){{@=T36G8mKH!|x;j%$2PvMZN!;MH%H zr^|Orr%c7o4RQ%Wgygga{YfJbjS%#0lP_;;+XeXW*R61n;PETxL~!xW#zcV&lSJdr z*d`P+pryRYmeV9HA*lu&9sO!I5Yq`is6ON2Ek>y9CWAJQ6H^Ju7((7{_q-x!1YCp^ zNspjk1c$45zl5)Iyh(_8_17%uQy1zHWhYRAMH4}vJcuwE^5Q50yV3Uwq7AO;WtQH>j$DQznEriy>+ZNwl}dAF6=(9(_6 zeQPs60Z=6&5|}ds7-Rx~Jda17!q0l|z;Fyo;2~m-W38ATOP-^NOIVAt( zIqz71`(*AOkb){a2K0<1LSRfecHVt;+I>!S%mwt32?~2pedJ~z!p>HlPyAFQ-i~&~ z4ihlnTKzjLz;Cej zM1_-`E=TpigB9f-O=WYsZKN@1CRCDLdshO`6RAC1b^lA&y$~TxvSqRC*UKw*;ywu^ zUmU*-`&sadDSzScpid$Sj|UUmd#b>N1H849WalMkUQe{9c9mb^kNRtq^GY}vm+#oW zgE$Nk@(l7ayJOPoP~AEaa_H@nG7h%6tsI&m@o8?&Cq{gVG2C+MW%??CPHxJ`#^^FZ zI8b9{?Revb-N#D8i%H0zYW{e_)COhbs|$dzdn0l0Dl~mONE0_Eyc$=yiqnwsws_Jvjd(JPdQq+P=e+Z_wK%WZ8~Mw-a_d(eRTg1dV}y`lWWLAmE^h`)aLK3{|7rwskcH6$tDg>h^n5yLwX(f* z;McQTz{@d@eVCt==8qAh*$@gsi2;!#gNZRnUm*A%+b;btQuXc~bJi)~gG_p-_v9@B z_m9w{n%{IZJGDM*Ts%KqmUAT7LKG+D>=i6f#?7a41&G6-0@lT?uJ7CC@lVgwe@NJsRke~sFqZdvo zS)S$p{gE+shYy7`P0uvRHc8FNO+8jnSX8KoqL!8+wM)v&@^adCy;bQpe=%=5pul!@|9LNt|II1By^UV@dWv*i%== z75chMd#UylCoI(LUUApAF9Yv)wv3+TwJ*VYiG`p6%hY~=G=J0DqI%RZ)JUU7og&aaO zppUYhbyhYW`)E8K^A8@$J|q&j7vaxjnC1$>dDWDh8C6U^9-NOS=_7PMUhyNm?zXc} zlhHLZ_vmw8w+CC`3Rse9@ie``4myLKQmC&y0DmL)_C7VMqB9h6OlLUL(WySJ&KX`W zH{WV!t)O3=N%@u_?>JeO*rV#wjviE@vA=D0@m3QqXt1uPyqzr}iR7MF)*(sc5wSwmcK5&s!)QhL{ri8O_D0Hr{|1Lh#zi6X`p)5HX6VvARKWjIyA zXbHXUp=;5mM~1u)JWhWl=VWR#OPf$n%M^IC#28g8$qrJc zXIU*`28_Oyp1(JQ%7SM-RBpGt-nw2)9w`=VkiYSUQ%`42e;;u$622mMA`ky=mH)UN zhsDL^G4b{`=5)Lnc+xCs*oCvwOyJ^_W(16qHyYmv zWl8d;lObw1hMJ!9lkY^YW{eDS9S51;4R$gw8K({BV3imYyE5)Mf7b0M{HCzm^7$n1 zi$Q6>&-SjK!?OB<>VDe;Fc{WhAi$w(lB8x)IkOZ{ad#N8uwD1+kXn$7Xci`!bp|l^ z_XZIE9BrSeYIqPzZV0>RXg2Ng@W-j=*|2ND0|TqmYIR4))>#3LS$FcY z8})BEWM*IuxuNrmQLQ=g!ttr0&HUqbJz9tuEQ?EXi=Gr@F$x?4IRu_>D8+mt4t#Lx z(6Dw6Zt1|{*0SB+1N^ViFWTPbUz6}5cBk?G%^2tS%la*Tgub0R%rkpc5&~} zCa2}90hIPFPjDpzA;cVp$dJ+k;@H62Us;GclP-6WV-kM>I8s}3TwiIj{-H8Mr=n~A zolc0_?56_ZvP+lH(c=m=vQx13aB;z0x0`QMG+@^9%F@zNaVQ8LJ8A&a zOT%W_P|%o9Fslv8~sk6{h&KmX#Rk2b>pEQEoV#wYRkKsivD)W2&Y^IjQ*(vFIq{bze*(E&WOaonr8`vrt4CgcuQ_?hdLhm7J@1rMO=EF+Yf*`zU}Ria>-Y zz@DMaFajUTFD&hAeXOM+RHQ}!xED6?peOtcZB)%F84F61hSx$YrdKO>_-xHy$Xwll zTuW((fW&OBej?I99m4B@Y7*JM8~H6(Anqdq8WpV;>MD>51x%y zek@j@)^^H1=*iM3C}*SPp9!fIA312ENgG0wW7fo;5)dL%oI);E8bpym%dGSY8(6jait{)yO+j?By)dN zhgEGj@3Sz$GeY0P@b%gTXm@i#HI>t&4P;N%)0ODVtc zlF$nLz$B&l@cvk%g>?9^I)q07#R5=R7tCV|vU$EwyL6I%DZJlO*9IAIKr3Th+`%W z89^9Gm7%TPm?EXH6#n&-cT?BT#YZJHwmE+Bdb7Rn_rW`Tr!i8w!t6iB>G~WkIC&kj za`*+T=GAjelFt}6pbc}U(B@VNCiyIMR}bGMpi>J`#74k9*q%kONa#==_oLUQm^g}x z#>rLhAP5<>tUQi#!kY?ZGMX&4Zh(9quygTqd*LRlgr1AZPkU&1!$2bdu7NWxE_j|c zy@5ufmWD;z7&KM<=_w=Q8{G;0UCJj;i@CfsJ8|<5@-VE7C-7G^CV>oxxHD!CD4Sk+ zoc{vdq7NwJEBZuMgavGH1B93WA-QR;VEsH(e$M;E z%;gwqPD&RxLj^R_1k#KG0@Ma3txZ062kw)fmC}(T7t**x2mAIkP|Ym<1*7L_?>-h#xb5jQg&7>T z-G_~Zo`L{{^L1NBE#`-ZlHn1N16)Ta$1QEK-;WXR?vh^pTLk&u_}vxI&uNJk?q+4_ zhkzfVMeQSqh%=0HM)=rZZCcO98?$R8J zGBHzu5n+sn+y0NDvv6qY```GzcRgyrMo2h11U5=Sz%fP&G8!Zt9Rd!db99LekOm#0 zq&g4~%n>SJ4OGM)*2n(N#^kr(-*C@8=e(cuJkM**RGNd1VCKaLkp2O3$z#TSpkNR<3JR)MNH;eBRE)Q^IYh5XMypxA!c_x=nK zqB@L`w9=e;do{}A3SuRrvRF5{ip@fESs_%TB8$?v6$ef$~MdLAUMV z>MUR@4|n-Lq$nwOJ(?6rg!DNu69)9KVzcId0r`(J^P?@xtA%Bs&y>ZqqLZ_vjXu@B zYE633f;I#~s)b281BDkipq0tO+uBK}DfE{ONYx9}^8$4REI_eJitjG%;t~IhKy@j4 zK8C(lLfksQjK7>vBa$%%$nVegU*TH^s2N>Mr#YL2KeJ?c5W|bV0S_n9d#8LJIMo_h z)n0Y1t)kR^=ttWU)&BsH8UraB3VeA;nwEGb6J^6k?3pSH-6#vm|2P55c?AcY6|P_X^A(ify-ZG zcGHR+b>S)k>AS_|*S-{OwcM=kRbc9{v{Zyu`?<&z94ejZvyDPGxoTF;F|^0iR9#CF zg^*QXt`wu`ZswsQ(@7?SNhBh?W%?Ejw^FGp8AmM=eDRqH-o>ot8i zqP63`Wm6m1hY^4s$nL5t!(}tSXa7Gxi32ruquVB zLUnN-&(e)F*=QIG!dpUIncWL8$o@1gNW*rPZ@!Oww7ROg3P7nacmA1CVWJb7vS}tf zqz5~`!Vl)nsnJy|KRV6nxes%)2jRj)&W@}wvWU!7p-o2U;s8xbEtS#P>DqB_`tbSe zjx$#2x<5Cei}$_P{;OGNi?W?SuZqMJ-l1N0h7BG0Z2Q3~a&I*ydDXRYbvr@S9Bjpe zl79j$ovM3;u;$maWzAAeR!dn!kpl`^k*U6AChl_?bKASs3&@WKMFNp4%t^z=S>-`7 z?fq3`XL;(I0NDGhWoxLT8AIsapByX)s^OJC&!$MT#I*HbJC1ck57b0tHEHcB*R?8t zg6<7gEYBa$_2EX%2PL^7yG-1Ab;m2_n$S6|z3tV_?%V5DU6TvBg&tQbL8iTyu@?B@ym`$4V z9eA|x_(V&AH!EMGy;e?HMUCFn^GU;K)(DSuur-o~gCkC$Sv|AJl%TOlr37 zoNGh;rQr?BLgoht+aCC|oUQC!!d#EXl6{eh7Rlc>dcW%S;eJB`2F=^MR4#W^PRWA` zq{O5e+3P}CR)i0VfHGY>sPR}(wYi%wZP(SY8o+OfBMzgCnC>`T!w`Wqb$e;BCI?sw z_C#t9jX*~R30M=Exes&lN!*T3*5Qn-L+O_3&xW?0p`WZ`LFb5C4s@`zy>`X))Y?K# zv|8tE(5YS8Fq>v2OJdzDXD~^LOQQE)HaT;2%TP4A>-d8x`z?LcrA>ql4@Yec#k&-( z--WFsj*LHmDRpR{Y2Q!f!*aeF&QkJpbH{YVS{?Cz+pfisa7u1v*vQ&=Jo&qWyS?*EJWzn24#; zVI8`v;3uJzQgmATQXy-YNQA4^q*YVKTJO2A7N-p!9;+c&t-vI+mO(!zbPn4;U>qpp zUn0dgk-07K+|L5~^tsxh4zISEPkZv8{lepj@-{w$_R^bTA^S+0IZaso_O*&bZD(Nl#h@#QFad&|hY+`i zR49N5l3tiFwb$!XT`rqQFa5aA`>Jza>D0&F=MYd%rM~Iz>w$t@j7YA)o~v%*${MxfsG3w6pT<3DAE3 z3l+9bsM}{WF?9Krx3=fxrKjq&uD z%om~=f#=?`>dxoy>bUu6Y5aS{IhR%VI+N0P-dg4RNV!eptbRqW_{mPrlACstHuDOc zZ;-f)yIgf)WqQbC733YONVwPUE3A0ufAQtJ$wE3(qzha)Z&M}OJ9(zxwq3_%ULV(n zd(w-r{NQ3`=Dao(H==b&lXkfO_-HGddJS{`SYMDjqE!uH2L!j4zy?O0H{dtj0!mJI z6jW;E-cBSLGW!>X(HhgHR5B!PT#fvDI0BVn>%J8AuQIg2T%sCcH02b7`qGzHO z2G7_CmIke)Xd}_@{I9)px@b(hNPoXsm}-Htri1hMKp1CKEx*+H^|F-Cb#axjUk^dO zzmZY^?bKYicC2B8GvM5NyuHh;vrEPCFuF6Cw?qL<$q<4EXxckvi~D4L<+;V4C@1tg zea$pNo9_q&&nguD`QyGqO)>fqMqrEY%eo+3T#Q@j4LXCSyLT7tSXRTyAt^}Q-OhQv zuG`w;clBa)qqq-;VbYH;*zUPzyTu_x;H z`vK88=aD+O+UZ{2|Jh~e&NL!`c;<)vE=iSTly0)?kr%T0_db6*8ZfbQ6K%4 zte=FFc~56G7EH*vxB}1(fwY}>IvGQf{Bfk36P6ML%JKk^^}vEIpEGCCv=V;KFYx59 zT(>0J>av0{N1>`)p~4ul6_vDB9db0vxIMtkT7;u&b)# zNl?=xp9IU=nSt_z1;p@l^v8QO$3E5=hn$kzxf*FG9vDV({i1XFWaY+GZ{PVB50glA zqomL1t}`R^KeEzut|5HLs!9oz!e6LzkD^eYQu_r{UE+tjK+uN>zgO@fhk>l-A|Kd& z^Qp_5<04~-$mdasAzNFrjm#T0EyswKeG%*J{)iyvIEjvmVYjLi?Ns96D=P{?t@#rt zKX-CA-$IqhNm;;&r|L-tcJM)3=W15MC%2o)v2CkV`e3(Wd*((#SZF~v-$$En(&^UxKv736GMvzFfnBytoGD;?wjq(UOKgou zCMMd|wKXP%^$mq4B~2x*ZPx9jTGBgcGz}%~;9yd)Uy0vPaKiw%;kcA`W22h&=Jd2p zSg=iFNQ0lvr3M?nMv|Wi)=g?;^b- zBO8eg3}VD&AuQ?-vQb6K8hFnt=1j^qRC52n=K!f=n(WRLc2hLbJ5zCJp@&ziBw;-nu&!Gps@BlSD#^S;lhjYXXkDcQ+`-i=7CW`uwaZii)aJ zwf!UW<>!Gw&8S87={W5k7>L)*p*2U{Fs@3_yr_0Pz-ZTrop3C!a&tV@yGQ}yJuDZ> z8|kanNkUw&n2kmgrVb3ZGC2!Kg69!h_DXkUo#dMk7pwYX?udHxJvP}^uZ}IZ8b>>+ zchB}q%BZKIYqw13Z87tDUlpgAKIrqq^D*h=XxX)9YKhBv{`%b$o15*t^d&iKmk0_f zVNrn1F6``aBcu#MVuotu4U|#+Yas<8wehmX;J89$tKoIa+cT0XY~V z%C*>$H)}2Ih;!y(pys0J(&5Bn_ejLo>??#5`3k1qC>^tM=3O+2~uY z%cTeSwnXS~sD*K1uX4WkGG3)`wVA#zPMc? zwSCGA*^Cp-Q0CY>%vqR7eh3x26XYD`PHd%I&a;k_UnIbtsIhj|?7^4}SL2O4xi){z z2x`AS(NQXCw9j&TTl4%~3tQclF$GoH3A0F@d1i6l-_VtzW27`)Oh2b!%WUj+Y`B;b z^ZLwC*QD-q2s*v`pa^XM#XuP4*KQPvxlOshl+i-veGdS2IPeDH<*QqT^%8t9$EMJg zJ_PBKvraG_yWUfPzZr@W(S*{2xW%(`i|m0 z!pjz9!jC2yjPk)-%W@jk6xE;pwJtZC=8k$;&!QS=+!?KEoA<&1+28lVmpUKxz^-Y) zfhtY%E$QpwgMFVlH_$X94JFYRSA&Dk#{m+`1j9tJH@*jmXnAoQZ*>w!a8{0S-+AFq zqrhPgig-u6$}E3}6HvTcO7SEDg%%V&^ghond-T*!u`1o@G4=A_`T=4w)+5Nx@$Hw> z@=r6oE$1%i$b?K4i*L6_NoRqZl4(L}Fw(1XDTpuKHdiMpr?~@?j({7#euO6bTVtZ3 zwB*G*$4&ai==FVYU6-z*^Nenko_6N^o382{B9xFul+mSA5!MWwaC0>kR`!#pebF`J zY$sK(#dbp^t9U!`$&H=>V-7eOn%T_c;pqT$MHe(+bR*x&x*p&>FP@%WuHEH3b6%Kc zA*)-a(@234s0{7xML>1EOSJ$yg%2{jyt{H+sY)cRNqo9Yx+?Gv(eiSM70+HQTH)GT zC;n(%?d-NwxuF62-<#Y!cc=d(+wZ;ZRXH{PQemX><#6C9Zbugd0aEHS2JDMv>5&** z7KK~-4RB=+VCpyP-G36z51(^XH{2}->_igFEnL(k)yQ)S;{5YXzN6KeaV0D2DJQgU zKF3apQ;;%j(WcBn#(ss#-EoGItoo7YxZ)$PCTRviI@|#Y%z;&_vlkJzssXM^g3)s{_^Pc#2BWl5#}Fsco$kWyHoB#*J=&#uqHZi(P~5 zsqAiCr#6|W7j1L!l@A(I-x@M?U(%hyl1MX*f1~j9W2OJRvL8pJ)PdOJ?RCJ~u$DY} zZv1#UXj{gpdi-a7YXZy;r@#=u*Rv(#$eps|iU5eAP^|C_C(|KMfVRy+jJ8tx_WY;X z`^E#Crl&Qa!8VG8ek-kGys^IpVD`Y20v(SQPn}HcCMy1Zt-VLz)mO+7pA%ndGjjevPXFi+=wJ_hGkeUIrU+fpmAgKPK>o_r!X0DIcmu0015*_CBUumlH zA)dH zO!>xE`aVqX{GHO{j}C`@?Wx(u>~6vhJswWf+4WHGdAV}d9Z5QWF3lwZCdZ&75;sSm z_o?(CkU23s{|6S6X|wHxm2>}SOfdFMiP@JDZ>f`-n4YM2?j*haU>YB0u(1xt8eGkN zm&5w$28J4D@yy2>Rm284Ctw*ZhFdyb>dX3*OLp8R;PXhIg%!%WYhN_=tGSq~c-hGH z%P#kMac$Cb@Z*ke+#h>h8Ku(GmjLl1AT(|cJRf3& zE*(A@sA~$}%?nT*m)1^>Vq>o}PT44~@eb5@qX#&bS~?ASb}biidcBu7?PKGxFZj0z z-sTl93yETiFGqr{&tj^!SE8O~yGG??#|1@1L^Tdj#a%ncTwgOX3Mu0AzrR;>NCPd# zmI)0JeE@>k;-LI&RFi{MSY!j~pr3DZ0$zCshRPp&KgRM~tlF5}l#SmAZ z6~~3b{tBL$9z8>~5dl)9I)4#|5r>HB_SU~gO67y7C#<#Bt&{U~{gQ#c2^5;yr=Pr~3Z z53zJ6;dz5_O45D!(yb^MIA?Nv#CiX_=0;$_{mXuCB<~ksP$OvyGvAbE|aS-mMb)qx_+DX zlY+mpJywun;rk``gMXMmB~MC-*zkp!F`OD%@U>TvKLh_n-u8EtVLc1E`IY|b8$BCR zE%-#AB$Gmzvh+&X7hYtyWjN%$GPm1@y-cGP^txDK8(!#+hvVBWV1JNGX@(FSdML| zP&$K6)WyID#73Je+79UP_^ir`iq?A-`aB0)O&lpAbwO*Nf@My%F5HL@(`8pe#=um6 zP6IbbFd@y3sHt*Pd{AG7cvBMFvkC1ZLgM6n{%0VU4#x7K*wTR5DA;^}Q`oEMu`HF9 zSQ4u*Cq@HvR)Kquf2}fJiUky`IUwSpU36%Ri)y8% z#tm~sLw%(oUFm9buJN)Ay~p;%sEST6#EEFx*9CGgW|Je(vv5|?5NE6|1xp=2j zQ}uGf=+l8Uj$SI^4!a+>$gauSI)AFqpowpq?$q5tS${%>F=e}}QU<7q-uQOUK=D&B z=CLnO*g)Y;1;WqRO+7PB%#$mJ-=9f&85b|!6K@Ew7}mhNRM^#5mDO~nW6xsKuQ>-z zGC&mqa%7FDw#u0MAr;KJ>t$xHvItFbk*KAZGh?gC)0@JftQkkF*^;-27%IPQ`iG1f z4hF;N5E)WIecNJLlG<$WjcL-Fw&!*h0(^_|0oo2_H%xMzt<(;_##7d$5w&;2(81pj{PR30sx*3%D zBe%mhx0AXdc^qs?Q!~_@T}Xrv#37RaF!S5d^k~?20ZLmac}P+A?sARUqL^vQ&N$ZY zZ1w%0KFOA)suWtw?$B?qwBBKoz0-4{9Xs1@OSJxZubVs9qn~g%Yyoj#xiF?R*mMc2 z@PmA+s<5_2%1z7eL+jk>+e5kOeOwdR}Wu zauUKn0aB_#{p_D`vA3me-Oe%9u_dKUjcjdGwMI{u2G7>+0h#vRppGhmSdefN(xhkA zb9?UpS7wJPm>1X?zZIKfieG6>Sz>2ZpwuqLr*J2%%ZQRgmxtsUM0hbwh%cSIYgP){AsGcg9$06K(g#DqKLkcu?j1w zFx@woxASjd#xYCy(>5`oa`|_*fTMJ zHj67}$UiSF{C*Wt<2;ymkCoFp%6WjTRFmAMCDSCBln6BbNzamcRol_*=8W|%>1Y~_ zawjk#x4A=#ETBsF^qu=q&kl)r?XwfsJK4sV{ggxsT)_(%JN0`Lxigsb$lPyY8K%#K zRM~(AS6YG$_ju@+2qEQh6PowMl7v9`J(L`d6WEay$VSEu>4fKUTq-D^he&aZ<7d-P z_4?I_Q`^1T@>|ql1ZJI}gb>tyanCxs9&bJ9*X5&?^=-XCd_X)-;i49df(SI#p+FOu zA@PMXRTiD&X$n%fW3DSO6+uEHKT>>UME@D2D;$p0f_!+PEpJ*&N+hVn{VCj7t?x(^ zp6O!^zcnFofodXWM$4(3Pdn8B>77#h|DIcTc=TQH*V+-6otqFP`4#e0@Ki4ANcD{GMtK16pC ze?ubAXj3eNAE)u5yy%csm~|dhzyjPfzrL-Dk$Ht5jnr6 z>H=XiAhgDH=K^BAr?r<{Ehc$Ti^x9BVJRl%?KH!ApU z*Iji?QkBVTz5V0iY%Ci{oU^sn%$)&St?6^D)7C{9O1Jvw;+v5Kpg)PVe7DBm_!Hbm z`kI*aHUF!`%k0EhQ?i+lcl}+2Z(vZm7xFk;B%BRafWD;2+Z$JV0VnSger~9_pN2A3i2rrrsn@#BX4k=*Gdpyd7`HZrQ+DTekL!;P z>UZmBrT4JJ6-HIq4|r8WLoYH&=4E9m3R0if->`_<6i|*2ae}*guHF2}yBjmDGR?=o z%0@YKM_p0(YX}!JS7oqgLZyzuA8COPn-)nkW+`2=$A2!$pWb1=j95#sr6(hZ^p`Lp zDe#{R>~OocW$ZKKt@E78ueNNLA`+gY(=PTrmDwB zq?!O3!~U$sc_+$C1^j!rNA=*Wi>WXPVm#5wN+bDdD9gj{$0Uo_-^Is#Xj^2FuUq?> z-?(gh5y()wt?vJj>CCXT96s5zprqcpPXWr`v*NzI*}rI~ za_!^V7d5X&t*>(CZly$=6a~QLDTKJ+=P_@;ICp!psw4delY=dY=F1MSKmImuLZZix zaWajtx@pe6A040|0BRdP=i8N^el%N?7vghFU4>=--{2!JFC|D#(Tn3o5gTvQfa`m| z)ntMq^r;d@(-S~z!{pWVLqn|tY<$DQd~E_q+Pby}e4BlJ<6=5H(_vx#6k{!zK+X@Zlhvu;_cyAvSA| z*8CpdOS~}@9X3YNxfM(z`Mv-6LHIuUq0JDb4YTffjn;z@(s+r6v@EJI zP$a3D*2-V5te!NamT?63u{V|d+W3hkK05P&j+o`;?A}?t{;B@t!3M|X_s0He{MX*Y z86TQ_c!{=FJGMuegqm(Hti%*|9g+`l;S4Z)<}8gy#=e;-98zA|86DQexOeFD4!_S~ z#DBdW{uj?*+o<|}wR%@mdi00C(qq-7`ie5A;lamPFH0U8s+#Q>Tym^?da3Ly<8fji zD0AAUI8c%b|AH;w)VwF{On9w((x-vA5jlowSiD>Hb5C7HWxvGCf9_RKJ4%EDk1LcXIkpq>z*x|${%}n znf#-yC`LzfXOL3bo&8HOH&{N0B8OTRoTAi{uFOR>&zyE6*aSLB*+%Be@psa`%dQ8a zE-i)hsuCV;Et^J2A<;R@Ye}XptkW#Fo(>jSMzo+*JB7V3IYcpeg4y4<<5(r zkoufzqU^RhAqy#0v8JAY9?yFHR^M}EtR`V33%$5$q_#4FRbs|@m18u&9=jje85-%K z_*7H-`Pj2R%Pxw0g!E$Zcl1{`)AeL`myGweX}u_ZkdGw0b^xFtsx zt;1ldg78k@FQA#J8j|W~J@u)LD#ruicbnaBHOdw8O-(i&fp8l^F>Yx-@h%MW{O4-~HX> zje3HFVFEthYvBBfEKIh{&{mL+m>lcT#0Ra8`b?bi^$vD44KF+q=wjNurm!sxXJ!~0 zETkJo+s>-*QarsEJo)H3bf@O`=Y8m^k+VRvw>7^+7A^pdvVa%gk6~?pBHdraKf?Qd zA~iGh7$clVF9Ov{+OLaQ&70UC`CO`uf5d?8e>;P66#}!J#3*%*z;(KibrIbi;<-mr zzB8g&T9*;+`+D|cj`KV&4dJ`#CO{sY?#VbiY#f(PifYX|93d^6xL#hxnI-76Sdv^YM&iNakE_CS8a=adjZ5&L zJI{z-DzAM9)x;Dwnf*TK8HYQ;Y=g?XmE?u=bwUk0akYzCYDnsSVyMbtz1gE%)pWdk<{(`Srna{EW2;=VEvZbSe}!cDSEehenn6b zzL9n-FG@}Pcz0suBSARMv&wDO$WPtE;EX)>J79 zxrEp0yppn#0&4isw8pTnuGgfBox8p5WwiJ1Wg1ybb{5ShLp7R35ISuj2@+86e7ocE z41DXcS>{s=_oZ}1x86xD9Vp&=c(&bXxWt!FN9pU{6ThIbN9{Um+q9@t!Fz*;$}2u{ zD#xNDg#AjNWA2!gfDk36yoEo70H>E2T zA9phK3+3ewNy&lQn#`4Nuu^3^8TF8;4EBUP=qbTl_5%;MrXq@7&xN{yV=@jA+0sxv?=It zhOVkNg+4-PSby2cc@wc=(l`*s(s_xql~gx;;1=8db}5_zS0)xAKQ0}+p|0eylq{RH zcZ1s1Oez0wW|~y@7QMe|+hz3)gx@pDOPf10OK((hw+mAC*FHCX;=rI_6mYCmy-HL% z@yYh9-b1d->sVa@ls9s`I_zJYqy4`c(3yqa*$LKC(}N27y|Ze_l3_ws8>00d{&CdD9^r{HhS143!V0igG^TM!l z>zgcR0ulhzBs^Z5V6NP*nHMsq4KE3>bKZxf#Jj91-=M@ZO^vrs0#ZB>PmH{(EiJ_X z#3#zkW0ZtmB5)jFvKqOLN|;-g|J2VWS zZ^mAbk`_dSOjvG%m1HhllzD)L=#W4LwZ&q~CI`yb!K-skbSZ##q>;qX|-SH_yI@*$RU17w8-$;mlbnQ8}I%NX?Yuywm`^!t(Upr%cIMxI+C@Bh;3xJ z1R2x;cD(F?${a%-i)+A9sr#b`w>SG}k)iQ#=@zS0?Kg?HUL~rRG#I=|9Klt7*$)5y zG8OJXe&y8|D8FBv+h`1IGX62@H@R57h z2_6AK{Z6%YuyApWni0B!7Ntt!G+X~?xT0pnRwoDkRS^&#Do`Z$zQwVO3Y<(eeAGa0V#*TTW9WGZXL9bR}S=+9HUI0n+ zUYomvGHb<5FGAIu4o8c49K=XCgQP>O4A*N;f>hQsRZS1)2WREHS*Cc5vPm*_rYhJ`Bl3QzMa{L^ie09f&u*{z5MV6z6SkGhlV~lm_>td3D6=TtSBYDxUrnm?7DsLQM^Btv0Vkjbjmpsv#BX!TD9 zNuH}L3O1L}T)=KfgVSTp2fv%ZMUtL3uSJJ-;8hW1RVhti+K+I%g7m~^*P$kJWh$r1 zh-qm^hCgS*;Pm!kmh}x*aLE`poIG&2q{9QZf4dcg2f*9+NM>f1FPAsPWxR}9T-bWQc^f>3Ihl{O1l$XTX%w_T&uPA|sN>)R|1^L09$s zV<3a~XrYnxORJRTv@OscL&axJd-Wz@&4AOw@b}QH*8e9=VRNlz9DQuXcEi1($ z_Bh(fwZ;nzm2gu!d;Mgs@Kj+>>%O`iNHA$Z)Si#+ zw_?dykYT0*5G8~?XY3sjpz?&=AvzE)uXLb!K)n~Z{U2prZ}3z&B*kt2d;chE2%8%p zYOmykB!J9bN z;eg;@!vj_A+vw0%b}v$3D9;-4W==@lZ`UCsss!?3N|;$S1p=;Fi9M)6t^xUBrS(gRCg z6{oRwJnT*Ztm!vQiwT2R+`xz8;Z=xXJ}Q?JYFec|pC&4kfe4jeROOZ5DgHE>2{)kukqjS!i{pf2G zA;(ko<2aZ$evkXZ@f}sYT6DlceG}55!$np+i|UF0)C>xxT_WE#4KpVnymfegA2cD$ zh0Y)IW`YPDY={Yx!%ymy>p5N&cV_zmJ=mPuq*d!d6x^+<(W`0lRLwpU`zhC|$o}*7 z+~$4Lhpz$u8^X%5Wd8e!$|DY#FNX&)Av9gumKQ1Q2Ptt6g!Wj9*g1x@bELD-ncQ>V zUOSMsG^qD-YE~wydBw9{1>W`U14HNiz2K+XGc~x71}-(otb_*)xqG zS%1F-?xHaRC`ql>#>IU8ekE{Ml?pRP7w9^ib(LmabN>EO+8$`WTWr$_3iu5}a`$W@ z`lQKj0hYl7HS#03H!Tk1Tt(xglmQ|fMfO?jx*anke}1a7bS}a~+nzGrvTquqPd{gX zD8Woq4WfW2`jJSVcR_7pc%IB)A!W`_$JcS{kS!5&`q~`H4WzgO8f1|7pns?N=-%Q) z_-$Afkx&6#Uc!Sr0r=W^NJ%&j$J5+barI)qP_j!h!ciUebFx0)q?AkfJ%4VEw#lX*YcDo=}Mz-4*l>SpC?*) zviOJ^xPy=_E5cQ=JI|gKySKyf`9VJ_c&mRpbH{Yy^P1l8>4(RhfJw1l#%jm=#hacU zmpmVf{ri(Hf7M(6!t`(+Kw<8L#i#(wh?m_yJ$+a>eNsc9rNsctAE#o!l2k98l9M~Q zTv?!S-s|t|jBXOF_YX?%v6!U*^rizK9YC@g)O|X=rmi4yh+~WKCJgIP>NRDwTVL(9 zOE!odf7-+1%fGGxSO(W4sa%5>X-o??sM;0&M$`HI4Ut)XFBbMh0(2&WyXl*7K}4Zk zo0xd&YSEbs$JPA;aJq0o`uOiv15T(hyVq(Du=JK~C*FHz_+D<%7^n(n2aUP1;koz4 z_(9;$->7;%+mV~;O@?`&2Z=27vmR_szQg?@5}FL_+^%eN@V+W=TUuH9&x1va`BU2L zXUl<29#^ryQy*+6Khf{%-|;5!0v)_TL`E`D(hnQYg&J8*9M_~z%F||)URqc)9(~$% zE_%mP(CEp(4`s-&H#xD7!-JHlj`jce(ZM+2lJzTcH5@0DYLUa~G>KiG2w5ug_;>Ec%MMPp9puTY@+*PP#>b0pe67#a8!50n@kMKVDc1@21Ry!8EDU=T;_jg{!m z4#V5&rViIj7{XbzUbo~EiM%&b!eKM|Gm#Ey^k3JnYMCCx2TfYad!{K+?t>xL0|Sp~ zOfWFQQTjQC&E;Zq7>HruVHUl8_sT<@;mp9z14@qh1rB$vyPeC;yrV>aha$sGg^zIj zk@|V?$-R3Ep-Pfv2Mj){whaSMl@cAf;9nseL42k?6Yp4rL(6` zwYNLv{5P*?;wb2mCg%EZ;p6kGZ zDv4Xld^LH8@n`r^ovzU9Lx6$B?6rZnYHAOXb7p8Rn+KGx&kWOV7cyWY0Ng6^lcfL%EuSLhM7wVHb)B?KsY1sGsgQl(Od5m%$q*U z4bT4-FC7|}xcT`|<1eVxq3)l=lLrM{RmSF_&YkmR;ZP_5IkI41&x3#8l!;VYMr=oc z4|u%brh|KxHbWoYs}=^J(`~e=>YD16UQ{n_uS2!^@*2__N=jH+cXWrMoT3HVu~W{< zuCLG1vfm1g)j_z@XoZC|S7p~7JDRshC^ac*VXd&L;0cuPR0xI=ajj{a&602` z0-9HIy61b|xJZ|VCaCYGacTDd_3s|0XDgh?V-Lk?;YL2M7c~Qwg)%P91}rLh*Iesi zcF%L{Zn;Ib5PxnFZDQZOv9dL}h$lyxpep?JGOP@OSKW6t{v~*c&-aOI+qgh_dNFt5 zf8Samau}}&rl#Ch0AHAdfy(dww8N=8^#pU9xb(=5V^QL}IhH(51x8jgXJead#1gFe zv#7(B^aXLYgHLg&_6Mn^Amq@=R5H8N$(_NX#kF~*Lj$Kl5TrX6r)ug_+Wh+yKLb)> zt@I+CX3nN@#hwyfnKDV67itTHlmQMTmCli-0!noLy`;jI+(7-}Y!)n;Q0ha~bJ+4K zO25?6wVm98a{wXgYvwG**xh?pGx!ksM*QkV?~Sd$($F^oejH>4C!4>|n1x-!NGluq zD91js&8B|8iZ=q`I73a!J*xC}&7n9PgtwYDoQ8N|!t?ZseDDbpSZBAO0i z=Gw-$77kp=+`H?~huGr6?Jv`mBvmz8JmlZFVnCLFp8{o7DRTx*aQf_Q^q7K?#Ve~u;;}fZ=SZSSdH+ zX(%SIAUM7ayqN1X_lRLb-3<*{ zoG9#tw;p+uL>S)v25CZu;+2+aH9qKIja}QisjRb8p)wNHw`n}zn+y!j;I@G}md*&e z5Hb>{8-$yIQfXv$eIcu;C9y?dR0SQ9)oRO?6z0lhdj-rN4*$i?|qhWR1nz3{94 zLiF~V5-`Lo6Z_q16Bw-J`?R4MCktIn-^LVBW6`DpH6u(Yf6Fa(b_At6RH>(%>j z;jhd(RbOV>{aoh+*)bsWNOv&+taq2Dbw=TsCnP)L#9GdG$WIB5+N9WTeVWQRcOECF zDq1O;m2~~da8aG(9HhH26FF(zFN@=CRWNzDiH@6CDd0r-Aci>Bsq~^<32%0d_3*x3 z$B!1E*Rhi`wdOV9c)j`feT0Se)aEblJKpS$o*R{A(#t!WqD?!>tE2rXG?qu}mt7Ax zRy-!NWVLlG<$^-xu!(cKHMPBRkEbpw-d=-kKRcTD*PWOA!Vgw_QVLvncyy=0sr#S` z0GG)wj)8Gm_&f$^OXXwSEOhci!o_@f4~fmNUbmd}3C)+Yd*&^aA1b`T!^uVXrB%X} z$IW;x`s&!Y3#&JgLFN;KJsn+!IaEq&H;Xs9XHOMm&w%M>DHzgQ&f;8FXe%6#D>jo= z(dq8PxA5w_KG`du${<7=P2FCGHoXUme9JoMXALQvfCTBo8K1NXy(oRUHU16~p>4TE zu_@*XvR4{3;_3j>57*#{$V2ZM<3|If@59|Q#zgfR_(Kdy0!x5_5oayQRIwTyLk7M^ zm--qmmkTYygR|^WQNJG`KU4BDyag~fI?Ow<2c}N`Og@8Qn7r zPT!sBW!B<|#9inng~!n+`ycOwA1E&r6yXHx4b2zzjJ+51?Q%8X*^d@IztKqtrV{!$ zA{wI&6~Z{70-Dn@^>F5~%OSPiH?KR+5mIC1Fl&Rh0t6|(v>n<#$=I5=TbO6YrW#-W zzIJ6sa7S^2{~MiCy{VB%1hnb)s7_XCH+{*w>Fs{hyo*wnn@JJ+@CU;Dy;>iT8^C>p z#GnBgFj`z4O<%pE?jZ>3r_Q&2X+%sKOoy{secFKR!FVt01ha2a1Mey@)R>zVLFPBJ zlUxJ(`FE3mieuM59l&iq>MX)*Ud(ul+UhylrU+>9ZmT9El7FF6S0do4lUT#=?Sd?` zUs|8Mz8h~N!lIKzC@{3SipoP>UF%m#hfZ+(8T3O&l`LaBX0a?I`P4i2(J7bFfv}W6 zUNYw?C=#y%>X%_*-;b*}O3x$*cojV@7=!+;?SEy0GARB#Lw=H`d`9heMQj@fX0`aB z8BJl8AvYV(4b(?jFz>-m{jtx$aCxIinUZ#hN>}R;H8vcPX z{L&4pP4>;SRimz;vOgw|FVZDP8<6q|WXXA3+BahC zk`kVOdHqmZNoVp_)roge*X#`?-Y#{vC!i~~8%^Iz?qk~NjdS!3r*kiS`KLM?EK5B9 z`zmED2-kN0<3)RR`a2Er_E9adfc#bY_*o87ygw1I<0OA|>qkvkFdutC9ntrH6rG1Z z)Q=y>KcCNS4riZz_L&{ok~6c?*}KjjsgzA|XYbCY(8*5el%h1wDoS;PNCPcO-wq8; zzx(|Q_qcm}KKFXRUeBlG3G#`wvTHkrBnFIQuO+&v$cYP3p&5fzD@zuHWy2X)(sL!^ zT}Uw0G=>isN=_DcQozhWb}1p%dEbm>vkYxdO$&K#WN<&2eN7Vl zG$e+j@8U4+Fun&0)?v*t3DDcg*g^7CZgI_T$O-j3JomS=n zsZ2Zm8y2%!%BsEs8G00v@Y&%oP<=_Bs3`t&3sNSSE>gYFgcub9uM&%22IbFk1^QjqzFLobKF!|&dXJQP#t}LcCE_b)NlaFH(rTW1U;T5A+T2@_ zu*j9M=m@iaqNAP;7fGwgb4TK24u2v%aRJ}wWU$q=3i zo-xTL&Q%ZB)*=VGQ0#G+-}=~V1DL62 zup+wXB2Yd!P%K1oO&cn|hdyKBm52%P!cIfklBJoVRGAw$Bk|JuxR zB)v1*6jD*dK0uCJ>yoa~m4NL4hpfnTZ7wp5Xa!d21ZR@RdNFLq$U=m9* z>tj{H*GixCdD+;OMuy|Kk_Xg;^Pzo&Ard4opPLEP*d=F^g$2`RwH-Eqi#Eh`FXG{~ z8oCc%3y-9P9uGbQ&t}EI3p& zp|a~;Nmg@u_D1Zx84XSzaO53bIIA*aCFy8#$pk8+E%<08By1CHGZh_vOnFCYo#(Sz zsLF{vc2g>DX83zo_g1k(YNCG^B z8`Ec@4ENS&(Nq;u@Cdo~mx{BHsZ-Fr6~u-&#EW)cKk`o*u1W=baF75A=0--uQBVW| z`0K{G4s^WHzWSCKr%NiP`z3SEV&seSeco4DhKD8^|EvfqPrE&DEuSqaMskfX&Je#D zBpT_ap=$Z11@A9@U~^xJKCU`Rsq9pQ*{>nlIkCo9<5h@Jch`O4s)x<9Ec|06}9aum?cthaeRh z(C>*lt$Bd==NG}7Hv`$r8d-U^9qI%iQCdFxmmub<)KomME_o(nnr|6iUW4~ZbAw9v zB?-nS%~2&gr(lW%!I?E*S-!4~giHATiqjvRd{&4|&6C`rv!T$E_P7-0f9(V8E$1aHD5EB`W`Wx9F$y@?l1! zMKWef+Pnxz4M4@kp^}9WymGw*AbE*dc+*u*^I z=hGBpc$KobSIGg2b_0-1SlAg9&%>ul;t{k_iX1cddf$L4!3!FMTajJj0XE9GS%U`UL1UWLha2{&^@Gt851 zX}%cV|EVvEq4Cvy=pVeCZq@NfE0Lkdr?!TFkb2vl&rbAD$%S5lA2&xu`&)&T`p10x zpSAXHsS4GV>RI?{ArwXB(mlCjOHcVR&8(qQvL&djL*@2*7=<1hF## z_q{fXhX`63&F}`&?P@& zQ|WnQH)As=dwo(j$Ar@(^@?EA!76*PkESm6mgd#r`5|QN{iKVuw38+ucHc}RS`);^ zZ7s&XXE7Z^#QpTqd>k;Gj7oBwa9O41)hf9D ztV10mg?hOYwW5B<<(fdA26SgErl?uasr2?~B6eXP(4A_hxc*U`hIj{J)|m%=tH@E3k%p zQi}uEi(GU4QN zSxeWuk*!X}PN!MCQa+{WThchwbvHeTrJnq-mO=?1Z0I=C`;XoG_=?Y4B)A|99KZG2 zyZp*j;gy8>*Qx;twK&f&k1Tf~vi3E;|GeG(?L@Yeb>m|tJE;)K&np+7v5sO&3Mz8k z0=SH!zfLc|*2|AGL!3J-fm6DLbnkcVe`h?xjGy|##PoWk=Z*-RK?tUXJ@kDKpRYXo zi}fr`?xV{>WXBa-&C^0)o{Z~CB{*-wL@Zn2SFl`jW{5?0@?T_&Iopp zS0CJX;q#;M>UK{Pb4BQfsvhr5#u5a<(yzt7%=cw%96t#zlYu>3(lD05UHR@_v*Xt_H?5IV z^aok1Mx2aVm#T85X8ie1GT-lum!^op99@;O9;HVH+_6xl(I9yvv}+g_8*OoI@3*5 zD5?kS#4Iwl{Uh>B0pt>(B6-4!2KX*i4L85~Dlt7Ebzb$t*hcW%kG_AtSQ%9c3k+|= zaQikk0%>k7lD~nh z=UY@Ca2`VM+9QLJ&od|}EQCr7Br-Ge4J%JGYHI5;RndHB-6<0C^))+aG-P5*;p^^p zx8W0IxrnLMD4Hqu-?(9Rzyb-gkB*kLm*F$Wm5@>Mc%;VAe=_ayc+R8liHG$w6$`bc z<>?x=Y5kU3nR;;$ToILu|^pU z5TC^^-mrZB(LX!MaaX^FMPOel)vjPUPA%rlZZ{%5RF$&Br{_)vJj|2-)3#VO{$hQb zzs425gd@L-$hV03tEk7i_9m>h)c1Qb=7qWhGC>55*%wmgkzQsF*e&8arM%4^%3_f_S=+O z7~>bm*ri`l#|h;Lg^reM9#%qT@TFELP=jHG*)ekng)r@&3ony8$klQJ>Hxgbd02c( zC2hYS)y=ck!Fo|arXkLnS5n2nK*x0ea_{eCj^GKt!c3YsSJ+8e%3;8MVd8#jcF(lW5?G=u@f!b{&5+ z$DX28pm`?(^bBk9C>p@VVMKG>F&$v7`+0}3nj{cS#N)^?5KjisLEM#I-GNmq0)41+ zEMFnI^I8|+Zn_7fBtfQmk#|%k+th-J47Y0eb!nWD?i1`^7x;25z%uOo+q4Pu&jY^F zCHmh*6H$dH2>w7DgOo235a5oKq^1vz@r%0**-0_tgyott*<2D)LGQ}uKFPuWfzd|NWSN)IIyJK20n%0KSq-)DlR_q{aD8|RVS+8%#KJa$*#vYGh96|TJ@s47Jb8fjg*T%+M=+OsLg%~HFyJBKQuh96<% zWYgYVLW|tZnkq5)fszs+*l$uM(5;49vdpD)f2z&T_Y`FB@ge@#pOl{eBcU`IOxVYC znE`#Uqp>y81XLEWF48di~tuw*RwT2I)B4%1)ngYJ_*=@eQBDIKS6Ao-5Andq5UqK9m^@eK|a^N()c8r9@91JTul23bdW<)pPbm>TV%;cNi_bnZ9H z8a}km>m@LPG3i;m&&hPUsC@@{>D5@gqG-MNOq{-Uibz#)lwXJE4azmMi`AE4>Vi8A z#t3tN-+2ZpTj&X6>d?(qyV?TjQtO+xsU}NVI8t6yGHhY+oTu2N1USv1YIu*GmUg$#f5?st7OVyq>n9X2Y)!-{=3Z%0-4BA!8=5wyI zt1^4qcZ*lrkcA^Ca5yCextoS)I`bU`OG)7s2XfHonULbi?1K>d(y{BJI}XcLb1-3T z^_sNZ)jURoE{e&lIAd3^pgOsvvYnxu6dBRE{ z>6DjHdZ*7FrMBDqS`VJ68xIuQzCRf$ujsI4MOO`@Vw}g(d?{R}4y|0E2EQm)rXqT8 z_zUjDkx<}Km|D-RYpvUH2LW9&RJ7j(p^|5d_GD)Dt`Y>VvutH2SE2{O=NJ8;C>RID(vGH@bor+_ppb1URDsOb*WPfm0>F zSISURYF`WG?9GF>HpW%!xG$v~miIVI6}MW`kOm1uScXZ8fOLEFO+D*7d=a7!9x(nQatQvjF1HZaDXZ|V-i`oJd0??4MSJvaHl zE#VmwHE(mV^%OEXRLZ-S^<4_5d*3;XS_CJM>wXI##Tob;@`O*b*IXgtSXx%?09^^g z0$mf>Qi0p@GJTR?ER?%oYAL|)lQ#ZGrLiLa{?T>R_D4Heg0*e{n13%0L&6e5<==am zpMN#vX!L3W;XoI5UAp7uv)1HBFB+Mzr6nV+cA7MFIe%?M#`zAIAZ4$QBLA!%?(L+% z&tPYUcl)oME_FNh<44w|8i&KLdlt7(qc&ew(?fiY@52zY~!QO!)J4vmv zeqnh-Nt#idoboPD{1Ex_zm4C)((W}t-l3L_JCS634M z!%3-h1Sm&wk%BV|uM}27@cvm87{sRO|Qj+XP^r~o4j(y`7 zT$^3mQb5156C*zmptudQ;hbP_K?W=B+|xAe0{xLVeLcMT_;-{;9N{RUh?$aYM1|XQ z6sf+^G=*z%kQi3oo-fVGqn5FsCWHDLQG4>H*}-oXTR<6x~^T~Vq;L`ojoq4$%ihoD!N~bx zB;cxQ_Mn%lMtC2VjC7Z-~$}T1Msesk7muh5t0ij|F7ehhgYc0ndXrYA0Cku*C3I#=eph5u1JGHtlZl|eJ9kH8Ib2uz?1rEz! zg%_qAYnxRwFNbk=yRvwi88Wi`KBUElYF7`}TtW4HfKIYemTi`WYov>IMQvy=U%=Tq z-b~;ZQ}81*+RFKogpDk@0ZTb5b+bt6_(X^oHOMRtj7MZ&W zS~3Aip75_vbr9bELZ!`Jy3*{U`cj_Y5mM`;`ovI5H-GIgr4$|8Z zd4!OU9tR*&mJO*58D^48?Pz76sej77obp1nl@T!500dTq_1|ZN3n>7kMG^I+xD#!U6!O(M=yrlv2%GDwa zl?CvV(|vihTt;gRGcOZB-t(s&PKD`lGj#FzXf{x6Z)hiT#)@_PX08%1;I68TmE$}5 z4@B4O ziFHPDkbn7#U2#daj6nQXmgrK+jluqu$fL>K{dEAGf(L|>5fx*wfF<9;DeS`vX=fP5 z-ADR28Fm=J^QCTs^G=Rk`##n9TRQ|~W#GOCJ^EGL8}D0@aBJdI?Gc>X z`2xU~IU4_TNB@ho%?+P)7@rr4RX+W`-Fl1p>n1XqgS57}i{5hz20+kH5LF_`6G#VZ zcaZ~I9^8+btg`c`V&Yxw1K%QQ*@!(<9U)wzECX&!2DE@YJPW!Ieb&zKihwp;=TF7e zD9pLD)eUD`rT=t?uq8%VM`z5Di2EwmYe(w?K2 zJ{%ai2sbc^Nj$Uf=p5yejn(UPX{ZET%PUi32hRzjhovYqu|7H-uR07(r?v6 zQOM%$dw$&*fe+D~3F;vcjIs{5Y4P2=DDH(i7UzjP`7m^c%N&pw_AB#f0i zmzHy8k@i5)`K{RA^Aa7VptM22*W&i4$#c)^pE{I3N)MX*7y&J8&Bc=UGH8(uVE?<@ zN#P_!q^Id)`r&U=vkV+efHpqZ3hX6aU}zxp2t!vta*Tg-q;3uIQ!&0cAj&HJf_eT( z47@&QLXu?48-p%So7@b5U;OrDCHDzcg##ioEvL2~uQ( zm;5HlEcm^3Mt9h>zQK!UGJNS~-jOU6#L(}-BOiR$Y-nmp#X+r z=P&u%@2oC=`3YK9ll)&M3!n}-9PfE8M|dE|-yqxFSI0tq=i9-YJ~C|Y%KIia=E)B6=3Stw*SAm7ySaw_^bYckevf$iphkb~oB8TV zgPAw05gJWlK`V$LOTlJ)8X`*3OqvS!>TdM911QAZdK#HEv6oTL+A`m@u0>cUJp=@4 zP@;sNK21k;3370U=5@b$P!JnxMqa>wghT%!aI5b#4sS?)z%X0nxJbtfEtUkv{;!#W z8N>?X_+E+R#+F_?_x!TU!sSg_F0%)eA!1iTV~Df)(j76b(u?b`a%dJnc4 zY*04N(R}HC<}J`p0emK@aD~()j@-FavNyn$4NZmW$$km^XV8yltZOelVJtIx1jj@s zVg(UiBCK-nxF#7Xt@JcxC>7z$2EqTsvbH3`FhN3xU<-ms0^`u>KiX5@KC?^Vf%`eb zViyUBM#48x86nO<=yRc1+%a)r(_8`IlS9hobkpx_op$!z$%}Zj1DZY9qaHhKT8(Uf z)BZ>R?VXt!lAW0r8k~Iu2_v}ewsg0&vBcEYVfbVk%muJoSOLLS1uRobK+o1zLEBtQ z0Yu7yaB~HCsT@*PP}&icle})8-3agJ!zqJTl~Gn?tR6y7nxOc6@x==ZO&Gpe0f9u~ zr%+O#KINe$L?m|5Up6Ja|JXK+_VzwBb?DEpU~v9kk$|@Koz_&U?Fdt`!yBugSd`nW znD>w5yQHbikCZUHf=|5=CIZRC5QuKpAf%xqOr#KU^IS9}#Hu>kTUMv}1nh0u;!BW} za0uVYf?g_P+NI9P1@A_!5wk()$Gm)C_=un^^1YLF{(e#2)sV?N#oc)>ps><;a)V+n z9npz_J2a9&heH^}or?_8w&H7yF^NxJ#qG_K2am<27R!49c$lvfI=5$)Jx5r$SvWU$ zFNc00TQSRwK$aU!+;~6RQhV7*0CU8j8ZCgMN-H0F-sh-Hrd8}0@QC_5pFkg0bfv69%5u33@N~rTOG>A;Y(gL^>@mOH?MuewzwRBJ_~MquY!rw8$+U zNsx^|im}N-yWuo3f2>i;96p3_B2OussyHMW8E5E#x9_uB5)IuWY-5<92oR7Z(X;G* zgjDzf{JFr;u)B8F*CBUfds?HSm`lGnyeirdgcTryTSW;8dj7^{Uva~L;HvKwuN8q4 zfE>aYZRVTUO@E8)%c24zzk#qEVedXgxCDk30ZPbdvj8H$r_W31NwmRK!*f03x(3nc z?fj$@x||@yW}iwfWWb4gmHG|M6oJ%9JX6WTQAs)&S4ah<>|b=wlq#TsoodJu2S9WM z2RF6=q6Ey!jw)@Q#fM%D9>YgdmlqUWBVtcZA;teUtw`o1%b zqGr}@(i?hm+}&XJ$1(q%@OPtB+%T6g3$<^~xvpZofRB5rk)xy+fy|o`eG>bfgN!)x z-L~?c=pXGkTAXZH71;cAVItE0&qk-*ZRgL=%006FO$DJ$dyOj*fj8jM=jBznY!@7r z!v-2FgaIjG$(w9=NBeUtP#vo@2KNh(9j}kf(<6iA(B=EU;kGexyge(NEb};(I|3G4 z&%V(xj_4zU2%O#uVUGStN0V?#ODxbwbZDWf+TJuX9PP)XNk5+l};Bkp=d-dgD z&Z$gX%jC5E-Q;oteDo=wDL#(2^H)Hgx>*4p-dzA|$~VM@HNaP9I^NGalsr?Mv44TS z{w@bzmRZN-4d000U%6ksOOt{4Cq3DO9`@Z#`;-`ELJvw8X{k^HKdYq zA6OPxvASl>-x(p*jRic8w zYj?xCJSO18gUZFDUx$Qx;z7wynH}TxA5Pe!OMnJzXh-aO8$}{6?nhKrs=QYNTw4*4 zc6hySI&VU3d_618^NsOc6Ev!o3Bg%pXZut#{mOlqdYly^&aun6)g2Tf(J={R=%7hU zzCbHAEFWbw&o%DVTKqBm_>&yUE*{~&R|T=qlU>t zI%Z2SM-p%rgJVvPUcZJn0J`()sNa~OXo@zf)AW&Tkdfe&p(&AJ|}f&TbBx#rZ8Kk&uNnE}aD-lOb(Zo`mR&)$7h~Be^sp}%ZnfFwsT@!Q_6}|n!eZgH% z`%Z%)WPJ8d+5v5b+wq@Dp4!wQOn}uBmk9S9DQs|8?|ydIjT4U}GN(cgVUNl5i|8dc z#b^0OM4r6spt&hM07Tb(z&F{xPfDXe&bH*(gI6zStj)gsa(#Exla}?QcJX|l@Ad9q zKMx)G@!MW3s&6HZnl0NGO5^P$q><(M=5@h1P27<9fw*j826HqZWhmSxi20Ygqj=Kf z)=QA^$1Q!}Ba*NHFwpV!T~bPNyAIJ&-b>j+f0(YQ<+KCFoZk?^0s5!pZ)keN~e0x#001 zyXUxk>s0ikP1u=@eZ^`*r>~e8+%pH2MM+G-?^$G{B{=jIB@lIJ3l|{D^{ufv;+q?E zBJ$`gC)P1nJP`Dd&pCL*C*rxiV^G`4FZxGqvc=JAC6}1juna9(QROX+Cw7VMrdWGhAImd z@YSleGTh(WyjI!6vD$Pl#5^$DW|n;N1HxxL$Minx&{~_yCspX}cMr>1YGD7-9S@-% z@YqjM(!6BQbqe)Ga?YK2-{lYX=EUq<>NH~|j~hm?Pn2BZ?pRkNNSy{#BO`>2(NPqX zA|>xSE5w5w(uzn0d01XOUR<$z#y%IU8u>C*b? zV%w?vsJdiM(9sV`&yzBq7-^2qABizkQuuLPfoAiV;VCvsy^-uXib}jA3X`N2IbT6O zXBJVp@%hz|6Hex%k;9jWQ%U!H;JIL)ox%3Zj_c5~;#u60my#7#orbOY;q6Z|5>g=X zrOG|R06Gp4&xY+GBcdp!&+z6qNf4Zbux4i-#;2MU9Q&SQ1*d8FD=K_)JAKgav?@^3 z01KAV6Ln_f9=uO4zFt$hdBT|`+hv@4xnDi5EivMrn7A^-YdM5#C#c6R%0(LQ#^mPR zOPc5?PuzW!N(St?9=fLH%3Vh-qAGr{5AX)cMyyl$s%3BLa_UEm*~YY{d50WmUv1^# zk#m4(I6rd;PKGoDaZse;^qQECmitm>C1C|xvyouMtjT=_MSY>pMTG< zA+ewc&AuW|1VPuEEj3YBsUFup;NGxFIeFp$g8#pS(DK?tNl|$%?G* zg74ei!sn@w<%Gy47m!|oR4Hfusb^zJ=pYWPZwXu6;m&i0eUDO4y?JR+M1R5H$Ozp$zrWDY`uaKzL0%N6kfd`Rfde0>TPU! zW_)m1^;oKKq$xaKvDOY~!m?ZI-x@7Q?5z#edG#zS;=S1HR^hpVgZYW)x>8F2EEIVO zd#Y%(hx*IVTPjl8L0jK*C4N!SEmjNqv^*nXoq>|9Fl->#Mvw$gy-6gtDeADmUEJok zznXn`7~XeSA{Ekj-eXPS*Q~K|vQJx|2Bv@EHkk*YD%H9ebS>Y7H6pQ01#Gz~&I`ON z%9XNu;r1tTKRF0K=?}U7yw$&1EN;TfFbIeY0eVe@ykvN;z9dCST`)x$w0C9cl%t`4!Aqu2V=}~xq+(U(qZu91m zpr#pm7Xiko^}ou1ezb{$_r$5jXlEK?+`DhW-3)ag(H>D23+aeo0)J$GyPObUa>Tr@uj-^Rh5^) zqF1Cy2gduV=yHfH%vu0|7mmv_ABvuTD7v=`*iY?Ka6&kBhkztN<3SH=(OvD#0SB|o zTSah#2N(lBbsUo=-3#72tB)hx+Q$+P3b^d z>3AXH9O7AWOx@#tG{X~u7mSNs=mO5ZYxr*o>U_u(Qo@KNe$TAj+f7`7#3onc`gbK^8)V6>^6u8JL2!`?c}zU~aDjL1xAXs2#&qDWPFQX72%%@f3>GtX2SiC?AdD99y z&Bvxi7eTAXkEcbU&UUDhf=4e(`ZLA-DaZfSIe zSz18`;buB;_Qo>g&4DkPAOfrq*-TjIGUOSJzS@5+liMPd4THKBX^s)}wIjIw-sv(A z1Gh9R@dCyr1}@vqhk>kiSduJ-!@m8HG1L3O~blkk2COwA&TWjx$=bnie)O zT6Ffa1|XXqpVt2~D>4Ax<*@~6ND>^iiiIgJLAoTgE}oAf&T8 zT!7yVw2y=AnI}eLRQ;Qu?u`dZr|Hcx*14@w+Em}iOZvMi{TtRU-1(3`aKZJG@44Bl zlTyc{v*YfZZ>}p@xY&Rf`ec7<^Y_DC+j>ONspmOa@9cqmW1!~LLfw8OjH>}-E}VI} z&=hnald}+>GS>1L{e|LCmLXnrsMd1Vge88ski&~JhV_Alh!#P zU-<0b)9fg@$+DMjj7C{;sR|eqIzWK7{=(fj8eboYYqDPdk%RvHeGUA3&BM~v(>Qyb zVAn7+e26Q3kROF7qsYf~mjSt8m>Gie+GENbB z^~%a6HRO-KD{i@(WFQ;nzMNJ_VhrK>Ew> zi-U;xy$B>E+%e+p_0HK4dkvVEQiSV$g3^#wN72WZ zUccwRQuYc_Q?^!iXRYMUTJ^s*#;etmgVC8xl`M-_U)*0+!AGC0E!bC2=V@;5eNQ$M2@uJ)M-P3%kK{LOk{GoA+Ma^lqJO2bBKi4dr4fq zrgQ<{FzpHnF^YxRT~-%ji05`Tk^QlM`yS8qf7ZDxo*G{NFmH8@*Z5*hZRUJpzuL-- z`}l&nrAR{m@~hsinye(c_(_eGwVvH8573nXX{!){!0klI^rPreEZoO~ql z_{kLK(b&DYdytZu;)|EBUcWNaTzdQNh1s*UkDoFLiUdR$G8ictB1x7)|CT`i-Igerf&ChJ6r*p-;|R-M6iuZ8=E zy`3+4P_y`2b%Q3uRKnW%rTe3vpIM&E!esVprTVnrb1s}F5#uZ8z+rk?yCX<0thd=~0Aeo*&$P}Jl$Sojrj?WHPP0ffwr9na z_iz=q6lospYInx+^Vo&l%^#&7exJ9gaJwg7Yenw9MR22!Toe`}-T-n}M$t;fBC>$o zHO|bp^%u!^VifP}3q@XSTH+RyX*>4f?_O)~NRgP}pVWQ4Njjgyk_}FZtAGN@zQGof zJ6Ps2LMVEko`;Juq0#fnqsx4vY`Cb3wr51WCF!v-hXAD-O)7jA)_*RdF-j(bLOOu; z;XMhUtcZrw65IxjxoYjA#Ui6&8d$0=nC(!PbSq+Vl**ZFnvTfxKRbpM(Y?J^FT7YX9 zacFUq0`#}XJp6Bt@L_>1jrLBbGq&)HSJ+wct}h5(@pX@Zz>8O|P@eJ?({Iq?evabb zoIHEnn^BruQImy4oY)>U*;B^>E=w1B%jjwH^|J{GycJSPQj7tq$nMzsFG5IfF*a&U zV?(GOJ@+;7xwUgD#isSk^~^`8rNxLioiW6x=X%o!$A| zsZfuldvkk|Ro@tL(c95-k|QEa<&f==*sfu5pRY7{mxf?gPBYe#VQr@urjdttE6}@# zcf;$A4`c#XLm*aBQL#9C&(FzG)3M)02flyj3}x7R5k|!dUR(1ddfGSu$ey3_Ra_U= z6c^xMti_eh`IJhVQ2_l|bMn$nKXnSMvL%UF*tegi7|dbW!i zIAP1;kg?`_!n@#ZuaB1Yn8#5D?_;SYCr zB8OyhsALJ=&p{|^QnF?if^kRV4?sP=rkt>&!ODI1ND|w6M~n(T^PHyl!29M*YY%YK ztbRg*JYvb>PqQo;I&pp<4be(X7U4F2Y3hSeFt}bdHn%?_ zjXON~&CEkVmj1Z}%_teia?apvyJ4-Y9jlMyge>Cd5dL_94f+)>i#Q(#l3DlORwcj` zXgVh=o3Y}Oac5--OgKZE&i|ggiyhp-7f_d_?aCb%Cbk{2h_hnbvuIys+2|y8w&rIX zQdyggZ0(dC%{gxUdx?gz+0I2qy$6;*vq8i>8yScw6vD;@85l%>DlM0)d#SWclAqF{ zA9VRHdwmUGHfo$ZGS(S|#>K7dD#QUwDi}3|0;_F4a*iCuDMd*c0tt8Kp)8!jG7}U*||R*!H?3C)qi`Leb&%Fa_up`a``1{4k0SX zcO+6EP8}Tg1Ez(oJ@lv@(b8m%TNhl;iU}+2?(n(2{`slc@5xDP=%%v3%zsLXq(iA> zz|w)zCv$l99$r>D3*zX2#+=SHVzvgSjU*Qa005V32p?EN#8XEkE^sT+cc4l&vK3&@ zfTOAagxSkAn8^T*L>3fL=(9(s{>b02ajk137?P0t&{nCFk1IQad2zBXOWq1PlkK}8 zq#C;8VwmL>fGwa$uP@xJl-hFBGN}*B{opfms~YjVFOquy!a=7?-@0dInI|{uK|TM= z_WxRkLZr^p;;w4~ns~U7Cx_mG?UEG=>I|1+FA-$vVr#|K*Fp+gI&*MB{HtWCc`oF$ zN;_zEXo+9P^ref*>JPi6-<@?qpeA0mR$f;BG4t0vz+s9M-SM$ zw_qqHa<5MHh`9e`-tOlLjVr@(ht6F2t<=<}p%HZ%Mw6_cZnq6<$K^0aI!O zIk;j`9%NL8`pC?ajoH5nzyy4Nm(*0CoNweRb2$k8k%iD@K}6lgjgmu4G3WldfIo#|>A7 zu33Ur>~^sfva8)sK%q8ae2r*UQ$0AV)uDE)?q4jD`#oPi?^_t6fS&W}?0?&3FK@rR z{oAn5^b7YRC-L}?W}}U>qi^>;*`7T0i9l%)?0J4QLU^5XS+JnCF&boy(cwmyGDfF#i=#tSN~DwlqickMfI3pZcmXK^b)=RU6cyv}Q&3pk>XFZ;`-8aX2R&>IY|%z}!~O4YK2YWJ39S+L$9@THEF z(|f&6<}Q393=z!peKemE#D?tWK%2$!Oaip$tdKSj;?$79VkKm-0mT-fs~#Rp;!qzd z)>}L2J2PxtBt4s)e(bJhtN}7m6bj{ee$J&3vyVLUh*;e4TF(tz2>0|lYq1@A`o(+C zop+x2^3%r+EK;^?JR=VMPuG-pR%p#b5^;+DEsuT<>H^M#dzV&kI;40krWXs6_AHHb zLFf)bjQ~^PfO&3^2uo3+WFV*$*uyGHGvRk~5qo@z5;s_SAUcrew#W^Z_X#38hsOV1zX@HMrSFJdc}>hjIFukHmK)tntTV z7o8;NUSB*<`%J2?^ahq;4{V1!ru1t4oCq{+4r5_rmvRor^f~y79)CJ<>Wp$mSeveJ zc5Y-M{4h(e=u{kp0joNRI)&V`)C&4@LHZM6#0X4K0konDw^1RY z4`kF5FrJ5GyQICt@eSA@ciMz>@w9T+tm+ixMDqzdAa__4k>Q(yK z$w6F?e(v;gzm9Z5=vPl{YkB$!cjLK5i`jgsd%Cfn`DZ-mC`(~dm99>65zuUF>u;xW zr$_0K4XOQH{`-AkZyX>*PATU~DPbVz8A41hDBB5pxo41K9jvq2MW%6BYd~Vs2H%a| zO!Bq?_$*qJ=kA&S83ItEESNfnb!G18?f1Uh$sU_$k9Y@LeEwlFv1q~{34Pe+*dcPp zOTwwNoVnOjv_{a=N=V;q(VS~^N}`qg2PIK=5Q%-qT1PC}%DtHza%Z;nPxJ$J>^+(B zL8G5cU0+YqDIb(rvhDdQx&olYfgktT>kdNXa$v_cU|yZ2$$c=ixxzmY_1vF`AS$xM z^TL8^Xh)A9k<7QB8^8Yp{KRy$HrH)Gi)BXzMX3;Dg8=9;8#0T|i;_(baP;$#n80BmbI5 zAs_nui&n4YM$b@Ao-61FWu5VjRCbE=`~`OkP+<<=sF?j8ey~ToZnJ24?fAQ->qFv! zgA!G{l!ys@#qdD-tEwFG&A_WqOs~3COePDeGGOS4_WXHCwdf3iB#4u0y$u^w=oAVx zMz$L_FFfnGDwVh`!bjuo9Y=f#Jot)g$RYa#cY^(`!ae6@+5s=Ht-J1(r~qXr9b|92sF_tLaWF8nzID>FKsUJ#(buw6#jDT7n=T9?O`} zOqh(=83cYALw3AsKd-3xFYl5e4jEe!Mz5b90CN&9MZ15*bbTG^h-UL8a}d@XR!46~ zN2tIRQNAmaW!E_HeG=wxjRxNRM2v}^TXJpj?C35HL9C%sQ&N22rYn5tQlOg5FH}W} zC^W?l+O!0lS@OL9HT~t|D~J7S=kh2@U5Vi>QZ@|mih9y3%kU?L#_#kc-5o5T&E4Zp&K1eePkL-MSj{09z$s*N5>_uN(QCczszLp91 z*|^A}@&yr~&B_Uc7r|>U+!S88qe8PXIPPk{Nhw)!cNXl=RR}rmNIZhk1A75pKCF0+ zvWj!e8w|WPrm9-7d*npeWjtB)>0%GnNcG4Bad$F%+9q~HqA2j4+}Ll6K3lfSg8#>e zoFnsxZ`IsTdR}r)D@mO1gLQH9iO{BHy_aE-WCNwbZ5e3Cy0)X%p`RT{s=p=Y}|Oyc22s5{YQj5!|3TqHFPN(54Iy%`vv*8KG845(8e}hd_L0HB42vC(c|+oC)HB8j2Ii*KR)#68Nl+R_t^y z8lv*1F!0zrWnU+R2PyaUzysrxs&03r;x6K;nsYdik5R2PmZbH-vfus2>U-lD@1cZ_ za_Y~?I0HS<+bK}#jFlk4?pk1}cEl0S(_c(=@_d!QR39-Rqm>IE)r{>s{CQpj?H7|K z81JxUInLr-b?ae$XLi=aYR76pQE(^ zTSRF#%F}}PxPn%9Y(m8ncxLd_K_i&58+W&<>G8rJ+#5?1%cHov-<}Bg)jqcmY*F1k zvm0*F@%fsW$K1aWqTt0G_)IuS!!e+yck!)bQv9RW`Seeim!l6F5!|8j!hlKotJ%*- zn_Z;esJ}`XI(h}xbz2NLK$!T?5h<>DPn!jQty#av{q=1FuxBx!I*kr)KnK5S|Ih`? zGF2;=i={Xq6`(lvfqk1YI(q{D^6ARIHVt4=do_p*Z=!@}!o91||x z35&i3B$Sj5_k9$aw&#moNj)~Z_TrUnCx|4ZwS93X{y2+_lUAHlK1hbLx^|E4epXWn zR<~!sS{lJe)(SQjVBLFi=^QTYb#@wD={~4>{R&Yf!KA;E-DB%@H*fTnXVFj3br{}s zKH%~(zT?F*fhqyz&tS0$qTrgIDgBDm>|$}(!XfjGL)p%&{+hS)Dom_r7D$uTb;p~7 zsPRYu95td`)?H+5A~V=mSe#esuOQ@Kz?u<~pcx;*|H+YNB=uGLj=7pJB0rk+Y8RVOd zGao<3zGA;_ZoD|FO@KP_Al~)&hRFd!oR}F$1;bcBbOMz({+dNse>ehb+Ti#E?VVu) zl7x5?X*+88tp?tk;HPbDpZ8*3Nm=5t)3R{(<509uC$e0~+y$m`2TZwW z&=zl!<~g*ob%S^Ny`klGOGXFq)KI1CQYp~w}f z7Q?ElsJdc$mvuX?v|YP?bzf)Km3@%De$-7AM8UQ=qu)AdEIBE;C^|U^f zdip*SW6#EdlJ4Y#2ekKlzFjGLe@9DL6e;Siq9P2FMxtK-KpCQc|3?0EM1Ki0JQl30Rm9wW8b1+ZL|G0+Jc&?>|OHdR{T63l_ix4QURM28)ZKXvUdiR6-Q=4{YHoOvErEe03~;ScdV6z-2Q1;4VF#1mMgST6 zH8$nw%xQv!nD14KOo$fen~x>hcjI0*hNjXMU28{rT|49h%Q3q|k$=`$f(DlJL@d3j zXgw|33tIvFMuC9_rfZ5%LziG1YlIpdwI}@pFI=W!31}n~Q%(XY7}YuZTcvmgXf1FL zz_*i`qE)WWc40IxYjw`~+Lj;-ErdqHtH6x>!u>r#~&Nwoj|41~UMpCz6>bCQZy(16Ggv)8A* z9V|xl-Jm*Wf$3d7!+Ap_U(PTZMO2vJZQ805Jvn>DG;tttwuK}^yztaC2K)5D^abu4 zbM@;7b=Pq~bQ;qf&+ijM%oGuLVR2sMl}2!$fIrJZNMXHuD4$=no-34Zsr{I`REpYyIsy~Pk&Z-T4X`X>cYrGcvRDfYP2Qt z4HG$gEq7FN8&khnqCiQ-RYOT$Jx5K3pI@y}ZlMrR{z0B{!xi50Nq z?df{C#Y4Q45bX#yDSC} zU_K;zu$?|2tu)f1%|sDKQ9k!^K*nrw2R&31zsi6blcB=nd+tPJHfkVNnA6;pk8tHc z<3Em%m}6rFjrMqM|Ez}B02f@mcIPUr@eF}+DXU7Yg6W2+ z?i?+ATb0mY{_@0}eDhDZKouJ%ebox0u&S;t%qrs)w>U#n1vt;U`o2CO77Do0_U1gG zmX5q4E88}BO{`Uvd9L|uWL9L7{GA=iDy;moOxQsxYyr~JsB4Sl)1^}`%(%vN&tl)o z#C6CP)1f6up(})PTs4KY|JKZS>_1MH9X%K@aIp6+`!?0msiFp3r9x|5O)~yHAwG?6 z5cZSGM!jS}n744J<*40WLht5JbJO3%Z|YM>h-Pki{j9`MYLZ=-`6x(P}~hpLJ` z1m56cHZXUt_u5tUYD{M_Ccb~&BD^btLx6bL?kM`LABsB4M~W3jwb}Q|sZgiMgiEz( z#<;0!fzFNd#0E?-yfy)VDX=P#iLiK?B2RbihN>fkZa`WWz@pit)ns)W_MU&En1F^# za8NHlUq5x?11;mF0Tlg|0gYjpa=8!qB!OCsx^bl9)Zzo3{|^>CAtq;oGT=B+Qg}(=*5lLYu+CaYd2GkLhBQ;jaHGID9+)2U>#k_6L~#|pjc?Ir z9{*!8w~zlE0{#|~@9IooHFiPN>aorS*~iN}&o4jF*!tw-%!P<|HlPD{;K938!o>H7 zP{!jU2QirY3gf4c-%irPKBYo`*C)Y4CWHBY^*{dGBCdgqY`0b+!>AM29^el$I#&9j z2XCLSk&o+n#fU2^5ZxOO^r1?KB1YjzmW|5Sk8&RG0B3m`!&a-{N?1#Ql}feh)=O|A zY2qy;pc;GdNWml2NTXWX^fUiS_3C5gz=Ve%s9UZp;I+Y$-swGoxjmSDA{KTonu&!! zIF)S!9T4*1fghX=o`$2`81EFcrO9=EhWv)rT7P=p_>D_wege8`tN?P`rIh*nz|5`R z)g0L^Tn#Vi1P2)3#c>!D9$Vl<&{a}nGmaBOq3B%v+Lup7O{_`Ex>PbT20t~Y6VD7R z{0|w1nmc68(b1-xDm^^j3p)biLe0-?^Ht$Y*{||TY`})50K9EsJV=htq2s!)-Fn* zn#AD_Wl9?%96S18F4BMpeRV35N(QNPUko?ue`98W2raK4&^;zgg#ZieJaX#2 zpcD6adaM3ta@0Xi@)K|G_bn%$8swxbA~740_48)bPAHtjfXru5V__Ym252^R%>rBu zChJgx^ciN@9%xV^&aw;QvrL<+ipH?B3G&8FIT!O!6 zNOYQUbj`?O5gClr>QsQh1rKz>WwsEr-}o(=XNqvx^+lDtD?V?mB|XN0meyS<^hO4J zUPNOfuPKxNZ#6@Lkh7z2<>`|X@-_KBLAq=;B_lTWT_vE;15~oL3!6aVqKL6_{Hbqt z6pDX=foKj}Rfd{+U@5vTSiNHvZ$e1-QbHe^)PZsEXv@@*5&V3YSAe-LN8*^@TMT1U z#h&VeARJ+OW%v%bErwHmK^=dOMQO|fARR>{K%OVVe~ae+IU51%2HjX^^mxL;9I}$A zq`+4Ak5i{D2?cs6f!EM79M|t_f}_X??E8&K_{qHOTzNgXKaghzLzzL__+u*-QEZqc zR=uJ>{w*x6&L{QqX7P@Qb6v2s+TPN#_aPyAfMt@*oo>~Uu3dAkXF?GnY@>%VT5YV_ zO0usw=C^QIN7BEPCS}M;e8`T|=VdHNn0fBFy!_!H+h&ku0FFT*hdQf>0EEVcujC!~ zbm4o4Apl;M-&wl9L-(RsFmn>QvIP6L;;^Y`9b|M4J`LMyI7lVOa$J?2 zYk08#sGVzQgH55*re_V;^NmZxd4jA27hl?>Iz~hJ=rdbWYNx&3m=lTLa!-Gi%v6@o zn~#*EZX9fXtQs*6I;4O^Iz){PHRi$t$cRAhZpmw8>0F4^?`C~ju1ZxyBYC^=rvXgG zFDkyz4ZCwN6#+ZQIM^RsOsP1Lr@Z%)YgD0s(f+PCf(H{0&0IPUmAdSW0i0wc7zuCv zDdiAZ$-N{`Rszu05ErrJKy2SvP=eB!<7vVjC^jus-5d}n1H#ejRV+Nx9=6qk+QJvT ziPiWlT1m2J%0#$*X*m{$HyfD+w4&vT^e;XAUQD1vU<;?bVQD%NS(`{9tTVF z^8!M3_i-*%_d6=RcQ2*--DKR*GZUUwe%-q>pV8{(@jb&<-Uqv8OxtuVRs)Vv|+ z)pnXWWdO_zgoaav*al>&>r%ujox&QbxwB#gM25}26l-|9MU8?172?v0S)Q-5`t*~H zi-5zky{aZ0@Yb@ngTC4i4ye0n(`qOUCr7;=>2&CC*^0<<+Tq8M!ArVji&23YDs}DJ zqIdw}!PxVZ?q1mwBVLb&7}Fu1d;H+ z4t1bQL5PaSP8SxC;wQi2HN|NSMu3+-;J=CDXOraOWRNrJ0q|NwcyumPx_<$Ph74RN z%y%7t=%ih634*y#?v3w=9PsDl)xjdkh*&b>FdJI^0)CjmcbI+iaMO_@p4NvC1ed!K z3hV4usWPIG5j+G$HbfyVBHFJD9n$R9x1QD`CYy`fu9it&rQcn==WF7_5GltLeyn6 z$JF!2i99Cm0z*3ABh}_d|BiHV!Uw~o-xuhOh@%+9(b&61vEa?fA>nx!A{DXEWJKBl z&RFk~NfUacItM%YgCK51N*|(Ao`! zB3+<};RWlwXSu0%@YLa3+7BojR;I1J8Y`jHa`|J!vayQ5)7Cy>UI;uEJQ2Gqe3XN{ z8F{(c&l?1$JUC5(Y`CAx%>>q?|0iEDf?69TNp87OPatn%uLYemYv@nye(#|S6mmaG z8rGedNX^(^f7;_ya2${Y&vr~$N4vo4#>zf zY~G_`&kMwc9&zZqiZrgXyM1q6f%~pP%YvkKlUPIU&jq5L(}l0B^uLiAsCyoG#XSBF z^^(~q`XB2$9Sp>e{K%93D3A(&%Y|PULI!R?gk2;Wi;#t`5EXjT|5PwE0be1DsI%ur ze|u&8S~z({J?A#bY}OBA1te93dwBU=Wg_ow>G=F)d;fW#fr&Lb`FuD2R+hqlNofM# zt-|O10)~zXF#AN6?eh2ZOuoQcs*IP{ZTkutv0n(^tExz;&iomhog3M|{A^XZ*1p?w zBRge<+b#8fQs#dl(2+R;YyhOf6Jp{1du@!^D*>2SO1}|iYj7#d@CU8Zr}TH`u4qn;(Mc}{`to3mGyW^i`?It0O4>^%7oOt>pO@Z<33`_>@t$qopPEG_J-K>b zWOXj)&jV|Bi}rFC6)GZt4So3P=B(_i3)0QHXO4qB$bPm^%(1=wLn?$2wusVu8%+`0 zMvPlaJ|2G_Wq?V(NxB!s7tvH(7xMjK+sQZItf#T+T{vk+SO3c`-bL^$S&fALpo z(?lg(O1Db(wZBGU$HV5#Z`W4@4+hU6pR;8H$Iy98i!?%S)5t5`34E3 zLjuW&mxe3jH;+6%yyC9@kmGtP)=4jZ!@p9cJR{p?7 ztyM&~!pNk-Vv65vs18ly?ai ztbwwZm)U<~>6+eHvPF~5q9&YURb9qko3Sdr0deQ)vF{ua`@_E>g!BLzR^sz*ReIQ5gD*| zWSevB5uK$jI0qaC!?t-KA%z8ngqkQYRRN7%4FP@=N|T%=znqLJpPU9<2)?8$C;+pB z!BwT;%^Ak^D@G>eUyH58${6C9TyQhlhO@6+LP5VcpCJ!v6Bbd_{&RVW zfsj&m?FcyEt>_?JL3Il5iBxK_|7}Zg<2Bwrr{+1p+JxvTw}~t3d$_Q9=5V|;`{ghy zq?O@nh+}0z#?H1292AN~FOTQuIA1osRT~?cJBc&E6sL-+dtX-^I{x;we&KXE(V+%E z4J@gtSl_FmxbT^Sd`PSq7rIq8HI!xY1I?1I+cc7<76 zMV@-Z$aKBHFCalB1JkUxV1kc3RF= z!B8cA0`@6Jp}rFWIWr4^ibw?`3-_l!;E4I#^qif}CA$D4AnPe16IRwGTB5u7r(78E zIYvarWM_CAaqJux3xFo%&J{!xhEi%WCCaGRuX+{2Rq30+FsOWglw4y4Gx7BnUSb$1 zR*0Jq^1*AqjXSdJQi#psrwY3D3SzGo#;z;F;Bejv{uT$PP zM7(bLpy!&&&raNR$wXmXBu0d!>D0nt(nG);(6OwL6H?}$@=+M$F0(~$uHPu~zNOMN zg33?>EU+97ZB>i<{jsAC7aw<6=s%TM$SDZy>+<>goTsW#A>K+UUlZe-(@_%-O9uGa zBk>R*vmWAGM#GhlMp+n3QcEwsdUEYppWw#zV{8(srHsFs{BQ`R7^DRM+8ITz8@(lB zPSGgoel?~MhIYzjwGWuz}EoXwis1>2wyxJQZC8`43qrIF> zCpixcAN`WY2yhtVd{*lr_mQgS7{$4W+#2sdfzh>b>?2Yf?Gf4$D8zY-B#2`&Uy)bN zQ~$SHImTCIc#mNUq-s1cG5SIkGI({hplN7_Wm0d&k7qnQDuwxuFxrI?3(C_lxFJ_=K>|7om(E5&^lv>T71x}n#hiwcc9XY`&3 zY}S9g#{b(>Pebub{U^-Tr^Dcs14gAd$X|6tKt*lg&Nh;t73^!kc6|FRE~MM$gdtaW zb(}w5F77ThX2n2N@;boZ>0ZQp5xVd2U3DJs4S0 z%~e2|+rD+oo}QceMlL1`&^jaNhmEBQN@Ha1;TgIbK8QLcAB8i+3MY!^90&5pB}cZ7 zBKYzj#6_;O@^(H8_xgr!*Q6el=qKB1knHLNP1@zm+Yk zj2}4%gClB1&KGGA_^L!cT7LHe&{I*0&FUBI2PPS^Q%e39i4)HlKxy!qwxlvib8O2r zpIa4(cM8S3auu>II0(3@L?%T4~s zB&eeafRyi?)xNV781Cj5;m5(HayDPHzvv!4s*HK>qx^XB+L!~WYoy-CXKRD|BURD@;Y5AF!PZ+^Yw9EL}WeWVf{Hq+w~yz37EN>psMmG z+`CFb+Y8-HKGHL((ra-u!ZNuSJrgmZil?UQNgC8?UEApHUAC-SOfCEBtE0Jd`+)W1!{%sKNj(!JH=IzMxFN z{gj+v_I`M-ZWC}sB4t%!A;g9eEfho8MX{W7ayJuk{B4nvou5L)b80I^t0txAiJYi> z_a{$`zsNOttWq_WOHXrZ_Klq9!QelHUv2V9-$m_xT|+uEzE`l z7!`++6uRG!nDX<-4UQ{$6W4ip z4Xw{OW=5VohV1kDW1eSHYx`OSJ@+J;FScpjreeI;PrH2ic&DO;ifm1**F%q15gFUj z^zR1#g%{z^YKpU;gp%DDOkIoJ6I7*re1%~;2Nc;)0hQK~*9K-{p;J9)7RuP!k!KFv zf6jj*_X~nJwd4sw@U=k=1Fc7alE{Q4yrhkP!kT z#i4>x)-Iz&4Io(1R51YOPNX*lNrHlgFn!V!ii8VUeiD2itFtz$L?opqCHR3X1DK_- zn$M|i1{Tv}i0s1TjhTziYGHc(J1IE9S+n3#q34{au;s|7d9LqSA_DV?m=*GGf@|rP zvE)edCuK0J1qS1tK4R^(*sT2_2w$~{Aa%l}VpZN`>*R_@vfxCE4QSCU$Rrdxs^L!0o}$RQIx1j- z4a81Ye-||C6*S=iTb@QBOH#y=M1{MFcDYVuD)Q0INnzNpje?ioY56>s7B)xo2f5#g z^Bc_+#u9|No|;o1FmfR7Z+y(u`}CF&oopoRMFwFmlc8BQ@A^~Pevq3Wi(%lYy0_ho4usZ>=Cz$fQg*khWwz8@w@^ao=%*fV>o{%y4afl&Op+Cz{M91&6#vTvs4N@W#D>ra z5Jf6H+8cbVEMm?*f#5rrRV^ZAD|jiAG4<3+ony1L;sr&;!KOhIJ?(uu8sf=HVewIW zS(5^tvIC@wj8w)&5isr|Oh6xJPtjb!-ynXw5L1!Gc znT2@|Bno`QTFV#fsbX_7nI|EzoDX#^ox1l|MQ=Zomu15j@Mo;McHzFypxX$&h$++K zZ$$-(7q%!s6C0{V-|H%Zfegsr#rh1**MLFT-ce6e5w>8c|JaF*R@5-MNqK_HjBmk8 z5mNNsSo}XDrMOlZ%?HV})Bioe5-c19_5FA*N?zLmaI&)?LdcM&^`=7Mo_WYT+W>+! z+KrVuTTZ^#Y}iyFWBs*ubQU8bpI8@sxC&YI!?4)8(PF!ScCtbwH0WY+zsCW$RZw}lb`=duoDTA#X#6>D2)yA4E0f_LN2>ChOsI9lE>1O5$}d2a}<_GQ@MU(@k05?IroCH3C%?WJApVXs-VYmK>>0YoF?CziAjs zH@`fGNfEJ|`fyF=My9qwV&kHbU@gRfi_@I#aMg2Oa2YUZX3TIR#0apxlDAz|j)UdC zqAczGW{=QS#5A zWY&sMXrn!17IYq!Y}+ZXmyj`}Q2~Dc|M8YkeHDXZ9CeovR1@5*novb39ckZtek57T09^F9Fz`B~<`Uc$du+GZ07 zBhxVL?}-OqR2OV#tlfyq*f=L=4KoQFQmcSPPhuCSB({s)Lowjn*Vf~`6gLr?s2{fG z#x0n=uuz+AU8JV*&(;dc`Kb}f?=%)o+pw=oM%LOx#R~1WZXl3|QSq%TXObu1_b({6 zm%Sxfe8AKoh4?LYt7f)oXFS;P8p8eAR_Gr@W{{KDO<^q+mC}O z10z;n5oWINI)42Ajbr;aIzn@SwWg5=$O{o|dBkk-9(I6m9e9~BI>;J3wSK8ODNbyq zWqqqx3bPCSf(o_RkiY@jS3@i$UCYz$l@`JTWjWG5SH@37|7S-PhDQrVR8nNYdle^j z8mnf`z-TgRw}%ZJE?3{pcncVgHWq&Kzcr!+sS*(di!)e)gZV~t82e8g%rP9)AltD+ zr|M%s6;@=zD^J+ZCV(RFh~+OJ%y{I4;AI>mnF07z6vFNjMd4i6fK|@gr2k`lPt-gR3+a5uf%ISs2`t28K3_pD5B~UErUC@^&d33MJfj_*lU`Cnxlm5Ea zf5aj>lk!Jgag<+yHb^9@d=q?Q%WhV`!hhQ8g3M@s7>$j2mh{wWh$!27&zyRnqCh5+ zrz=feUU*p2hrMis?w8jpV;;jw7qH~udfOVWl1!=mYq0a>YY>{*=}T+D%!}9xd2tzP zjnRL9%CFR5rYR5gel~QUtB^P;wO8!$p}Ch8N`nMpNAjz=64`&}8+$6P7>)V6%264F zJQ}a-o#5iC6MD}(T9CCTEYf(us9M#1lQf_=^`u%j{*81+cMHH@c-Ba5;hGeCSAtq} z_?SWF9mip>y8=yz846D9JAB#)h6|2cC~f7uJTYi2n>jaXP$4wM5)#rk$yr9D+jd{s zNK;*_J}!S|-S72W=G7Zvlnp834=%{#e&JqfD=W#NaYvU)pD`042$7`n?nSXaT z_-)W%oa9td`8`w9Y}f2s;^|105YhoreSWxls>0MdD z124x8erCLW4E}F)=vSSi(Xnxi&8NZjRW}Ds(-?)JsRGml{!`B#1Jx{}#?}9E%P)7i z%dqg1pKceW-v7^5a&7eXcXh32to^~-?hmca2vo>g)Y%=zi8&-)HM8mGAbXP%52xX^h0?wWfue2X24dwLaqeCk^{9r5u{{ zRo>{?wW95-g0}HX^$k4fr6rDCOl*Ix98>aRH|BQ zCO9~A<=QLf7Z*!aPlOA)*@$U10m%Q)P8G1y`7%N<5Y7*WQ?e}Kf~wW3G9_R!coCkF zagh%$SBB-662J>d34x>rAw0&yu_41&$6nw3Ho_1xs=IGu^zOdBRVkbSwab2H1L*|w3Sv#viN+Y$X-qVoAcnH^VXulqJzbcA^Yu|ZtRJdauWCS znNnRr)7=*8UUUwj!OO}ILsl7EWs8Ck%l!37E`52o!9`GDc9|U%Wa2Gjh+(y>jxsHz zcB_g93hMd|g#)2c?3yAD~0wYj~pG1v(mUcAMA$lo|g)4qwO_X4(CC0mXC=QZb+XiK5=J<8-8r)uX#9@|Ap8~oPFqq0DZNTJ&s-O zGRTH01u4yjrK;H<{trfy7hwqGC$9AvFMSX6UFub+y!;`>c)Z2Qm7$_pQMg;+#TRaxcNl<1j=YTT+~@uTb1}a?Y|= zF#L0=5s!6k*w~K;3W=?19;d8~8;0t}rL|rcwE0eEpp*v46Z~cO7(%x{3;-#@!X6A@ zBqIRGLhcfo7@D|z8ykYGC&$*s1ux_>4?4Tte_y)_SrDSf5B85(&DfG&xv$!@@kx1w zIngGPOFcBGY);-PQS}rWr+!LXY85H9zQ!Y>+Gzwk+uoNmE=dsKc^ZFbXLXh@oNcRg zGx*3T>Z#3Ceva&cI!mS0%pL$53`Kd3b~gaFig2rf+|o@-sSFPy(LgPRCo(01cdps2 zbb1t9o-5axenUcZqENw|MWQFjBp)|L-F-&Up} zwtVH9AZ`Euo?LXEt0)vSV&HQ)_BI3YJxA?63V-cjQ`poQbZ!x!-T+U<4rLg?&~VvP zaq8wP7{Wc+5aDD1mCDUht)VlO91&+*c@VrQK=vOP6*w9R5iM>yZ|aeWyvV&DUYZRJ zd3?7{OiYGQ+;w2lqRLDw0p=$`N*T!poL-7oRv2;=B_v0!^m!MnnQ_qi`~{oqq1KM_ zEgtF)!rRf8hgx+zL?NihzOHvc`bemHNat*MmNDI9~BM-9YfxQ^*~5F&~V9i zYd=YbBzhbsPQeyXDZ#hGcGmwhiOfqg4C0*Lym9nQ`gB8EHRg*3=|Dp~K7GA;D9%vK zG;JDojc)+zA2w08TrfRjJXGB%&h_{&UaQ?GsMDYaXoHOgVm;^%Izuo`U zzY+;uOa#qd{~>3tkzuqYWaJOfJ3p3nTvW@0dV@ zkEd+9=M{0xr%~pZ`^8CB>(k4kCpB8~UzHb24bM~>TuQ(?ob2-b{MNZif+gwj%uaOb znXtOyY$g)Jh8EXLr8j?bMzpJSo+K5>!4s9gNF0k6iE6VL+qqa}T4a*4X9o0Wb^Wz8 z+VscUUAbXvlPcCQ36O3k}RfMDjYkE^#w~oiW?E)c@+) z`3KfyGOs=2{C9qn`Nk7K8;feyxNb^-_g?QFC#Ga2TEXyMhsgI7m76{|rdKdal4?mA znfRu^g6WP!YbB@?+- zdrk7^IaZ#GdCixF)@7pg=d1aWe{X*gwl`$J)wr2rrfj(T`+ELV`a7}QM#0yCS^VAV z;ktQ%c<`63q$`~4jpNnmNOC5oM{PW6V9^g&U~RNpQ=**Y7h7xhp*}e*azHUtq?VIo zWl~ph!Z~mM4Q^$cTT&a4$cVhKg`z(eA%IST4JV{=DYjdW>fOYq{@j%H>~kXr?|<8% zuu~10A)?CH!{lS^O8-qxs(#L~(%SX4qv^~%3yYD2p)GTh$}=6Z0lk-nJDL%EFlsib zhb<@^3l92IU&YnELOZD_*{kv3y39tjOAAfB+up)(u@145Yf}F}9TxG=JfFnlz{cNt z6;3!$Qx@GHo;z4FxH+wpXdQAaxbnnnQRF3g48v-f7s-MDZBjb=j6VU34Plnu zFU}p#XMH90{U1Z;;gIAOhhdh8hzN*^xDavR1V?TIMa7Zf*0ge`ws2%-nc&{xHq*kr z3(M8UZH_|Cva(XMvU##sD#6lxxC>ulR&bIu?FaaOb{;U^X(N@Mi^ z#MX}wd$!#2#&T|hfNado#|4u3tks#MY^$YfilCGZg3G|hHUvmeK!-`Yn}9!*$RJ{6 z?ihjGgUyxKl5fcvBiU%nFz_tVv+`kJC6#m@v3ys#4$356Ncf4}x3AS3t z$Vm6Al$1$ndtiQi^J{;ja`&o+%H!bw22tT2+bU$PaYP+(7MQo$EAtYae+X;pF^oz~ zaMEv(Ga8gF*0X@hv08o$4^Zh3#5s?$~?&u<7DPY{?!7V z*o7(CRQxr zg(dt`hrp2Wa$YHRa`5XX%t98`PuXqzoj8FNG-~f)dAljdmye)tD_qAiTzywTEwf@9 z%_sM>&$Vnu253P3_1!a5<^zz>1LbO#sac8tiYkoM zzwTD2WEfVcG<}!9m$T1_O6=m7iu_@E#j=o%-TYkGX<2VoHT?ZuJy&IhVu$x8jxHBFq_}|8uS>r@gtd__SJP^FQG^xqLxaMlf zWJ7UUF6=kgh94U6!$4gtVg zT}2^24@gKsvGkMDQzow0yjoS>d`H(P%?wy5fB(4X(Gy@B1ZXG#>a+2OERaz=w?M-2 zH#tRt5n@}BV$wYBOatuBAO%uai7Zyoc!T;|=H)|fW@A`zJOxKC^l&*P5xO(KoD&CYSmH)iRfzwDWA9T&qW9!v`#6 z%`KT%hpY***sRpd|7Vb;L29G9x6ESE>}IPzgg0cYlg<|Qrmm?YY8Wz z_1;&u&b4TWPTY2GxIgLqRi@*UZlE&z%Ha{1!J@8wozfj6^hY3C<(J>QNBUP%ez$mx zv|89bx?W|BsgH5N#7eM%zm?K2@)}iEL)=sUhOOdhY;)S)pZgAFjCF)1bTnsl3=v57 zR}UVVV52rV3`WknW*+1Efnk&qX`%Tci;J(Xi@kaxb~gs_GY_=T4g<+zpA;Vr(lRtH zQD2bPI=pY&T?Pm)9mimW^z(Ib5XWAp_*`V7a$*QdiJi-rFgl-={I|I3G9LczTC_yn z0U7$<{a(hBT8gJB=To$!K_hA~^Jy&nU86?NG zTPl0j@jk8q)U7yHUk_|V6uL9$b!+Mvg4APLumbR4pFJo*6XHdP`1BKiB&5g+frdi! z(8mxP!SR>BJ5I>iY;J~L=CrG`AuB_;JstWige##WVqgnt@JLLrR?gBh2n`y+x5Zx?KKR!_Rp&G_7^w|8=a565d1o@Z)RYvaL>+MY&) z+BdN?L}lL$$nI*&xNvZcmi2E)?k9fugdW(pBBH1iszJf`X8;(BW}aFA8Z_&-+X>Gh zvlI5HjcTQkp34CjwA5)vtv?$Ia~*!E?F)@WLTmlu)G2x0^NatSx#%CRiow|)71x$aXS7JaX>=60~kDeS2rEZ?_Z z*7qQO7utLh#QYE}FEUgPmc`PQFJ4eDoSx9lclhs*pH?ua|AVVz(>;%CQnEB4qAL(% zGwbOGeqv`k>Ki%k%jG3u0Ta~=~etRyM_=Z7N>x5qO%hwi~C#_MxiTh;;nuFRh z1g9UC0Bs&O^OR-}N4@=Fk14?`;ITB;zL(Dg`2~C5>A~;ePs32~$>w3ZipTUmm!Qhw zpq9zK)u~0Ro zv)Ux_io6IPbu&EKlR5}Mq5WTUmRCFRV_jbAvZGSF1hdHTo}qrvujg(zL2#jdS`6 zOeD4Mk2>5=duV+nu@eK|;rVCYapI}!amr;Z$Wm!cpLv~|7BaVdtlr<4Tzcjd2+|K{!c`Nzho z{jHxfPN`F_62#4B2wJwi!;s@aKfmt*ie5Q7XxLYwZ~CQJ3_%|E4^IAl&p7bv#nBI& zae-G=Hfvv8T7wwj6rN%)$K_lF$(CSF);rJ}sxn^NmcPq6ff(S~$r*9GPK+Hj0qYgp zMrEbUoYsB$t>e?i#bwTj@|&{+|B>W&1^t4NZBw$a)I&Y~!?d6Nm#8;iSsi?c z6`1P50JV3-vp*Utx(lr^vmkc$hL4de2gt5PGQWciPypEtlglB%8A+{(2u+l9Z}i?- z&j6QKfKAs7z-@z+1z-0k!(`cF>dBFQ(JkheROu;PmX->9OU(U$wlw+9JK` ztS-()LF>I%O!Vz*W;IHi_oXhXYP!hX|LV~B?lbZ=>%XVt{a;sqSg4@iSo{8!FJQb& zODhJ7R+U8_$5JUqpNF@mMNP*f=LK*m0V&KtUhg?QK)|P@LO#ru$!*h4l&<+sY;w-w zrl%ku4e<*VRFQqPZTyO8Q(hPFBd2{EhH?t40l*;YJK0z~8i$oa=O||6?f{`t&Oivz z8KQjw0#^b;r84tTIK_O$Y%H>%twpLiFAs@JP0emWVQ@VHRI8_!M&EToKKk~!6~1#~ z;C!FD#?{WtIJ~azSWe-61WxHOdZe|xzPq^(f^@cmDEDa>m1elQPB8B3hj3ZVZhO_z-23S3GU|K%VcyZs=#$^YMKD(!rE9Wj{7Ra4xoYppK9NVpg z)_c;rJi)Vb;_b(LKa9?fP`Vl&Ps=Fwa8QD2_r4~OTV0y*9;nAULvXK7nDUBn@KK)3 z1y&8N4*Sdi;YVdIY;$&cdcG~*4k-?KLzfFn5o&sa{gA-@heAGaWUm5^`|zH@{_Ivm zI|-?FYQ6bqY4XVU-19lY;m@Ra4|NKgwtNTyf?6iv28WvWoco$$Y={3z#3-TnqZVd-F975vDBS%t%EpAZ^lg!+80!v(BccC}kO5QsOPSMf@;@{M z>?{zwsHjYMJakhIwe$4B;xKC2xUl#Jk111kq@-`xAzE@yN?1QwIKl1QO z`x*psUU3pa+uIUB(YvLh)?w#qQLYCZHQqlulxxBs@hP@d&jaZPWclnrLXQhQ+vp&7 z-lX?OBNwXXQ94o_qulV(yIA9<6#0yiZa84K7@OPja=>yB!=yY>cHBFMLP@Dbf0q=K zU0>$ezdsg|1~l*v$p@0GH#1OuRVX`{T?XG?9GJs0l=WK&1c~=!CLl8IN|fOmr^S-( z<_l`%SO{hf7_!+h#*36V{-tZUjGXJ}<&Sya>coitDfV4K&rBk54Werz+eWN{*#RVK zD>yIr_Lf;Kz-scyQI{ zyvO)etpJ@ur9`Ap*XmFL2Kpxf1Y_XY*B}q60a}i_QavEl695-D`SKcH>(N~Zd(p`$+I;e zaE7s^*U^EPax=e^Do55|s9Fup%hW6FJm;5BnlOb-A4~%+!3dTmiKK|0dWD5w4k02n z$%72O3DTSkq=|r7h|sCqJ}ogSJ^f?Nh#b+MRzea0_WgMy_I_?qj_8zGkuVtd-%~&N z`x|K~?{pzQ(pKJzSRMN^`9ZyQoUtsXN?lj=>pATia(PU$UTH84S;2u8BbgYVVB5eb$ zRfrK+F{icoi22x;fWP*dOvUbrT{V&6kc)*vEs(GT{5zn!L?Ljymb@h?!C5&g#XAG_se*5|H&KVxc<|Kn~uVjX!6FPXB75jqG*5#XXh8=SM z{xKErNz5IK=F)pBqc)vLI;7?fxs9Z5R|0W8c+DV zK0tW5rc#cyF&Xx#3l!HCvfGKm!2TPPuPe9sH__?NYM-q-%c`H0;8qK>j013wU~SsE z@gnfMF}U23Wvz1&BR)#&ggv**O-R~d96z~Riq8vR){rU?keSiQ$>C z0hnb>r9);=X(9ZGmRHd>@?Pd=uP*kmdFP5m7{H!|WQCCySE1L$K>ljWvIdWyxcqaT zb{sF@Y&ly3tYsJ)qP!eaKgYuBb38~D(W%^q-6YVY#T!&zLS{ZL-Wfh`!S>;P6wG@A zTCO}XStf?C`}70yU2ZAP7C4l>u@h6}XS*mqWgL`7x6I-7R1b?1wz@@R~kzpkukf0u6g%_d$>2u<9#GItJtLKc!9Zt^wI;HHV6G>1@d4c{*fu{J?oS5BiX+O zoN%}43b)&*Z{=*W4l;EFWVZ!lQcW!M(U0sGVsaC+6aH+DkyOXefIV`IsVr|uX<1xM zsOhz??c%(MF*;#vDb42?QPOwm-Jj&p8BRv@(aS&y+qeUL&QwNxclaFo=p7;X48*JLj zvGEy{bl$L@p+)+QU@-|GdkVPzG1vID=7g{1{++G@C;pDfkuqa(8}HL3ZOphF#!~|` z87@hnZ9~O2fEb#K$*7OX4^LwhMwt$4aOB2mh3r6b8jDrisensg$gBNeEsO&6aVmQp zp;n148e-%d0U%JyC;r|vF8ThTc9N!te3H?Au4(8fb}>8TdOaYFuG2{~dq0Li)~g1} z>@MX&l1Jo`RUV~}6}GXu59evsRK1&2cnb=tyCL!M1PHMlpw{TBHIE+h>6*nfksUc3_!2-X;56F*Y@f*SA)_Rh=_ z%K#`mXh67yAF2$Ijgtc~cn%-SvQl{t;AOzUghNJS&Tb6IWUJ1(68#!e5PV}hHF|y5 z#eP&3$mSZ$-KQ1#vm3D&o0-PV_*EB`%95F|18S@pq0;0!iBA16iIIB8@8TYJaW$V%po0XL*;tkitYUYC+MsqKlc@tw#8<8+Nw1ie1K#ZS<3WDIg$E-XX?DT=g<$`Lk?!T8W4hje6|jF+ume%w`9(WKOW$2 z%Y|)}nu16f3-hX@G@eQ`;95kON-OW|JD^qw5NcfIv+U|NCdMe=uEIXa^+tgX0W_z) z_lL28_FsyNCzO9KW3JGRPsOTWXuf5hk$cj07{M+z?1ji(FZ(XMIXS zY~w)Xvi9&7IqU-VK9~IMyTtop|1(tCG#+RYwkvlKAx1ksJR$jD-sas;C z*@f|@^i6(2_^heiPbJt&;&fG@AXq|jSM93T!6({h+uqR5*O5-24>S8w`R%--p+GE9 z2re5A=gnX0qgd`5&1GrkO*iixyZ0|>__R!9_VGX&SjZ9;W4I|kauQrZ+1E9vCL1N| z7pD?K<^HAvus!(2RxJGF*<@&C8(XH94#@kS@&HyCl(cho>18lX} zI_fNJkOu%S#JO;R&J6uAriW-gwNr2=K8sM9=KojxEYKcA1W?|VA3FX>FTGp)U54js z+0GrDoK&^*WTL;5AR>sA`Yj}jHgsmGC0_$B!J~m1!Jw^Z$si6i^PPF0JSH{f$ixY# z7awFh;&xP+2@Fn0!XYN3B$IN?qqX!!6QKMgHO_JGZ6Uxd%;e_KiBz!$1}8;AUDbC} z*I>))-$A3TNPwM%A*2^xMk}b}V{72n4qNBGUaRi4U>+$3p?QoSGUqT0jg7Ou%5PF5 z22+{lvFG{j$^Z~4SaRu|Ow%O5B{ze~+}1yAO0raN+!YY|;uMY%+VvF#S9bzxC@A+V zR3^R$S^_Krms`%MyAfB+dGS|LlhY;~#CJ4qiqU+C?s<7(tK)L9ISv9swViE9(2u3s zB+5Lf6?mjz^AuLm-;B%8{8&45fTmcCLboDy7M-;jA9*|jCE zmq`bRaU60)i3N}JG9Q~JK0>(a}L$E^eHyOZOtg{u&9OmeBmk zf*xn4yD)Ia0=v=;nUAeof^Ije51pbnoZH-`7r#hW3A}K>AprM=a2LRFe~8t*p=tz& z?>+6V#Peh=+7x+8pdh=^Bt%jVGI<!DW}bV~Bx8!TUC!9NdBs69l?}Y3o&7PhaI4$e`&;S#Vn_qsZ~IWv>nL2^1$+Rc zL*SybsH=QN;tKcQ%J&$MA;rzGN9?~)iuTAT^jfZcZ*D5b?a(sFMg*0oK?BM_$$om9 z|BByQ5Fnpv5*4(hzwY0)Vs$j~`pwxhmCukUP8@YtFwq`C*1+v4_Iy2jma!AMPWGge zF?IoslVN+6^6-~f!FKIt1;vmWA5I&`9n=SwTs|m&8kXGT_k8W(g_0z%#)B;X4%sHv z;GfP!(T?r0s3-#0@KNP?%mv>tQvL{WdqQio3V%%J*0lJjM^MYA4uBX!3FKL(-y1ba zfEoph8L_u#41-&JMNoqcv7;hT^hV0mZ}Ed(kqQKWgy?=OVxV}-%!NbU#g%a$Lesxm z*`g)rU~UKHVQmAqh)8!(NlyWO zI{2PBG>y_8vSjb{d}=BS9OZRz@*y52LrT|oWX9l&y*&kfk8A&^`K#qV% zS{$)9!H&upAb+|W#aEUPxOx3Cd+hxn?#59Ydj8+$7*4Td4(8O-JP@Lc@g2uv=C)0U zX1-h3RCV$lOe8zJCC>??iarY&I`I;@ZyQp$s@2}^%!KTFZO0NEN|`z5)=Y=DA6Kxu zr5XndoVz{!@jHf}JzYTq2 zHipR?Y)SVCq&HRj`g_SYJCzX4;E1{c(Rwi$&>4I0?EA3tx4M^ZXmbBCNNuw26X7n13~H(ASeCx`b5tM#Ma>6qF;%Y-0fQ(uLoLh zKN#h(5ofjfm+=Kn>A6_IK-d$lje2&IYxzW_b{ez0Rj$*r2f*y zM97@V5FNEm3wD|#Yk!}Be%IwpBNy{nQ`w$6GlUSB+S9DN)QPWhimRLllet+ zT-Do)ce=fS)EmBo6_CbidDa(~%sH{Cgy*}zygys^+>5TFK=-=!`uXRY_f{%xM~5KG zbr3mq%2cRyqv|n4@ zD!F;gjCAzyJ2ievI-%#awgQzTjH5S;dE&aUTml5U+f= zaR9S>S^3ZuWNpSQ`vWsNUQf|7(*2sl_1x+|9v8Gm&psvutHtcHKZ8Bl+`;Epo83^A z=bJHy8CD+kr85XQjYTEVY{uV$+ta|amvL2@*)=*&aHnI8kVDf#->_a=B*+LKa0^nzfZG?jFgxtxNFi-ijX=0-_PHAcZ@TwR?ov?>hB9(xH}l8TjT zX~APKQn<@#b#w_5-wXsoAPB7zpz~!s1FwWeqDQu^&{AXfkoWQGNQ5ek57+8(A_sh=k`{Z3+vrYvRo#<<$%GNYiZrMT{CoXq;uKdcmc@AAyv(cb~D>mJyRWyB_x$yYk5#B z7YDInfL+u)OO8MSCcUFsO{_YVD$Cxi%y!c>5iai)D~n;JOfEJ7-z%1=i3|e8`QFR8 zfHMJdBiM3TUaD$6o{l>}E^idz4V+ysl;EB&*H3rMpgHV=R?ZN4jA}y=low;n4gvI> zP*OT4$>;6|AWOj?HG=BDcNU3l?-VYx>i~CmBjwH@a2tsRCm0m-_#eQ7>3MH)pVgd6oPlP-_ z0jGC=E8Pp$h3sS~SLr{{^wK5kHEr=zK$wyE zXTmGZn7lN{IeJ~9pTo{8mPeQf{wxTQuOy5whRLES%@%J^JW!+^o-6^^#{C$CN`1Qq zw$dqXkl*nv5Lp+>w>4IT(ZF8uJq|6-3Ec7uNICti|A}&N)0QkTN5Q4Pv5Q7 zC_?8hMzdY)v3mU4>VUYn$BU#;f9R0zopAmDSd=@IAXb2~r#?8szE4T|EJPoF-;@vl z!FtP8*WG6bhUmy}xix*1UhKQ+-_iSw)y!q)4tl#MrDdcxRZPB=cK!<(-U)y2e2?d7 zd4f`=K57o_(Y^Z@#DTv-XFzkzxQGW$g zy>d|c`Qf>BZEw`nz|!>SY^oO0{IWwBTYB zHy~fAB;YmNSvJxE!IY!CyT`K?k?Y7~rRQIS0kq8Al3K)0iM=yWZP7%0G4~zO&VJZwg*Jq zvPZ(h>^rcrXrh4lOgjts)R|!M2Z++B%T`#UPPi(ez*(^9)OkA40O17)?NnDDQHBF$2OOdw1u9lt5IOVC|RV!K4L23$N4bgV%#_0Zolg13%B^|XjQEB=O7$SxnTF}^9wT0tE2itPQo-!JFGId8Ir2eG49r%fvw*VWD zqoDMM425V$IQvs_F@rP+RNJo(Iy+gqf-KkMuB~c7S{Dx*ktLE%)B!){Duj4KbBuDf zdgZ?**9r!CqZ}ipnlc8Wky#Aja3J$)Gouu!q@4K}0U`8~q;As&p8aZ2y?z^ae zG(26=%mM^L(k^wf;Jd4?3PqN$GazHZ&>Ev^>GqR0^?&QUN8?|q|7ffG?p#kxCA>uc zikJI(Dhi}a3q0t_$;%p}FfLE1(tVfJIIw7W7`?!7uOo!0KN5eRu*V7VOK^laqyjd7 zeYdC^y^_RGZt;G6Y=>Q!w1d+v>hzl&VASXFVMP0H5yt1h`QJ^z@m)!!%3J;39N|wx?Wqa- zhmSwDroA^G%dL3mH67xJsa+8QJgW<&CnWa(eurO61{!d?(g7PhJBg(VjQ>EJQE>|5 zqwjgU%P(3@KtLrwFV4ui*^$|ZSc+UW_ zu8za3WMGFUkzZuLI{4N=OwCE;tIWEUb-(lApr@jth>`&)8M=(-2ES9Pv_iT?bI*Gv zLR1>Hxo&gz0xUo0YC}P!q4Jz-8e&_Vx)n!8-18n#F58hLt8-y2T4P=&!^v(-{)VU+ zdFhTIaGrCtj&lvE_+p5<6kHrr!8fwDSY#y)c}eKS9u)ibR{Gzm(U6L3HDbf_QHrfJ zBxLEalXv3a#a~)tNwRm~0XvU1iK7HAVq#wvQ=_y`Pw$63U|1=`?cO^F7oZ)&(9cH$ z5F$j(QyYO%Ml<6W&)6N9_Jf`V<^I3%tJy{?E`aUYYKwS0^#ZFCFT0R6Ah!jxlS392V-xYRWq*rz>e{U!qVLF`S&cdno z1Ch;U{$tYCvI7n8rO?r6CKckW_kGq-ZUkmcGd;z`{0r-v5Rsx;2jCsDrB z=)DYGU(ka%?fn0s{<o4y&qNe<=C&?t!Gv_T`W=>G-;seN6tCqxBw)p!?}U92oNa z{pTa=5guVn>3a%ix8=p*EZ~7ZToo<$J3SDebx3c=-*@GdiSlsYGlY7e^7)9O_PpKq zn;wRMTl-)P(T&2TTkUxIIr7Ni)_+1j@0w#5IF_UzJ;>)NsytIQt8s`=8dkdYwq!hCnj=Y8(PjJ)bC`gwo-{l*`ro+o2D))u(8zR8+P;{kQ z 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"Wnn7_i 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

^e3M&cUz=^TwOY#%U?6@o$Giu*#@T(wR24BeO_| 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 z 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

O7DyV3i#mr5(A8?AJ>-aS! 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

!(7eg2izbDPR&r%ENf`&p6q-Q5&o^> z$ho1efYooOmHA}_W4iq01z+gjdT-JC?^uQ0z-4uhv;iUIw9{oTb&Bbup~8hoL~l0X zZh4u!9_<%Ji!v{9NDSH*I0g?*DFW}zSreQf&oz36O4oGl_lcA2++Kub8Hrd#AJ3LB z@9327gx`nB{gU3QuHUnx82SzVP)MQ2JimsnR5$8d)F_zEt|HmBDc7&tA5cq>_y49y zQ1!QK^0#if>KSPj7jy80^`z`)Rfr4v{efxWwFb;u;qj>W$%_y?@gUp4|Eg}p&D9z` znlIO&DGg>4Ra8GWvJk|ABbcxKy46I0x*l!52=BLTb-@u*y?XhlX@oPk>;+*567pgO z+&Dq53P^p1kXymKtWDu7q`k#R!@0vbNApvakZB;X)A-u61Bq#GwX;6YCy2f}Y%6P5 zh_@DQvDP@Oc)fAlF5u3b5b?xv452eda%}^z{VfWvkQo-p)w%hwWlBhozy5$MIOqQ@ z)aIk&Gv$$Qv(m5~S`M>suu13vw_A@kB>Xy8@nTHS*8sZyd>(2)H#qw7RIMq#uh z5Mx>Yd;0hn_)U(Qhm>rR-tgy61Cy3#NC-V!3^o7|i$w!&ht_#M6Nsy@n$+@3mg_ca zL@KY}l0`Uy&Zbr=MQQNI5<~`^M(2~M*C+}pDWexolE-@G{dT|g!x8hZNRgkd}3Os+Atb1w1 z!6L?)zWr-CS@2!U*CT%Mu1>iZ{W<tR^!_8{U&5?DIo_b})_7anbXpv zY2!1|p_McyLyt+<`{r#+tAh24h^l1E62RG=X8xTu_SN*$;VsKP;2 zS7I_;E)c>F^chlqn*sxwP}dYl*lsN6l|4@*Oksf7XKmHEncXnU%*A1E$>xY{TbVas z<);VmRcxEhM4$f-i3U+A$zRj&3=pyXkQYLXL(BT<-avJ#@83aR{bkph3d0ZgP1>3qPYpu{sZ%*oCf`dJvo3JY%|z55=H1$I!|keWT4DUYt@!` zO%J_E7nfj@TX|Z0lld=w1HA;H5*`v2h9yx$r>xn>ZIR)S3aF>S30F#(8?jVd$a#$# zhslCCk^o2rAh0EPODxlZ1ht@;dxq#LSXs<9>fNQ@34sTsR-;C zMb!I6);~EvK;AE`OMSXBdT<=4r-wc(df3Q!*Tqg6Ue|m{6PxZsE3N=i;kXf=VcvOc zU#b#cy_hWvc4EEpLkfv+J;@+Fcf|07ZgkZUN}G)|3k%;Ts=fR8fMyiPvM(gy6+}%Q zdjD1FtH=X7p8;9d<1S?3|70OE4A|2z0*9@GpMJ@V*2{H_5DFR9jeQOa?nfQhH~E%l zzNK4I^W84jnlfaeSCZ#@IpO3GL@S@eA5Gk`{}x@SjWB>t79O`#?^zSA6p0?3WUf3g z*N+hEKV(?Ilh73*i&((UxE-3I<76(o*B41$O5WcUf&IuV3%FmygdDxL!wl-B2~Rc)dXc-;gKQ%tr|tik@uSQL>xlO*3#;?D3UD7Z`A(3=@6aOXjb3Z z&s~Kn#Rk`xh>f~MmC;0TZ@sJypqtd#x+S9iO@R|}`1hP*O*3wTdyeBR)&}q^CSjGm zyT)bmXv085hIEv@T>~}n!D}clHC7A;vIo16CCkn~%VTaa5`&P>fI$Er7 z1-hv%4Pwk~joMO`+k(ydH@Wm7g76R*im+8P#07wWWZ0T-O~W?y)tvq>Z=&Q-*njtH z>3Y(q>s?8<8efIw;?{_{Jh?aXlvDZ&*Ln8OXVt@UkRK-sV-i_6LHo>oF6XCEw?p?E zE&GkJTwf)`{LFxexGVnL_WO}|%z#fEp2#mnF7Dlmp6PRx*oxaPD?&z}xVd7sulNFl z>fEiS+9RmP8!~kuiLPw{S`3H)qua8v+v+gfj|WlUf+Bq|0XE!c7enfkQKLb)jYAgC zW#%Q?ZXX5&85c#ec1{IF3nkdqW(uO$>dZF{rI&SNbJBMS<#vgv!UOVt243pYTYAFm zzU%*^=&T=_Y8xGyBB}7+&gIX&Ih;-;VQAO9&PSUe-?JjYv;LAGdWdeM+68iBz>TJ0X5!ZkreIXVyMD3VmcOC$thPtLl*sLZ z+d7#@j7mKh@y!K`@y|xeC93Vploq&Gw5G>@DSdOb6gFA*rV|SyA5lf|qLPk~r0EzB zRq$rYN4fNnjw2ZzPD5HeA4~Sdb~rrCbX7&fp^9kyEuolJlt6$a3! zP&71Q4I~o_#!>dWG;G0rr|ww2t?PRUQ3LK!Y+>pQxZBkKaTW4}Hu`qGi3CB z$b$j*BY?-E!P4z~xSHW8J@X$H%vX#0_iG*8;*c8|x6kGT2zi>^WuEtI(~`i1eIG{L zonnZS)Ip_()PrQwdrU+`R8mU%zUK)KN~eS04QJGl@maYSQboSei1&+CcpLf4cyw#6 ztKJ8dWVf2gN2Vu=hh3x{Rp-9_B%GkLgH0GTkX-7?C`&V028oicX^AVVp_FS^!N$Ae zeLO=SIzY04j}Pj0z7&`N=dl6nv4K5oux-|W03H3Uq(}kQEzTYnHqRYV;o0-Va+37A zKs3*N&7ZwsqvZ3;(z0(}HlCG7e!M8+8x$4xIqpm_ve^B&bdt{rSuccw{IZIn90v&u z9!b)-%tA#g&FiJfswT&Qjdc)TQK05<9-xcoCf)0NV+k?YN3aGeWt>{1R_fGITVh`) zW?zT@do}|qH7f+-VgYZMU^%`;MNU`!y_rK(@I$~I)z4tp*vD=Zn5G}>cOY1u@%YvR z%<##q?zsueXz2BaxmOweT(5#xs(dvOB0UzR?KdaVbZ2sxirZ#;^EJ@8vrIDh zv_%8zkjUhVxR{G7<8F4#%PKYmbN5otqv^I;qnowTg!ltw@ZbZRF5;Q}K^e)%0<5>V z_P6F^tAoE6ufKx%poR@dYuYznF05(Zjk){a#T(CsQXDyM=1(|_P*_?bZF@NGYf|1_ zO60fUkq1GvYn@NY+7!k!kQB@7>S&d^bbJJ#N7#+Sek<9>!jN*TNKtu_?4A4WkZqF^ zlN_w;>BqhyF;fzQ8CDzC9O7h5v^xHxG6`_tFXzd@t^R+*Vr6P&Yo9RabxN~XS z6(cgXZayL8ozF!^(muEKmbY&!bxQmp2@lu@Y-Ah97%P(AN?m=caQ`iC8Bp5=8_-^= zeO$cZ|L%A3yM@vTvO1W#e$yuBSm|nJps$ZO06o5VBlZ~~35QPnQF)5YdtUacY!vV2 zD_lB74c-0)wah5t0x6)ZK&Y(+LgbOj9OkC}qWOB#d}zo1$j1!O@iX9Oi08lM=-JA` z|6Y6Ffo{rCkag{GcfUCCp-!J;exI4zY5+*|1lq)ZNNyJ2;evgmKG8aU2m-86(-YFx z(~<-i6rKayqHHj>Hntc`Gn6gb!&K2&_K@NMH9=9JSy3E;IE2L+_^A8%b$7c(xcM2l z%9|P+JDLtU%F8Po6ChA)etx`+l@-as{K%0q%`!_B5pgUZS`&qqf$}Y>pir21*aeLE z8C8pJQpqZY}&B7rZF3#^i5xJ`M71ipqNA1JZ(_4I6+lN%Zf=HalXVS z6cKx&i;;1OU;g8KOW%{OE~-&F0rnR&0! zd>&R`Vokv2D^5)oL==N(SS| zS-lludONnsnYW83NhjBIYJvvf5XWAh6$0aMnpmzL5Bu(GRJ-ubt#|Hm@|j@@gJ0jp zu0oiMZz5Fs)G2Dly7faypM-J9?ykZ@&yh#YHptH}$W?FVIZ>Ib6AcuGo6TiH8Cd;q zI0fo_awt88NA@e0M@dhv+}S6vCj(BFRd}5tp+;aH=3L&TaY6gDAmEJlDuBNr1SRa3 z{OT)0Zt|=4fC0XWF{myJ6_pKYB_;2JxuJG}gFJR`3Du<+{oF@HU5tQqlqn0Ieq{1l zeJR+aT|U@HhX#Qd{g`}=*wG(G zNXUwrAz_!y{54L4^k-l7oN*-c6g7E8~neZt9 z7j$0j}UJe)NY&X;6^~`+Fe+Irg1wGmk4`2)KS=GT1vd(M0 zlJ6VFE`C%k&O{m`RtD*&lHWMWsBTs!uj3*8>O&VqT|AG#zho@g`Zvx|deZ4WR&Wyn z2g+;X3br;B(Tjzm`qMP`nXy&8Cgi3ne=LY=N_M*G@E^+1!H?obT){poduwaRC%OGh+GGHd#P0Nm;u6ToE-WkA14td=R?{PPoBy zG#66}#vO1^kpd#L0m=X4hz#!f)v*-24Bc)&QDpc3aOx`UnjeEbOr-x7M zaG{wt%Y~fSN7=m2OgP1jKX7Z;X?86GG=)qXXv0<}jOc2Yb`F;*hMm$t8@)`FKN3j8$_H9&N zGpH9!Dy^*NI+ATg*?y~0$ta$L+r&ObQ?yIO%Ve}qEl}z|mE>(bsnheHkw`$W)GKy) zPmkA?zE?ys(76*{k&$H(d3Q}A{sD2`8rKD7?aO?mHjswNT4HW*ktqH;^t*N5mvxWx zm)F9&jT*314qgF=MUS&%`5m7U)qWm&TvPX+`cg|$OwJd&;2 zS0(k`ny~Uo87g4UtX!92Q@AuxgIIU{tbv1h&B4SIUx~uFt4^U4E(S{b57~kq(JHl0 zFK^f4By6qT8~n)~Ml(u_immAIgQl9u2A zZfKrjnTUwVl-@`2^W!FfYjFIP$lLfyxr%4pjlL0B8>jn9k~60(k)C;Syd}#K+_3{l zLi?Cl8Mg8kv~fFAe})UAia6!+Iz@K5Fzj@Jgs;ilO(}| zN*}`%%NPO52=Jlcr#3o$MK$qEMC)YyYmN3kj~g1_@)IytLbuuXp)K zj3eDRv}aF^tcc=OY{bKp$3j&bo1t!fGp%knoG(fc;%omPc{(LGrz7^ui!!V6E!$y< zv-7^{1`3o0WJvo;`He52m!%D0nx2{%dkWmPvJ!Z zGdjy5jrvvIuKMSZ&P$4YbsD&$w{3Qk$O^7o3BDDz@q{q{8&{mG+bld=hc47|y9g62J!anZ5*M4*cEr|%_O z@ax5T55}lIB|+}XI;|a-SBaU^hkRFB3h}BhEeB6aP0$-8pPqyOC}8Dz98 zm)C@%BIQ>sl>WS_S1!H0rcG}VgPGrgFsS_2XDPsx#D_2*PFa2+8dZ}#t}xCjPWfWEH}A6zE< zv<$*`av@u`NND<*r(H_a9?7R!3iraaiNU_mZHvYnlpZ7`Al&H9G-w@*K8Mll+)5IU zbN|SUUo!WP5KQ=n42&3yGeSxiAV zs5#}FhiU&tihLmX=X2%WI23k;_bok?W|??4(D!yJo-GVyV6O(nL?bI`Yp@f7Ze2F8$Q=xbzuW*wR{}vzC&8Tl`p@p!bOSH#zKgr{h9dL@DQZ z9FCk@hB@-W;7hnyvrdY@Luj=;X+=2e96fU=?u>fu2?=?KI0Yi0>w#Glnx!FsSwxjn zNh05qE1sQQ`kp0UPtxTGe;xMuii+9q*w2XgBJA#w`o1h!vMZW9kl+8I5_MGSJ~~$g zK%R0IoJE-Ivn%0|gRCb0HHrFe>Zr`JacOM`e~|JD2Q`Vxc;y0i zreFuc+;z#go@vq)!znSy!VXm;ed}znVpQzsG?Yb9tZX?|S_^2VOd?4WJls1Vn3)Pt9MLS!$_OmbIZa?A!D*7wq40m5( z-B++N3xq=Hn=$1^reH)m_}Wh>83OGhgZStNS#m;oSTwwDQexAO-9ov=?*9TBxleHDW}b$H`oV0?u1?llXMF-trU` zevAh7Fp$ANb1{x|$yCKEdkQ#5f1XAEqVSK#8{*g0sV@{tz9>HHKwk(l zU!sES*2#P<#dX;$;$SJo9?i3>MSq)JKSVf{%;ZwV4##$;$6_(dKUmIvRYyD3`2+!6 zYyc9|xWPdOq4RwswI+xWy1PxqCrgmrQCHX5x}gxOSR{%A5?Yj1r@&YSTrBREsv58< zs+PE0Q~j%^wFTUYtR=E9w26WZfL7vdIbKF)F^$jqr2HvM(5rFSX{3oLHilGs?YRbF8N0Ye>B5{YF1kZ;W!UEH0U!1q$vJHhK-AiuDEcb{A z-FK5=RK8C-nv)pfS{1$MWX{WWg9qh51nZm&QDta(t_BK8mS%Fbre%f4u`8;thl1cF zKzbJ>5?fk~7Ihp!A% zr&GfmJyL%JYOSNLs?IwY2~q-bEPk1&;2J=Gl&}<#^sy*9H#`8p?9cjopkS;H*K7V2 z)m#%2r0B|(M1d)_L;1wjOAT85+G`v-Ym*FHWTW7+Hnj)7Bw~B5pkYT<>pnPF9Ogs< zzAd%}q{s`%oU9b-{R_eW9MedaOT8uNr(|pYCQhuWCb)D1f4qSl5YpuSjGPPBT$(11 zC8EF8H&*2+^#+Fe?KJLwJ$U{}pIDVi&wHHokNr#N*(X=wD8+~uRbCg!lnB*3wt1j- zXgRLAC%4zQCrEds_l^}XvkX<7;wjxbc(1e|eRyPU_qp!&9>3G~?oREQYkf&RTw%L4 zxxe8D4NWCh@~n>+uX}Kz2&Ets-`lDF1I2IPWHfn&{i@%_@<_fJ2* zpGf1v^VA+c7$hH%cHTk0=-#uMy2uU3@#4y_nca;O$}k<47yoqaak0k)O7k%oKZazv zQ}NOs<{|prvde7>KzFpZ(7%XVpT!Jc8JzOn8SFC5d&8)ttXLA~kNk4W{M})t3%cCs ziB%4#&%Lb}_lggIR0@oq;HD10@Ck}~iO9Mz?7)C>5kLksghDLL9p6%B19MkxaXvl5 z^5z<{n{d7hcLZwV*x>Ix@Sl%u7s7iNmxZnRq#}mEf}DNS>Aj*plSEXDp`zK4Q{`=! zyuo5Qt>J-D2Y3z$B})n>)rcQ(cTJ^}k34wNajD)OWyonbF9 zN1vXTO+<4PW}mjx0;aM1%*goTS zX`w1@qU`S*=erBK$kuRLt1@a4cEFl1pctjekI$BDzKwp&^f zvUu*dz4`ZQ=9Kud^0KV>y9H?y0Ahi8m!Y?JbhM&+1G-5D!8a_@j;`VI)#pGwowyO= z#(w`xNg~V8&S)cS^e0EaV2nymP^4>X21#hxc1J7T(WewAJ&XzoeS*@S4o@t6$;%vb za}m5*c|CZ#$nfxu7}KVmP{CofB=NDeP-DrGNL%+aB=hXezL@6Qp#vh+E2@Y2mR^M+;na)EZ*OjWY>YSj?sZETl=Ey@ zv-P5Yzvq!lAa8WNuHW;zm)lj}Uomi}8$qRtscm?S zR9@Vzt=A1?hOha~vH$Esj7B`WJ$L@{6Om z5jhBbM0T!FUXD;vUU8W=4O~?X*19BFd9}FI!^qdw$knYm!Y$&OtDl>jUqiENZ(m=c zpQ)qr{Rj7nM0Y|6XmlT@gw^4CVsiM1&JmLCvuE69Sgfr$8jU(=@EY!t~K`wy^HfMm> zpnER^moG!OqzVm&!#N-b7msK}1SfDiS5}5Z3QW&+lCivMaPop}-!VCXGX7f|%+2vu z_fG$g^ylVoYQDKG?2aJQ5iy)&>QC>_^-s)X9C@g$<@a7JX&sFTx<=}wMWjuIDp`#t zvsm?h|8{7pXcx!?tau2jH$bTwghNTkIHVU*4;D1h$LJBREGLNdIfocdt#~nxI-EW{ zN=PY`5EIH4PpmyXE}@`@X+O5KY+p(C>HDJdSz(a1x3VA^sg>u1wX30V;8c<&#}kf1 z(YOuuTp7pVWgAPnyk7+0#PZUcIdJa89~H2xA?aqmgojyX{^bNtCb&+mhJ*7#$@2ti z48~iiW(}lUsI@EwjbJ%;?q1YU!YmMeG4Y!y?<|Q7<^9l}GF!_JuytC{ z#mgF+XvYOFLuC-KYJFD>UZMI-b^f+Z6+vHR>JB>cN+dm_N`C+__CcXv(3UIvQ(pvm zLfzOUU_&e1rk==)O@Qlwbnv`BV=BBt7v`sZ$t^T%?ke1d{2XL{#Hm{}ak$t8NVL-b z;*ZHVS0g@L>XNJP56TA_dZ*XfH;Kwk4{*3w zOV87GO`=}LS9mu#6nl@^thSAd-pbI%pbH9t2mBquwm_4v5{9z3V+8n;&1HvCBq=g#8ThSKqF zoMk0S&mc%TKV`Kf=2h%B{nqP3Q(66CuEz}oU3UTuLA*;$3MiIfU{|_@CD~~uDYFu| zA zX?mc^1S6et=^P|X#3~a$| zje_ZPLq|>MNCT?_E0kWJ@HXR^K$~e{2)XXi(l)O;X<#2XL}{$6U(Oh#Wn=hR3{2D@ zwT4)seMzf9>AHo>r5S*$clhQ+wTugSXKCv|XL>qz{H$0hgVO$)U%z@t4sMvejd#}0 zZEFHa^yfZlHiK$eHz-C+kM6q8bWh>-Oqua{<9CBtD~jQ&x;(Sk@G#Wz%t>8E3KK=4 zoClU1@a98q+})U(Poapj&rJ{ygRDksGx`1ecJeB)WkQ6>7}bxTSvgUPw~$pFDEDwk zPcOqn)N=sl9$_MGMbFaltlCf%hSusHZhTE?EdTxa*^S2!9qJ7Mz#e-q-JBGJ7B$*u`0aLZUXayu{f~c^g z1pkg|*Gp!AP#ec_vp9WhYW1pC*jwi#zWye?0~6K0a*1W1BxD00;iu6DT@wNb0j)<% z(_<2!iP}v6s$%nsZWL?Wvhn(dkerSqNKcD$UycnQ3OgfbrxMM{pJ=R2?FkN$Kj38^CT0H z6Mu~i(ZIY}8BV1SZZ>^PVC`QrKYyikd`93+HFRE^TC-#}fE=GbY)HNixZ#n~Tx_N5y8|LRfWlq239x00Bq(R5%tOQ0~TKj@U4tQSrCcrc>-8K>TW@U4UtU!$$0NOrI zkbOuP!lU?hOjX#8cZ`NFKf z{w1MexsVM4c`_aOyHQ}4ke@k^<%x7~0CJ@Waf3$!B194Vd?`GS%Rn;td{c|e{TKy} z*=AdYv{@xqE_u6T?J4|3K#nw2Nx`3DN_U$>oXCP zL=B2dZO2OUa@bHKdi!Yt)z8YbNU-tSjzed!vO@hN7__xqPQ=Tqc@(*tvs|<66Dn+& zmma1Y8_?yHm=xqx$f&VpchG-(0h)8EQktJ-=wo$bb_QQrb7BC6=av1B2SC^>@|HYo`40<&PfIJpAG#((PJmEoE1H1Uw~8w;}q^;uSxarjd5pMq>`d`cTjb?kk&&;fJQ& z2sW5M1$slW6g*RudVb)Y=+R*P$4isHa`{=z=H$N!KaauwC+99S=6Kvy%Hom@c;P5> z|GdW&QIq3;{7T&gOxHxL1!c^1(sLMs#a6dC7Np)Q)5QWO`c)LV4n8~TKr|JG5*{$ZcsMrN`Tx=MY4llV0h;ds|EpL=M_Yv70(q@K{>;JnJ2Z- z212^vA}+ygO-yvw8RgQHlSzU zQAp_TN)A|I=+0@OQN%AYh5|Kl(7q6zVefB^e0P#ge^^e$#2&pzP4lWmn*MOD;RyL{ zL0gzmTNdb0X4*?(|21ueZ`l?W3i=lV^^fb~=Vk-Mmla9L8tLm6*cZyDbANIj>j`DlS(`p8o!YMCQLyZ zJH>@vJahX38(}HxTV!&k$9F2wS08=SS+=23;vHLK6fX3%n;%O9BiMbd!Zsxj-dZ!`;dI3sy<*hBwY|)0|lY%Sgg!vC_6t$DP=0{8YoM-L~MB@ z?T~Be#hi!+7xKqgp>B{8Dpomg8h>LAcmz+))1{KTi+2)@|IlPnAc@YIvuC8k8@~$l z1!+ED25fYg>#jwW3NvealNB2Zy)|$bJQSl(3Z*1!0{ZewmX_pLuoO+vE<-s*TZMOp z%*7RmXA%3?1f}N$Adf8XH{yDoB1bFuHR8y}`}u806}em;yfJ)JY+0rC>Y5$V`mqC{ zpsZhINpp4Dy+@fgoYOuS^&=^i!7BZ0(~18yXv?ujo>2Fz>wY-*^@z`|pV>1PGMhEz z(mmd{Dz#RV&5nqd8junQjeSd&GL8!p`>JuuwL;znT&(1U=u#&!Q346*3ey}TCfY*D z>rQ0Ywa@l(nemBG-1Q7HKZ;fRP?Nq=zJQkOcR~H62Q1fIsp~uY%aR|&(*GM9^FG!g zZjfjoV+wHR z9Zt%In4I&Ku6ff9TCS_ogy7dQKx)%b;#o>fU(tV)l=opps5lT;a#fjzaha7PX67WX zQ-wI#i&CThsa(zr49fY5leBQ$3pV~KB%hhIf1Xo9SSXD*$3V_hTK#Y_$2k*ngfAod zq>fh+q=v3i*SuqL*FgzNYJrR))1>LRr%ri&U@$|IE_0(2LI$TrkrqQfxvG{-Emzuvo@xrH_(-Zjr}chjUd?a4cA-!-tM%A70YkFC%#{Ac zBusCKq=$2yd6&gnoKUC<+J7ejl2gu~RMoqtz)egS)2w1A$c3UE_wzxQdmv}m4-b!9 z5DG~1agIyMjbylwadG+E8IThIcJ~2EMOX!5{L)|0?&wt2t^vG*4Wkfk)0bCk;ToR$ zvB`Y`>!jwOJ+x&xIIWs5EaMp8REOuNH zXqH=fu71ny)O8KeF?dpHGL@QVPUi4CCMHmRoqe}r26DReYT3-J=DekoHgy+uAzTxW zf=r*(HV>rz_^k4qV4yVrx+_}w#QlDuEIu0B`Q1pH>7AZ}TLIA}ShOQ+ z;*u`7EQN@g5)^U|yL-DL-d(7-CMXb$xmR3lop_VKLxONeBeC{I*B3tjQcT8$zAGmo zn{en}eCb~N10EkfHW?xp>j#cSMDOVxiFgq9J?+INRA>1D4C?>e)b3hTVt~_`3E7(4 zGs-H<;?U*Gp00P#e6q~$LqSVYsx}Qybow7YQJfP36f{I17mf0!*Nyn3=iL2`w-V~CsFO@^23+AjNPw!Wz!B6ht*U=J%cVzPVKhk-2xjum)mMq$ePHpwk6I^)uWjun_+1fJiS%ob}c@uJN#r8x}i{We6j3co~1TGO&PbfFoRfmKdZ-Q ze4jDo3RhV{1P9gKpeRA zwdx-|uR%wtniZb*uWA%3Q}VGap8Lu2{N6GRH5T-DCA?&mpNSmbe?AB~aKc;g|8c^Z zS~3cgn4NF+YGHE zW|rPHXXEeSxZ>%^J%afv4fpBf&7OI(rTt6p1zTkmzFpA$drqZFW_xD&g{xuQoVC_} zr@^}=rdrjnp1fiuK;%s99?up2B@u)%xHT_vzkGkk{Bna-`G3q5E_gBCu4$LM9-nXm z8U%n=0%{@W#nY4*p*}O!ISwWME!DMaI~^z43~#ed}!*G=C#-cF9q zXKn;9Yx@u|EU=~_pooGctYbZS(1+Cwc;$&a(}pdN4{t|VHp;1Jnat+DQhX4%?2SZ| zfi3!NQCOTk@rM7{E23@t9{#MK9-*1Mmoa}&?g{kMN)|C*$;hI z`IEVY`iY?WDuKW40V%(kE%e*8#}$`#-{4!l{3 z?uaG{bUPQ}@8H$@_zI{ho_}D1$NC-)C$}uuO1+9k&x&mp^YeqA$XL&!^Ea<$ z?QHP(g7}ptdJguubdK@}BLrfVn`;V&wggibVRrl2Wr87Jryfh%lv||L70w`vKfDPP zi}Z(lRgP5y$ow!~J4F(~1&Yk_wBxh~kJiAC;1CULPKFa+TUF8iwku<{i3XFcxLUn5HPvK%Zy=ovp3c3A;@=xyW)H!ziVnkw+z(<* zEXTV?V|k+D`a`rnV>yM#9}1Qz#ECOj37Y)GJVeID`~m&$_hR(f_9rG;f-Bg<-z4=b zw@<&@Jc_L+TF)bPq}?7LeH`@QxvUdYZyN*4Q{;8K%_~X=@o+)f&11HB=hFiRzP2P= z=dY_eKl9m>$@X{GeqM@iwir$y+%KYkRVgR5Qt;SDTOu0(+lb=aTwRfjA$SEXz0&W3 z9VZV;NqPRlH}_FEzxR`V!9qEk#B_IP@HzSz+Om*f!$l~JHKo3_hF(yClZI?m_=e{x z=1+L3)YJ9YgaH7`D@u|6Fg0SrUE9)W<^uwn{G!Ar;s?v+E_Du2I7^s@vRZx4BR%8l zy30o)DaBEP^fbRVYA9!8Pd9yDJKR4qHI|V6KDpRg1abt)O-q zg-=vBUR15|^Buqu!g$S@UYYg}Z}329 zkhkuJxoV!^dc$h|940Qk6trO#Y(BRr{rTzTRvkIp5tLvHNI3TW%$t=fLykql$Y(Yo zZDqS+`!VW5Q9LyR!@FaRc89+WBs)tNV1l-&&vuQf&qjRI=HS<9T+-V}FjBcCr1@}R zORtj3_m#suC7;SnCt&MxG7=gCRBTAEUUBV(NTYB}F>#%jNN@*@+gx*LlRoF#YVC*{ zK8{k2Q=zSVrq*O)>1tm+*DvM{Xc_s*T6^dDV=B4=ZpMNO6j8CJYN7EKYSOhBE0b{? zY`a3)Kn`_oTgGZ)=VGdmFv{mNAXB(kVi|)jJUYK>)2=jti0NPe^$dkWckCbGNlhPV z*@(g##78Tgb3C=ugFex59{x{}_}k=(Ih%cwR_pMT+ka@%$m`4M4R-`J(-Ue;tKY|9SLtr2-g z+7wfGpDFhUJ?V_JR}|j{gss{^O<%XPZ&ueK?by&(&a#y_3y}BZ>`&nexfMkgpUXEV zpVu~*7AdK^Dne9tWWRz!W=lf2{%uLW5{bi&<$7U={qmKhXvql%{mpV>$+_G@DKaNp z|4NO$$PMcdg&!6bwG9{kdrvbo28B&tsu`BYwOU+T9$j4|wvcdL1aXrlZ3vsSg>VuT z*0VSVb~Zhux9a6uN zOnmOySy=$+!U>4LBV{>jl=?3N{PG)WmfNVUWvjeGiT(5#8Pzzhnrxz!*vTzl_d#LB z{;mr3zY#fK>6wDWmEk8nbwXQO;k~y7-A=e7ov5CZiqh3h#!SWqvu>E5-b~~A_=^;d z=ZMiK9s%j%ywK2EfD_ZZrSZKrn;} zmq9KEgo(|R$qH2%t`#_(x?zd_3OCKgyUA{@;P_I$dB~a;WR}phClVZ`wICZZE!zTM-#J&!5ni{+>r3y32mO zp7aWFP>2rnaeg8jHgOxxlm|<4-hGoz$E7{rpF9-kV$$E0|AAJ7->Mypj~Kq9v>BAM zRHAI7+zC$G4naTg9+4h?gzHuegdW7)FyE{UeAyyblLbT3CW9dxL(#eRp?gv9fOcGL zgT6wuKlZUEFL1#Tb)osHyaR!XDU>b=+g&Jh0*WnO(-v=G5y_v1V!)$A}{Ut{`6N&%r$plxZc>HJ%1Y{|3_=vGK11fRvCnn`w?|nDP)W4@MW9iMC@<_HZ=R=0PFfasg?;2nbCb_ZK zH{CiCWEA9`!ariF9e=%u31Sde6VmL|wBngujf|?u@!qm%kc3JH4Y z3Y*;u&Qi)2nkcT)o$YE1%>)10xuw7e*N|vyrC6$;Ai@-Ne-m|Hhw{_X?R|~zRYquW zpuk*hz>!*dWe~MGLz4O_gicRZtyOsVjjZfMk{v{sw1*JTqNlzi?H>wUB+EKeeP_{n zah)U^D{gvT)h9-;_|Na?G?T^fIgX~^tOy5!4$!ed6If!pED$%lTOYC zN)!QtmgQ7=&_3^H3xEuOYZ36-83S%IcP%N-_X~)JawgJJGE2wbkRv-6go#ZLM=LPh zw16r-leiA_Fc6x_V!*yKi zkSnu74thd4u{^0}R((_XsY68Lgv9T&+DBx;lYxLo3AZ@PNVcP(Si>V|ROI5261T2K zECOsM4W?PxY*ij7Wg3{*OR@v$r!|3Wg#K)OZfPUtWsteJlZRcWZ-I-<^7E81m>8#w z`+Nsv&O{v!z>9U&%I8prtdrl?6xUM}3re7!Cl0y?{qSPSejBR;MkD8kXE^uUdSnToZ-sm~&>e)SSf7m&p`+$#>~ zuMivRw7NfB2_?F`xsQ6p*U6_Dd92g$9EJgDsOO{)O>02v=_FH8XYlsR{30!cWj zvzqSiW#IQ{*Y9BQG!K_IILufB`XgFSwBxMThIQGtXnxca_==S;o%PUh{Op`au= zrEUnhL!hDE4D!W1GW)14M*V!Jz*={~crWm8S+oqKgcE_)5Dq5F1`;%IZEjTqAjs3M z7`Lavs)`jG5aTtoOO!DZ3|APurM{X-4+=892(huIM9oHmbQled@;ELwU=RyZ-~iH4 z@hb8aXVjIZ<#Ku?@kNbLE`@j&Dzu#-F5ek#tN~_Yo9wV!8gMLh87~WjkO{CYGIb-4 zRcxB9n0rwb1-U+o{?;y3pbs>Klk2sT6P_nO(%yIb%{a8S&Q~NDlHY&GGTlxdD`@u# z)Fc{lyT|NpIxpJ5_d#Unup70wuOxNT|9}cFO<@V1DD!pYopzVJtR=CG1NF26cH{WD zUh9dtGCzxeF*lxa3?SMYxEKtgQE)%^N?+m?ox=C{IZVVz=%jxu!>9rhOJ2OPs7v*-1F9=+u{V*!NP8Q%_gR5DvGiq z>YtU6I=QM+wB@Dl#9Z~t@VHp=2F^>-sOp1}JzqnK{@Y6j&{8?ci}@P`Yg4`-vNi{8}!%tw& z4ZvEqI$(g53Jb7f1i=)7?G&o|#PG~)DX~E=%ziF7qnI15c-d>d5!bUlT5!xmv`%yi zw)MQK8!vqerYZqSP+Mb8nnoIParQ9jL2FX~Y_T&+5oQ2>%QvTSMnPlQgqmoyLJ4kU zZ^lC+{>DC+2MagTF4uY&!~yH*hzDfwpumtD-T`n@DN`+tJ3!pvjkbftsM8lZXLJ_I zM?>zSgP604Bv z1W`GkP)dV`U7Udueg}h$YnQ(;_N0M0uN_p$yy3_|vt71DRfR>|z+ZZ`zEm`w)pOM7 zP?p#zxR|Sg%biN}(oY{y`TgzvgP{WaTtW$U%YWy;R<&;4nlKbO)s z2w8QX1q1^)6>yB06-ENaNc0_#6R;zu^*kTjEqb!0T-iV)G;Si+Bdbh@V(O=~Z{JwRYq>9^8^ndM7Il96og9ix2oE4;|8Vvhm& zq6#Jf%~vHE<1*)rg>TxhYy@~7UGLX)I{?;+Tj>2v2* zMQZ@4JxxB&G|4Q49sEkNBAQ)df&0Hswn8Jc*Inca9_+Qw38O$EiTr)E} zk7Eae?UIud$)46-?k9u?Ygd){IfR_zas?p}0Y#U+nFUoAwY8-Qf-ryP@R( zJCxAWX1Pw+Glp0j#YW0n)r^)L0Ls{e`1AoIuwKf{gLs);2HWM7Fna;LC19#3UZaTi zdA?JbLqrGhR^kHxovecFtHfd=!@kKZAHaO+>c}}^DU?>5s|4~n=iOP#m3wgT2JUPAKW{pFbfzb(PP1${$ai>7ukE* zVW{pFa(h?SW_31NRY(`$QSH1l0~UPyYccMyPr~pwtzWn3=Y#A&S%}GZl`u+!$E-?U zElw$S3rbx*XS(x4mmv6GC5j1_^SH}19ihOXB}Po-99f#?cN$L{tlMmQPkjDQ3d|E| z=X><*@pU+PdQ61G!GQrfZ@uNCKvqL%&ss2?qGT|w5Ixd6iyi>F3gIFFYaLKg@CnHI zPyy!vx11K@b>PcwLfKvC^h{$n7hwrb;R6E0$TgS$j5c?46)m zMVXlxJY9P0knv*X#&S_rB!RO^(pj_Q$8+|>H5u;DLcEYAc~O>)wI@jaC;^z5Y`QK4S~?vAlm5ilv1`!-t3=`OWMp%4rR7rtir zHhx*%Z#SUIC}5(*SQBO~QHX#mGr&L)5E}@V13Hz6vA{B5gbYX#FO&gF<|UJ%ATa_4 z0ud9#NMMB0Fqo!hn5=FMC~r6eN`)x148y2`P*wEhgQ9fE)jFXkaN@ZjpP7aD<7N%q&&Z zAuWSdi%6uV;5gVo62j}aBJqq&K{ae1CPECvCFUF>5GyJ0$x!1$1h+CjbrS;8v# zp4Gd6>;@YUGlk?c^IPUY>teziT`_O3ixoMp-Dk;K3i`qgIFY@|!36cy_8?H64}>D; z!i%VK%tG<13=@o)JxvWPFJdUQBbWJRC1o@PgoNaRZbmmWzB0;Amas0x;c!{m@V(!2 zE@1IR6te(^K%$DKl40uFrbHaw*D{x9EVSJK+zLTF;HU4=k9;yqjV+@wm=<~gD>rwF z*j|>UMBAKcByU^}X@|!@@Sh};bVGg$8eMu6#{&{U?3PIKM9?b4MbI21JgsigE964NF3*zkQK`KNM<1yTLwYt5P zB_Lf(6>yp(O^NU=-Koqw^ML5~lCfKeXs^voe#m<1HJrxAt#@c{#{Om2by}Y}>j=v9 zZ-*+4`=`ff1X2RSiyb(M1 zc8L)nr59lwiFez%&%vdzMz>&VXACkEcW%CDj%9V?6niw~EEKcxPqxEY9EwYA6`~Sw zOd@F6B5^)R&>aQ5fj`sPM@X@0AT|8UQclgcMG^Q?9tT|pxc@!OpGVk-C5~Zl`kd=U zBcYb7+4%GJ|Ku&LRZGxk9Wl|7Kt7`Dt$ed!D`v>(^!j-W6*|qNOyNNDC5I9a zGA4Y(S%VQ?KeFLV7zWX6){^~Pd=Xc6#5~rUk>ok9+pW4Eg}a>=xCNZnBA5iSl8u-2 z|LzoCe|hS^Gcr=S-%mGTlTdzsPbk8b6GFYIN< ztC}(=`zTr5S-x;=%>t@)fMb#VX_xy}87>ydqfCvsyR?i51P6d;%hU|gZVB=sFu9<- zk;=rHANKxqt9Wyg)-OR1y+!!LEZMk&RnIxhFq>M?9U)_M%AyJpEOa^*D}Z|(SxN;` zPwV6o{*;DwCr;KZNw98|>2dLDUA?D;{`I#7(Cb_zHo<)8mm;tln4U@?`XQyKt@g+# z(elPYJ_s??_5gK*X*_?QqY=BxyfQ3yk!uHXuX=g&hFMk*(LX#F@XS;3W-CL>cyXH%%GHG72+Q(S4t zlLc(?D3Xw&CMl0vA}Cve6xfyX&1NwiBE}m`gB+%{zoF)Tiqf6z)$~v1^BEKrzaX8$ zy%7=LDa7p6*-}N)&8QS=rA?ICUiThn4RTs)NUK52qgkS1-anKVJ%eD9!nLg52N0Az z@m+paHkp^T4$1kU6GiushxA^l!zQM~4v1a?DWOl+Nv~m`=raMQ_bP%E`ZIk{9>R7&*+>Z1}O*z3rEv$=u`V&EhC`=c{=0Ig?1(;t#r5 zSYjPZR(fdKXv2qU$y_rA`MA z@}6{a6WJa}KxXByuo<_*Y|m2pD;IqwFWmZML>7CKSYMhWHn7NlW+o7fW0gJWY_0oQTxtYVE7v{yx(Ai_ zccM+hv(HTOr@*TUD8w413&3*<4B6}Fs3X0tWL(>0k`s?HzBu>WWpw&NdAyS8;>Gi$ zFdi)q|4heJWSNXn_J>_l=}w1PRdMWO#K&_v`+J~p(t+#k#0Xl3Sy-4@H~DOtv`)Sp zyG3W(`GO!uU34%BiheNgc_K^xH4p#yCoopt5!S>Nh1Aa3Jah4` zIdx_0DOR}#Zlib04pN>kdu*H$R47Kqn+b8Y&Iv4a=D2#_Aih1pp_92fHk7&FQ05Nk$phr;aoGC^4NQ{R`kC0 zH0*a}2fCaDQl@+K{tQ5m#|*mYOu_$aY>!WZj(zx9ZHd;7yzO=tX5f3a@6^~ouM0+PcgIxS5>mgUAbmefb%8oLj1ftH}< z|Gw!8+8<|fg25>twJ`U8gisGJDjP$t>>JI~tw3lJEjt(L!`qv`Ox#S7r@dkRhM3~E zJ*DNqF&YxC3VMY|p;Y3YXm4y-hWs?8I&2iAW#bFg<1V&xxLhD`ob=j~Kw=)8b&}qi zdey=A)QO39txm>#YO+Ve7^kROB_h=2Cc_Lj6IE*_Ji4rTY~s?m%ESK6nkhryYB6|F zMI*)LcKZabmnm0Qcn>(;K%S`>&+jORn<`!A)Es+c*o8w25y4$UI`kvkBj-pOFI0mH zHNgn68{r?Rc(|sE8ara=a3>neg8)HH)d(v9kxC5qQHE0ip(8UdQ-_&`U<0H8AO7?( zFh%KWO8u^?0Loxalbhn0tlDH=@<8}TD~cZrP|IXRra25Yj zza$SY<=Vv(O!g}#Rj8=+mg8{@i1y`-R*S~{M()L3ZtIHJq_wzManXs=Gowh>Dx4Po zE^o&dkru3R0hdQU9g7Ar9s2{F*z9i3i#nokG99=Bg52eV9)HUQ98ODbs67#Co&`Ti zl`Fw%799q9a~(;ZVlWS1Ct@HDA>*=Ce7K%8A%v$sq9v_j^P*!7un;{jSPf zK@T_DbFW^#xC*|8RJ%r14I>jI)3M>imrQH>OsSkq_%iN`Wi~;d^W$DBsGDjHd^M6! zHFzzV(oC@{{*1)Yvn2x|RCJDDm9#cJUVwlLak6sx5*qkbs|^KVqq>g7vmHn0Cib(U z(Zv&JwjC;fYAw-`HE7TP3w@KNV!^aw;j?aeO)!~gE{<(Zgitg{<|q#509K}}F(c(n z7XuM78ULbqK77$QTW-j?rultTB#j6XL0)u9Wj1kCoTtjyH(TdfUg?%_$2fvwOA0sl zPBimLAX%E6$|L0SpDeN*3at&I1z-7A91ZVt*rYl+F5s=+>{^t~D5iie$v%MF;{_Ng zxirQczO1v?522PvZmesFvQ=XK4pD)cDnbW*Ih2Ro*w{^K@Ytk#s%ifHW|Ep|M{4AF zauUGcv;IovB?{PT$XE6~FVd&_;^lc5)u-AR{7#%96?w&)DVa_Jsrf5eHeW8sq7YP0 zlZZ3LfES*ZNu3AnfQ@Me#nOx~RotnvPsD?l z_ooTpf755|8qf~s+#$>G7hiadd@gq$iEfV=M;V=#(h&vox)QvNztkF=s?hN{(rPzK z>;P44;SuP(mKk-SYB;zi1pq{UK^d5VYk&f9df`CYV1V(2#FUx}X5@#SPNKl_a&q%2 zMU-5z07yk;Rdr2m-Szq^7z3!8+S=CM(OHuPYT||P_74mW4UdeD-5jYHs~oIsY*x-L zs2``*z`$utMppc~P*71t@n#83EM}_f`HKo@)B4Wq{ezx|i|^ilxHU=dTl(^qcN!!D zs+yQ8YCZw1ltXw-MN$|TTI~|aAD%R_#L#6_Vimc}h%m>$U5kC?rB#2pt}O#kVXFYE0UaHp!)A~>c~$XizGe~NI_sFXogvF5 z<2MRC7&}ozy;!S!&Miw}cx_Nz=Q#m}9(aw$i9eGL-RPlFV?mydv)_I;NX3#*pI>1V z>tyBl=}pb@Xl-L>@9;dN?Mt1qrPtKGZgchf#b~-pB@%u%U z0rMB8)3y<>_TO_!jLp+0jiiV%Dz5hCnyO+ppTTJ4eH)W{1EDPj3Il@V_NM2$lnD<5 z?=dhQ_I^6on2dp-uY}Kx3$PjRV&>;}jvbh6f-s@SG?kQd8%pa%KgusKKH+*6K__9^ zA{NR90BcBq=|$y)C6_IM0KwSx1dL*7&SksTnva4TxUkD^0Ia=MTs=L5df|Z)V@8x) zndz+I(}t{ig3%l$)i{NZdrRzWrBTL7=40}qUv|B-dP#P+Rq=UT;~>=6?!J&rs=b4r z@~f2l&*FUxf_7B^_-W*gQfSDg1sKfw@jgv1b?e_NN!Dr30nM74Nk+P4FqAYXO+(Bp z#0I}h*1Xbdn6|%EcW%EbIH0;U?G@tp3sQ8sv`8|HhsJYR$8T8|R!^Bd5 zd*020azbzJEvH%qm@P!K?>#fiVFM;U@p=E7*&%od{I1s7_fM(G^Yrez16G_lT<&kWn6AXufX zII5sAdh+|`E%a00t5*uzC`FvCLaC9iig&lmHB)u>r!G4LwiW^ngWtzET!kF35g6@P z^q)A$3P^(xzkWP`wj&q1uT8z$j*fX{Ek4bx6c%w?fa!+%tiF0;+IQihWnzGF$x5Pg$S`Q6oJ-^Nn1_W{odI~%} z2Zl+L>L#?`^5W)4KJMRnIDhg}niU`UIfe7O9QjNdFhG(!5b`WgL_xIIqchT zDZNbPO-b%5qSACmoeP70o&xV{U>}>NKaLt-t2^BK5ptLv`kAJ?7_{`p$8sR9NbI7a zhncZhnqVVHD%%}W4ryo~@|>Who6cG*sr?X;Yn^txe!9QK9-5slh&muwVfb)WXYHB-0Lma zd1;`jr9iX6&D6LxD4(Sg1a1H3^B<4Nimzoy+}@0&QZ!QuQzyp-d}7`sMIRVSq9lix z#H>`4U3=lTW%YS)&IrQplJjqlnmXbv>)C};#rVA1N!nx0UqOYg`KtMc9!| z-V-fR3u{nVs2ChM-LFSxw1FJ2+bT}q>E`Fu{;Mjj5C1#FE$;%vm|HQP2 zGtK6Di6_(3d$B}b&DE`S*Kypwk3!Cz`_7;_uI!%0c}V|1+t~uPXIt!MBM;nMoP~Mk zmZPLHb;suhJDpDQb8Rm#%hlc!Yd?+h1(S80&)v1Md2)yhEzVfwzZjTr_iqkxT&-@u z?$_!%6cSCkxjFHX+jxPai!h}lHN<7-)$d&wtB|sFrLQ+MdM{Az;HKdCexnZ4N@oD$ z%K6dC`@*iA@0K@I)VV8v47S@{3Ko#B>8s4?=`M4^CizZXaar>yf1M7Iv*9>|E3`7a zmB-6VyS*%kJyY_)Dx{+8iIsL-$a4P2sDB(!*(aBQh3*?ho68P1=08kRAt?~4W~Z#PICr{-hwDZtMjhn3Th$E@9?yM>`q}lOBlxEbWlc2fyiH4aI7gP!v+C*D z3umgB<0i{Er%vd}Nsk{iGu$+_xs;)4>-DhQ<(A0sfwjtt-1B_)~EGb-};4n0#JYv*_ed_72}%NF|{0>=CwbPbpKO- z44Oi-$6V+J;x;nu)y}m0BBt-j+@c3)*5rTi_H6p`{76w{GOjL?n?$(j^Hww6or}ZN zL*S{ECHP+UD)D+fMpRg^^(Iu&OqO{&O?y-0Ek*{NYag~U`f&YE!5?p%3w3*Udw!2U z&3jYcRy*^7P378))NO3i>VBZ%pS6dI#0}QT4>o#62zy!@oJN4ezW^X;Dv2B64d$#& z*bKg>$&ajbUFhHc;-rwzj|>+lKVG5#dHzoLrzYIsWgsx&%}3$6vb5rY z$+*~QGxFtp@7J$(h<}MnKesk-tG1n6Nw}jF_nW$q)cE|VIpfv&=aIt@J6GeE* z^a8|!M#j@2Q%vI{DgUL>Paxl3{QUJZi4RDIz#*`B65KL=1gWaxE4T>2Onr4l7}f2| zJyu`)+4D%DM}r^w2cBt*5nS|(ZUxt72D~5PRDy5`0hsmj=rt@Dg#{;^nv3yi1B@VM z;3S@7Gav{BL97BSbU=X)<^Z6a)N42r^knneuZ3%Wcu8PO65NgCR7pBQ+Oe0*N13F= za)AY8)E$sg-di$WVi^QuSueMgRsR&;N{{gNjK^(PETvK<+ailKB1?+p_3_$rXr42N zz#(HAY86n{%F?g|4Kl_LODCT@OtQg&BVsY8M`^6II93dZ6nKiyx^{My44~7~56JfT z^k%noYbq2=%&`U(FTIo*7gK)=%kZ2&wdX zP~o>QoU!%uO8jwn=-Oo&B(wZzswgPSD)TB?E33~UZCfkJf(XrN&tZh0q}NwM3<;pa zLkOG(!tOwjv^4Wr3 z@u`6sc-35vY#xSJGG|PRU};5fQ;O)88HD(ZxBIz)$53BvF@KQTT1<+p_7$6e%<~6f zN>QLL<$Tc3OvU5Wr&?)fYKevnNDE$&#z+~pD5$e6-H$IgtSpdTE#LqO&3G6Bi@;pS zr0=8Pv=Jzlb`5e|XsHFU!6sc~f^uQOY)Fp81qy3+IpY?EZ3(LCmbdX-s-1eT!!hi;(L{v8|tX?0)yA`WA)1(=S4uWCZHvnWm-ahaoW&$U2@79ch( zbUO=VONjsXxcrAj{h4JbC%%I7jf(bEE-Lt>?!hlfQ`NkeRtaHSxqdQ2j1rgjEr5el z6y2NadcjpDl(cJcg|D$rvxS*4JzBRzT^>m@g zjkXF=T7x?)g-E9l2UfQL_;;!=!OFxiWo2jm-hylF2bh#*-FL z{&;!*4%avJSpFu}9L&QpmB0HH0+k-E=BY4`p}{QZckl&9#MUer$MaRv_?F-{k+ zDTaZfiDi=s?FAw2zpLBBF0>~dP^`2%0&1#20<;&4^6Q+uZEG5$-j_C7dvu9?kK6kO ztU!t*U>-TL@Vk>fkrg29!U$+QJ7Oi9YSsUfDLtLB!)~kaZw2VZA^@kIrlvqvgl2IZ zNVTT*o;6tOWjBTdR_RFPfwIyz+tD|NL*K>ysvd8YzxmCr&~~M-_db^G<`R}_b$DI1%-w^Kv$Y5uKZxyupsO{SF z&F);PaUUp)(9=5tvij3^@OJX(>FGTssBpWyJuWYFJoCx0Ox`pn1{7(1Lo~F}e#tv* z*e7u6q@5M%-rP`iB0HU-LyogZGO27RVHqj58TlS~E!E-{Co%1dZ2uAyE%x1Tj=%)u zCWN03YUTyq$h=BQx?Qma@Y8|+bY~Zt=-};as7FD%CS-C6Oki$M&mHjD?H0n{ywMgH zzS0u>bjI*-#_9cnp5UU`->J_@}j)=qgB_lvpETUxqm<$ z)QPWc%dhn6e=jd1ffdALz2R}(P~OUigxk8MfqH9!eU4DCs@!>R z7KNI$4bDq*Z$tByDbOUlyC5Xk6KUTnM??wq1!_L}wF4(HvY2+o;g;?%ZEv;Pj>srX zTiKC!6z1eR#k*73! zGq>vAdUjMneDRFo><+V>3ad>s-tu|WmWJhYG{gi6G0l2ulKk?*li}c`#`Mr>a_wCN zVeaqb3*nl3j^SjTyI=#MmyozUOM{_ZERPTBB`O^H%4pT-cyuxO0W81l{BoDC6`1hz zr4O0s^Ek+2r?x+2tSx)Y@$hzE$Sf51YC;p#E|-=2WX=2SD+D9AqYtoi#X?;5(hRv% z&KQcndMV|~<3Rb_0>H5Klg?jt(@tS;Hmkv2?`E>mW77HAI%mjyU29wy`bhAhjaE=< z=!(^ueKX7bSAw*nx^3mdp7lE*M}XqEdR_RxgOmc!mD-$Mj}y96=V30}EAz!#cm8-* zB;d;bMj0E&9@?Ybwx?+k?I^$rJ@QQ)6myK+BeJdIgpwEtWi@vJ?x(=7cenKUo}SSs zLq$MWS?_G~?^}%mb?3>yv&bB{<;zZ;)QgjH2CozDJs5xferXc;``e zOy#DZL0na!w3Sn5Pq;Xbx^(o4&*>ZXLA?qWdhR||SR=i^Ut06^4`kjvpjXpt5Zm*lvSD}y`6@OY{H+$$4A0spOf8VeIfs91yQk6#XK%W@VK$xqh z{XaW$^t~6%hP9ZSAHgrOYsY56w?7)&v1(MXHD4V6Is%}mKLwBI0RqAD@?m0UVYvk*IpsO&S;`_JEQs1#7I}mMq7@;}!P$lDvG1j6 z*yFmIMN)Giyci5GFC;I=R9Baw1%*Jd&Car(DBN%D=(g0np<%db#Q1dk+4C1WFP~~| zJ=s0j;cH2u!<>wQ~-^UEjjiwFWqnW6)T(XgkuW~47#ENhvdP9+YaiTkcYn=@*;+P}s zNtL+4#%uXLNsMgGE2MYh@G$aq&PkQL=X+xyvZRur9D9UD&2HF}RcFuD zsGAbRV!nYJ_cXNR)%~XPGDO0OoW#nS!rA@3POl44!te2SV;v({t|5`~g1MAn!x547l&CgN1My zy&;{4*sjGW7`58qldCXXX(1dp+R!8r3P_vd{VX|VB9vu}=NUlGX6Dhwr9U3WDnxV7 zuz9E>?c%yg&i4|Y&yvWRnv@y;WWO5=_^R+nlIh@&JKXFBf0sDTlz4#_%kzWOM}(AQ zu~{TX7t}hR^g{g`q4FQ@L}rQ%<@yDZZL3vT20NUWDn>T)e~^^sV^ARRs9Q(O^F=lymeC$;cCA&8)^Emk8hHHG z(ja9_#`8_>xPfrz3bcw?TVnk0`L=p6RlFl%@aEf`Fw11Q0`0e2p@PFtemQ{_BKoal zMQ~9q@;>2wAI7gp&D()EOyvWH)iRq@lKsW-;F0I4xgysbC`G9Owf>DC*JPUsrO=O3 z8`q&M1n=2(pTQH*fcb$KR)$>UeV0xiHC@Y=ZqSYciMPnAcmTY_C&AO9@gZI9jbP$J zzFgyS$Q(~-gm?%4Ci7eVO183Tsq0wE!C2C;N5QKCCjnCsE?K;1PkwXaBHPEw%&7hA zg#%yj>Az}mg*x z3N3`S_Yd@0?!`5PhF_}J$Sntk8ps?nIFQZ&=|0{9*8b*3%(SliI_>D@=302_{@aIs z(YzUKA5TOPUT_nB<1NMf+39$0qm|9y{v_pz2CMru&)15hn8Xn{_RC3-pNVSnnUC|G zTRUfX?-5{fm7kKYJw^5GYrs_Cb62c#U;I6Ey)Eaymb1=GN75b0)7W>p|NeLYb27XP zDQo@>7s|D*f9q%BR~#>%DagooSHC@jt-by445w}zIH#3q^@2wHr zNg^OBJVRhK8@`unRfXUPBPlA#oT)HhY(>#9AbtA}Y1s&gTiC`TZjMxhqK64hOg+ca zp_fy(l8J)j)6D4c&JI8J?zs4!!QjXU9!>PmCv@Bzn=?WTf3pH){BOv9?61I-)oP^5 zYNHWf^X`VUrr>qvM~MY3vgxv18CLe<-3@6257PL*9Wm%`ITT$j#pu2%$KbCZhmS$)ZGU|QC-9t;@ym^N`J<9l*A07knY*{=Yjyw*Ci z#rvl(REB5IdhTTJH99LAF56Is-vc1R=@9&vJC(Z#gLKbe70xe?l~Ti1m#a?F(c4tr zu+FKtcrA#=ZPHqdBQnKU>P;E9-iRlF#|QpqlzY;m{wQbX zGzIOoasHZ(;1MubI`i@SbzLo#|dN=eG|yO3J=Wn!bb$Rmf3 zi9hG|(ImplcdLCGJW`|T;+K$Rtc@$C`^<;VkTbq==HH-zK z`?_Rwx;R%Fvd?bIu(*%{c>g?_-yg-rJ6UfDzuQ{V-&bxn;)OD`J1t>MBd>fXWhy}n z3vCUa5Wg%A9{<}M6yWmKOj>5V@3OkYg^SuG;P@(`Bq#mOvg^%d0Tvk@+=G=&kC^$b zg|FV9i99qBc|Zx&e`S2ol@e@f)6l*W23U!0Qs|aPooXmKM z&vT#FpZ%|Qz@z4a!fg?_56*vKskZg?cQ2d!X-G*K5?BCFx}OsManz44qT>p1n%_5v zcKgJA%J^yDL)YDjC?B9Ix;nH8!_?cS9>QRMLM|cKTTia84ov;idF_|4E}<}ie9U>S z`y=(o#eqrglwvxg;`K>uo~QQ*9cSu(;nFF(0xl0*#<^?Jh(ND4cc`W*l|)Pz~XdI4F}ooP~1=!iD*y!*kj|!^JGf{*qE*ywnTX0hL3vgd{b27&sSc1V;(JP1q&FpNQQ=- zeg-ZHxI+oJ_f@dC^X1EEy@cqHUmMOw+=Lf0@OB#12Cqk+Qoqe}rHvXOT^T?hE@&sY zDjG6zIymqj-ioa3N=I~EOIr~iK0S^v_sOpu zo6(}m3W!bxgi$R~^;{)78zPAXKOpBbQ0;U4@|{#;&}#LZrMlh(i`czjucM5ggihM!>>cs3rr(X;%mg!5DDB z4lHb_tg6y9$SkfdUfcfwrwSSFKwfp=;7B)+R=O4~97_YL`|a5GLR=~?zi?I?Qw6+MVaFZy>Oo0fq|14q zb>0o07E@okCLh8D67ZpKQseS-XDvSohqnbqwsR7i`T+`aNN*&LHsar#DJ zEKgNaOJZ$p+8JX2OugyIhb{fHjEv0bX-Vi@c&za^0TL zf}ShJ#}UrPSYE;c0b4LHVz>Bs{o1H?Fs-{;O6jkp`k0e_Dn%{FsYlki=gG~UjLn|= z3vHZF+S2C12HrN0#Ti|wamlNU=XMy3F>;Ye`HzW>54d}^ntl9mK$i~GU;9EqDJ^3c za(ZyeY~C!GO=B6RF^Hk^i-wuUn=DpoCqt}%7g(Kx>NaIrCT`lju(V*<=o5nWi-mR{ zcR2kXs~@iDms|1sZ@$$gJ!aooG2XFMu(IcxbwdR+S?677_`*Q!Z!UR^M_M8*Hlr|* z4*QA?v=43MNH^$rjI2B6%%y|0Yls5M<9lucgDcP%Q!EBRQ;0mxIOk-TU76+)D)aj- z61g^frAioibmsR0!8!}YfrGvM=4anp4<6}Wd15pt*Uz8W9Y|m(XSz8Y*Y8E?7n}8q zwsimXL-H4oTPMJ0maSfFGgg)hsu&;GS#C3ZbQbq6;B{Bra`~Vq6}!aS-wWkDJrTrmXg^gevxsC_Hpr zyOG1dizi*uGWO*sij~4Hk!Fs6P3j?TeSzI1hqh)swcv`*oN!eFnAIz1xyax#m@edr z_3iKDp+8wzP}O6<#>Y4a%w|5o&)C3ajhjJ7&`7$nI9&Ox{E0)9q`bb$kY73itq^{kEOcv299w__dW#0Sxd0PTsQmLW*Zuo2;!%?^ZX{B+IPDy1dXRXML|Ev4!9 zKWDjBnYZ*1KD+LAYyYW^ik166Gb2lyGhVg)lt1G3DwE~Ou%j)gg`jkpITrS#O^XH8 z#k^AK2M?yiEoTgd;TWWLj6=BP!_w)YwFVJi{o**t?telfJr)dBcQ& zV=>7}o-0=e&Y^J?U9}^uS5;U(4*Q$qW=cFRe~#¬>#pUy39oeb>wXU|W^Z)qh9J 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 z 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�a*q+Zg%&es~r5T=>!bZe* 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

e5MmLNu!4V=L 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⪻i(omOL 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�{Hz17`g$SQP}PqGZ^E1;GE}=fPM%dr@>0pH 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 RtaXEo&=HCAE^cP~{#BJ# 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

!j%|E(-xt-t#St^Y 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

dA)u!8 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

x@&}3% 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