├── Pointer ├── activatePointer.cs ├── getPointerStatus.cs ├── getPointerValidInfo.cs ├── pointerDestinationInfo.cs ├── getStraightPointerHitObject.cs ├── pointerDestinationInfoExit.cs ├── AltSetPointerDestinationMarkerSettings.cs ├── PointerRenderers │ ├── StraightPointer │ │ ├── SetStraightPointerColor.cs │ │ ├── SetStraightPointerColor.cs.meta │ │ ├── SetStraightPointerCustomAppearance.cs.meta │ │ ├── SetStraightPointerAppearanceSettings.cs.meta │ │ ├── SetStraightPointerCustomAppearance.cs │ │ └── SetStraightPointerAppearanceSettings.cs │ ├── BezierPointer │ │ ├── SetBezierPointerRenderSettings.cs │ │ ├── SetBezierPointerGeneralApperance.cs │ │ ├── SetBezierPointerCustomApperanceSettings.cs │ │ ├── SetBezierPointerApperance.cs.meta │ │ ├── SetBezierPointerGeneralApperance.cs.meta │ │ ├── SetBezierPointerRenderSettings.cs.meta │ │ ├── SetBezierPointerCustomApperanceSettings.cs.meta │ │ └── SetBezierPointerApperance.cs │ ├── BezierPointer.meta │ └── StraightPointer.meta ├── PointerRenderers.meta ├── activatePointer.cs.meta ├── getPointerStatus.cs.meta ├── pointerDestinationInfo.cs.meta ├── pointerDestinationInfoExit.cs.meta ├── SetPointerInteractionSettings.cs.meta ├── AltSetPointerDestinationMarkerSettings.cs.meta ├── SetPointerDestinationMarkerSettings.cs.meta ├── SetPointerDestinationMarkerSettings.cs └── SetPointerInteractionSettings.cs ├── Scripts ├── UI │ ├── SetUiCanvas.cs │ └── SetUiCanvas.cs.meta ├── UI.meta ├── SetBodyPhysicsEnableTeleport.cs.meta ├── SetBodyPhysicsSnapToFloorSettings.cs.meta ├── SetBodyPhysicsBodyCollisionSettings.cs.meta ├── SetBodyPhysicsEnableTeleport.cs ├── SetBodyPhysicsBodyCollisionSettings.cs └── SetBodyPhysicsSnapToFloorSettings.cs ├── TriggerEvents ├── GetGripAxis.cs ├── GetGrabPressed.cs ├── GetGripClicked.cs ├── GetGripPressed.cs ├── GetGripTouched.cs ├── GetMenuPressed.cs ├── GetTriggerAxis.cs ├── GetUsePressed.cs ├── SetGripClicked.cs ├── GetAnyButtonDown.cs ├── GetTouchpadAngle.cs ├── GetTouchpadAxis.cs ├── GetButtonOnePressed.cs ├── GetButtonOneTouched.cs ├── GetButtonTwoPressed.cs ├── GetButtonTwoTouched.cs ├── GetControllerActive.cs ├── GetGripAxisChanged.cs ├── GetPointerPressed.cs ├── GetTouchpadPressed.cs ├── GetTouchpadTouched.cs ├── GetTriggerClicked.cs ├── GetTriggerTouched.cs ├── GetUiClickPressed.cs ├── SetControllerAxis.cs ├── GetTriggerAxisChanged.cs ├── Haptics │ └── HapticRumble.cs ├── GetGripHairlinePressed.cs ├── GetTouchpadAxisChanged.cs ├── GetTriggerHairlinePressed.cs ├── Controller │ ├── getControllerVisible.cs │ ├── setControllerOpacity.cs │ ├── getControllerVelocity.cs │ ├── toggleHighlightObject.cs │ ├── toggleControllerVisbility.cs │ ├── getControllerVelocity.cs.meta │ ├── getControllerVisible.cs.meta │ ├── setControllerOpacity.cs.meta │ └── toggleControllerVisbility.cs.meta ├── Controller.meta ├── Haptics.meta ├── GetGripAxis.cs.meta ├── GetAnyButtonDown.cs.meta ├── GetGrabPressed.cs.meta ├── GetGripClicked.cs.meta ├── GetGripPressed.cs.meta ├── GetGripTouched.cs.meta ├── GetMenuPressed.cs.meta ├── GetPointerPressed.cs.meta ├── GetTouchpadAngle.cs.meta ├── GetTouchpadAxis.cs.meta ├── GetTriggerAxis.cs.meta ├── GetTriggerClicked.cs.meta ├── GetTriggerPressed.cs.meta ├── GetTriggerTouched.cs.meta ├── GetUiClickPressed.cs.meta ├── GetUsePressed.cs.meta ├── SetControllerAxis.cs.meta ├── SetGripClicked.cs.meta ├── GetButtonOnePressed.cs.meta ├── GetButtonOneTouched.cs.meta ├── GetButtonTwoPressed.cs.meta ├── GetButtonTwoTouched.cs.meta ├── GetControllerActive.cs.meta ├── GetGripAxisChanged.cs.meta ├── GetGripHairlinePressed.cs.meta ├── GetTouchpadAxisChanged.cs.meta ├── GetTouchpadPressed.cs.meta ├── GetTouchpadTouched.cs.meta ├── GetTriggerAxisChanged.cs.meta ├── GetTriggerHairlinePressed.cs.meta └── GetTriggerPressed.cs ├── Helper ├── getArtificialRotator.cs ├── GetPhysicsRotatorAngle.cs └── GetCollisionForceVRTK.cs ├── Presence ├── getDeviceGameobject.cs ├── toggleHeadsetFade.cs └── SetHeadsetCollisionTrigger.cs ├── Locomotion ├── activateTeleporting.cs ├── SetMoveInPlace.cs.meta ├── SetBasicTeleport.cs.meta ├── SetHeightAdjustTeleport.cs.meta ├── SetDashTeleportBaseOptions.cs.meta ├── SetDashTeleportHeightAdjustOptions.cs.meta ├── SetBasicTeleport.cs ├── SetDashTeleportBaseOptions.cs ├── SetMoveInPlace.cs ├── SetDashTeleportHeightAdjustOptions.cs └── SetHeightAdjustTeleport.cs ├── Interactions ├── GetTouchpadAxisBool.cs ├── Grab │ ├── AutoGrabObject.cs │ ├── GetLeverAngle.cs │ ├── getTouchedObject.cs │ ├── GetGrabbedObjectStatus.cs │ ├── GetLeverAngle.cs.meta │ └── GetGrabbedObjectStatus.cs.meta ├── GetTouchpadAngleCompare.cs ├── GetTouchpadAngleExtended4.cs ├── GetTouchpadAngleExtended6.cs ├── Objects │ ├── GetUsedObjectStatus.cs │ ├── GetTouchedObjectStatus.cs │ ├── GetUsedObjectsGameobject.cs │ ├── GetGrabbedObjectsGameobject.cs │ ├── GetUsedObjectStatus.cs.meta │ ├── GetTouchedObjectStatus.cs.meta │ ├── GetUsedObjectsGameobject.cs.meta │ └── GetGrabbedObjectsGameobject.cs.meta ├── SetInteractableObjectWhenIdle.cs ├── SetInteractableObjectGrabOptions.cs ├── SetInteractableObjectUseOptions.cs ├── SnapZones │ ├── SetSnapDropZoneScaling.cs │ ├── snapDropZoneForceSnap.cs │ ├── ObjectExitedSnapDropZone.cs │ ├── SetSnapDropZoneHighlight.cs │ ├── SetSnapDropZoneSnapType.cs │ ├── snapDropZoneForceUnsnap.cs │ ├── ObjectSnappedToSnapDropZone.cs │ ├── SetSnapDropZoneSnapDuration.cs │ ├── ObjectUnsnappedToSnapDropZone.cs │ ├── SetSnapDropZoneHighlightActive.cs │ ├── SetSnapDropZoneObjectOutline.cs │ ├── SetSnapDropZoneValidObjectList.cs │ ├── SetSnapDropZoneScaling.cs.meta │ ├── SetSnapDropZoneSnapType.cs.meta │ ├── ObjectEnteredSnapDropZone.cs.meta │ ├── ObjectExitedSnapDropZone.cs.meta │ ├── ObjectSnappedToSnapDropZone.cs.meta │ ├── SetSnapDropZoneHighlight.cs.meta │ ├── SetSnapDropZoneObjectOutline.cs.meta │ ├── SetSnapDropZoneSnapDuration.cs.meta │ ├── ObjectUnsnappedToSnapDropZone.cs.meta │ ├── SetSnapDropZoneHighlightActive.cs.meta │ ├── SetSnapDropZoneValidObjectList.cs.meta │ └── ObjectEnteredSnapDropZone.cs ├── SetInteractableObjectTouchOptions.cs ├── Grab.meta ├── Objects.meta ├── SnapZones.meta ├── SetInteractableObjectGrabOptions.cs.meta ├── SetInteractableObjectTouchOptions.cs.meta ├── SetInteractableObjectUseOptions.cs.meta └── SetInteractableObjectWhenIdle.cs.meta ├── license └── README.md /Pointer/activatePointer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/activatePointer.cs -------------------------------------------------------------------------------- /Scripts/UI/SetUiCanvas.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Scripts/UI/SetUiCanvas.cs -------------------------------------------------------------------------------- /Pointer/getPointerStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/getPointerStatus.cs -------------------------------------------------------------------------------- /TriggerEvents/GetGripAxis.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetGripAxis.cs -------------------------------------------------------------------------------- /Helper/getArtificialRotator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Helper/getArtificialRotator.cs -------------------------------------------------------------------------------- /Pointer/getPointerValidInfo.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/getPointerValidInfo.cs -------------------------------------------------------------------------------- /Presence/getDeviceGameobject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Presence/getDeviceGameobject.cs -------------------------------------------------------------------------------- /Presence/toggleHeadsetFade.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Presence/toggleHeadsetFade.cs -------------------------------------------------------------------------------- /TriggerEvents/GetGrabPressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetGrabPressed.cs -------------------------------------------------------------------------------- /TriggerEvents/GetGripClicked.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetGripClicked.cs -------------------------------------------------------------------------------- /TriggerEvents/GetGripPressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetGripPressed.cs -------------------------------------------------------------------------------- /TriggerEvents/GetGripTouched.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetGripTouched.cs -------------------------------------------------------------------------------- /TriggerEvents/GetMenuPressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetMenuPressed.cs -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerAxis.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetTriggerAxis.cs -------------------------------------------------------------------------------- /TriggerEvents/GetUsePressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetUsePressed.cs -------------------------------------------------------------------------------- /TriggerEvents/SetGripClicked.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/SetGripClicked.cs -------------------------------------------------------------------------------- /Helper/GetPhysicsRotatorAngle.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Helper/GetPhysicsRotatorAngle.cs -------------------------------------------------------------------------------- /Locomotion/activateTeleporting.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Locomotion/activateTeleporting.cs -------------------------------------------------------------------------------- /Pointer/pointerDestinationInfo.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/pointerDestinationInfo.cs -------------------------------------------------------------------------------- /TriggerEvents/GetAnyButtonDown.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetAnyButtonDown.cs -------------------------------------------------------------------------------- /TriggerEvents/GetTouchpadAngle.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetTouchpadAngle.cs -------------------------------------------------------------------------------- /TriggerEvents/GetTouchpadAxis.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetTouchpadAxis.cs -------------------------------------------------------------------------------- /Interactions/GetTouchpadAxisBool.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/GetTouchpadAxisBool.cs -------------------------------------------------------------------------------- /Interactions/Grab/AutoGrabObject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/Grab/AutoGrabObject.cs -------------------------------------------------------------------------------- /Interactions/Grab/GetLeverAngle.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/Grab/GetLeverAngle.cs -------------------------------------------------------------------------------- /TriggerEvents/GetButtonOnePressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetButtonOnePressed.cs -------------------------------------------------------------------------------- /TriggerEvents/GetButtonOneTouched.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetButtonOneTouched.cs -------------------------------------------------------------------------------- /TriggerEvents/GetButtonTwoPressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetButtonTwoPressed.cs -------------------------------------------------------------------------------- /TriggerEvents/GetButtonTwoTouched.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetButtonTwoTouched.cs -------------------------------------------------------------------------------- /TriggerEvents/GetControllerActive.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetControllerActive.cs -------------------------------------------------------------------------------- /TriggerEvents/GetGripAxisChanged.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetGripAxisChanged.cs -------------------------------------------------------------------------------- /TriggerEvents/GetPointerPressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetPointerPressed.cs -------------------------------------------------------------------------------- /TriggerEvents/GetTouchpadPressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetTouchpadPressed.cs -------------------------------------------------------------------------------- /TriggerEvents/GetTouchpadTouched.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetTouchpadTouched.cs -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerClicked.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetTriggerClicked.cs -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerTouched.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetTriggerTouched.cs -------------------------------------------------------------------------------- /TriggerEvents/GetUiClickPressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetUiClickPressed.cs -------------------------------------------------------------------------------- /TriggerEvents/SetControllerAxis.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/SetControllerAxis.cs -------------------------------------------------------------------------------- /Interactions/Grab/getTouchedObject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/Grab/getTouchedObject.cs -------------------------------------------------------------------------------- /Pointer/getStraightPointerHitObject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/getStraightPointerHitObject.cs -------------------------------------------------------------------------------- /Pointer/pointerDestinationInfoExit.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/pointerDestinationInfoExit.cs -------------------------------------------------------------------------------- /Presence/SetHeadsetCollisionTrigger.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Presence/SetHeadsetCollisionTrigger.cs -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerAxisChanged.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetTriggerAxisChanged.cs -------------------------------------------------------------------------------- /TriggerEvents/Haptics/HapticRumble.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/Haptics/HapticRumble.cs -------------------------------------------------------------------------------- /Interactions/GetTouchpadAngleCompare.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/GetTouchpadAngleCompare.cs -------------------------------------------------------------------------------- /Interactions/GetTouchpadAngleExtended4.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/GetTouchpadAngleExtended4.cs -------------------------------------------------------------------------------- /Interactions/GetTouchpadAngleExtended6.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/GetTouchpadAngleExtended6.cs -------------------------------------------------------------------------------- /TriggerEvents/GetGripHairlinePressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetGripHairlinePressed.cs -------------------------------------------------------------------------------- /TriggerEvents/GetTouchpadAxisChanged.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetTouchpadAxisChanged.cs -------------------------------------------------------------------------------- /Interactions/Grab/GetGrabbedObjectStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/Grab/GetGrabbedObjectStatus.cs -------------------------------------------------------------------------------- /Interactions/Objects/GetUsedObjectStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/Objects/GetUsedObjectStatus.cs -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerHairlinePressed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/GetTriggerHairlinePressed.cs -------------------------------------------------------------------------------- /Interactions/Objects/GetTouchedObjectStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/Objects/GetTouchedObjectStatus.cs -------------------------------------------------------------------------------- /Interactions/SetInteractableObjectWhenIdle.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SetInteractableObjectWhenIdle.cs -------------------------------------------------------------------------------- /Interactions/Objects/GetUsedObjectsGameobject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/Objects/GetUsedObjectsGameobject.cs -------------------------------------------------------------------------------- /Interactions/SetInteractableObjectGrabOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SetInteractableObjectGrabOptions.cs -------------------------------------------------------------------------------- /Interactions/SetInteractableObjectUseOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SetInteractableObjectUseOptions.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneScaling.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/SetSnapDropZoneScaling.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/snapDropZoneForceSnap.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/snapDropZoneForceSnap.cs -------------------------------------------------------------------------------- /TriggerEvents/Controller/getControllerVisible.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/Controller/getControllerVisible.cs -------------------------------------------------------------------------------- /TriggerEvents/Controller/setControllerOpacity.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/Controller/setControllerOpacity.cs -------------------------------------------------------------------------------- /Interactions/Objects/GetGrabbedObjectsGameobject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/Objects/GetGrabbedObjectsGameobject.cs -------------------------------------------------------------------------------- /Interactions/SetInteractableObjectTouchOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SetInteractableObjectTouchOptions.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/ObjectExitedSnapDropZone.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/ObjectExitedSnapDropZone.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneHighlight.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/SetSnapDropZoneHighlight.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneSnapType.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/SetSnapDropZoneSnapType.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/snapDropZoneForceUnsnap.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/snapDropZoneForceUnsnap.cs -------------------------------------------------------------------------------- /Pointer/AltSetPointerDestinationMarkerSettings.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/AltSetPointerDestinationMarkerSettings.cs -------------------------------------------------------------------------------- /TriggerEvents/Controller/getControllerVelocity.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/Controller/getControllerVelocity.cs -------------------------------------------------------------------------------- /TriggerEvents/Controller/toggleHighlightObject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/Controller/toggleHighlightObject.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/ObjectSnappedToSnapDropZone.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/ObjectSnappedToSnapDropZone.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneSnapDuration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/SetSnapDropZoneSnapDuration.cs -------------------------------------------------------------------------------- /TriggerEvents/Controller/toggleControllerVisbility.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/TriggerEvents/Controller/toggleControllerVisbility.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/ObjectUnsnappedToSnapDropZone.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/ObjectUnsnappedToSnapDropZone.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneHighlightActive.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/SetSnapDropZoneHighlightActive.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneObjectOutline.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/SetSnapDropZoneObjectOutline.cs -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneValidObjectList.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Interactions/SnapZones/SetSnapDropZoneValidObjectList.cs -------------------------------------------------------------------------------- /Pointer/PointerRenderers/StraightPointer/SetStraightPointerColor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/PointerRenderers/StraightPointer/SetStraightPointerColor.cs -------------------------------------------------------------------------------- /Pointer/PointerRenderers/BezierPointer/SetBezierPointerRenderSettings.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/PointerRenderers/BezierPointer/SetBezierPointerRenderSettings.cs -------------------------------------------------------------------------------- /Pointer/PointerRenderers/BezierPointer/SetBezierPointerGeneralApperance.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/PointerRenderers/BezierPointer/SetBezierPointerGeneralApperance.cs -------------------------------------------------------------------------------- /Pointer/PointerRenderers/BezierPointer/SetBezierPointerCustomApperanceSettings.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ericvanderwal/VRTK_Playmaker3x/HEAD/Pointer/PointerRenderers/BezierPointer/SetBezierPointerCustomApperanceSettings.cs -------------------------------------------------------------------------------- /Scripts/UI.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3b5a964235f2db643b140e48b52d7ad1 3 | folderAsset: yes 4 | timeCreated: 1501921587 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Interactions/Grab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3c5bf24d4bda55d43883ee6cd541f965 3 | folderAsset: yes 4 | timeCreated: 1501921587 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Interactions/Objects.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c6db6330f37e1924bba1a54049627e7a 3 | folderAsset: yes 4 | timeCreated: 1501921587 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Interactions/SnapZones.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4582407f6a903d543844ce300a1ade6c 3 | folderAsset: yes 4 | timeCreated: 1501921587 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ebf17cb52db0aa2429dec2890a8230c0 3 | folderAsset: yes 4 | timeCreated: 1501921587 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /TriggerEvents/Controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b92b1b401cc068b4ca5c9df8152ce0b3 3 | folderAsset: yes 4 | timeCreated: 1501921587 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /TriggerEvents/Haptics.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4016d0544e5752648a13b5ccf2462102 3 | folderAsset: yes 4 | timeCreated: 1501921587 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/BezierPointer.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aee0b87534a23ec4994c9a269e6f1223 3 | folderAsset: yes 4 | timeCreated: 1487928160 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/StraightPointer.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a8f3191310e3b9043ba10027e7955243 3 | folderAsset: yes 4 | timeCreated: 1487733145 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Locomotion/SetMoveInPlace.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9e77d22e1bafdbb44b3b8e2717bf2770 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/activatePointer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: edb564eb58f18344e98db57cb2d63d3a 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/getPointerStatus.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c2bb6f17f3d622f4e8648ce0b0aa6f5c 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Scripts/UI/SetUiCanvas.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 08939efa5ed265e4a809972d8f0df679 3 | timeCreated: 1488370582 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetGripAxis.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8bf92102552527a408c552ca5b697d41 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/Grab/GetLeverAngle.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e3656f8f5914594e9ac16f7c1b1dd83 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Locomotion/SetBasicTeleport.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5b0d8b42aecfdd34686815cd62ac6db6 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/pointerDestinationInfo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 056f89d53aecfb842b8d4b54baa8d9e4 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetAnyButtonDown.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 195bfe72589cdc04fa2c36631743d8f6 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetGrabPressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f93afd98d678734bb1a3bd30576f99a 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetGripClicked.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 20c37cb3d8ca7754dab83043e68aadd8 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetGripPressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f7da94031ccad3b4e8795b923f1e2562 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetGripTouched.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c8a7ee2bf306beb49984e8c8bd5cdd09 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetMenuPressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fbd914bea95b5244ab208925b6494112 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetPointerPressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 345f5530cf87e8d4fa49d09f28d8236b 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTouchpadAngle.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7d398dd2cbb338841aead9dd1ba06800 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTouchpadAxis.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c59e450354e5cae4aa005ef4a06ba941 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerAxis.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3ddf4398210841b4e93d7125c5f0b9db 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerClicked.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2a1e4e10ad2cc5b4ba86b61c34f3f947 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerPressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 16f149034c76c9c46bbc9f86e52c3996 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerTouched.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 60f588f20ce48074a9618489e629f18c 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetUiClickPressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac3c33a98fc061547962fc1e635f5f9e 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetUsePressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6a6fc6dda62d6b9459b9d68bf6ae1ac6 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/SetControllerAxis.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 13f287c267da5fa4bb540fc900f7583c 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/SetGripClicked.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1157ff5f686ff3b49a0757143adc5f51 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Locomotion/SetHeightAdjustTeleport.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aff7f0056886e644ea2da2f8a5c89bd6 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/pointerDestinationInfoExit.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 02ecacc0592ac07439b4b40393aa2797 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Scripts/SetBodyPhysicsEnableTeleport.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a2a2c5028496ebd4090dc4411ac647ea 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetButtonOnePressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2d3937a49e465b94fb036ef59a755fe3 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetButtonOneTouched.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1f660c39f6b985845bc60d7ceb6c333d 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetButtonTwoPressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 941669acf673e8c46b7a4c13f3f92345 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetButtonTwoTouched.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6b89cd05811eace4c8b4b2fe619ce15f 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetControllerActive.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6553db69fd1b527459c61935277ebd3d 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetGripAxisChanged.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 89d0f615411d59b44a1497dc4579e4e0 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetGripHairlinePressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8e5caa41d5ca0cc40b7aa115eae99a56 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTouchpadAxisChanged.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 042399b0319a50b41858757d0601be51 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTouchpadPressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6926c27041a78174ab797cfb1b4fe938 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTouchpadTouched.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e452bbcb0e7e69d47867df1ce75144cf 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerAxisChanged.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: da7270e2c82c0294587d7000b0a0a518 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/Grab/GetGrabbedObjectStatus.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 16fcdd2875239e646a9f02080727419a 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/Objects/GetUsedObjectStatus.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dcf243ffad3cc2d4f8b89485b7f86431 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Locomotion/SetDashTeleportBaseOptions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bdf42ad9bda0d6243b77be421f6b2ba5 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/SetPointerInteractionSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 972e145f1fd868244b60bebbbf4da8e2 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Scripts/SetBodyPhysicsSnapToFloorSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a7d9df6b87166cf44ad495ad8d9b063d 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerHairlinePressed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 15a93f09aeed9d34bae3265839d41dbf 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/Objects/GetTouchedObjectStatus.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 074d8881409e3574d93af1b9d763ace6 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/Objects/GetUsedObjectsGameobject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f7cf55ee9b25dad45b8a97aaacb5c55f 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SetInteractableObjectGrabOptions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 43639982d11c96f4e98f2a745d47d757 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SetInteractableObjectTouchOptions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c9d613e2df1c37b449c8e16af0ad2187 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SetInteractableObjectUseOptions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c6bfff09a5ef00d4bbb8fa7c9b214191 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SetInteractableObjectWhenIdle.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ae01bd4ffe059943b2ece0bc17ffa5b 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneScaling.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2df61935051f79e4a807185145fcbf19 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneSnapType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 25cfff551bac1b74495f3902ff420f77 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Locomotion/SetDashTeleportHeightAdjustOptions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d21f6869cbcd61144b20d18dfceb4a17 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/AltSetPointerDestinationMarkerSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9dfd667156ff0d64d8c9ae2b1172cd64 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/SetPointerDestinationMarkerSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 32c2a7cccd4ae9b41a321e4fdb1f2277 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Scripts/SetBodyPhysicsBodyCollisionSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f4fee30e24c0aa346bfd52e444e5ab46 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/Controller/getControllerVelocity.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d38f7ff45f6a2fb47915ea7294885650 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/Controller/getControllerVisible.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41b20abb8ccbfca47b974ca825a94f09 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/Controller/setControllerOpacity.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8d0b540f88417ce4c9971845cdd65c4b 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/Objects/GetGrabbedObjectsGameobject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 79e229061b930be41844cf2949527863 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/ObjectEnteredSnapDropZone.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 38344037692adc0428c23280076c7638 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/ObjectExitedSnapDropZone.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 33f05389b35b87b4c8722cc480c93e24 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/ObjectSnappedToSnapDropZone.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b827b2deb3573ab46926d925173715a6 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneHighlight.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 71aef9677dcef024782c0f5b99819415 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneObjectOutline.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dddeea3e03adf5f4e9f0ef1928dacfc3 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneSnapDuration.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac5e9bf4d6d032947912aef1b10c75b2 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /TriggerEvents/Controller/toggleControllerVisbility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d94271b0270745b47b22d6b896dda2a6 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/ObjectUnsnappedToSnapDropZone.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e544646da925a4b438ba34254cefba1f 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneHighlightActive.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9ad30cc9afd5ab94caaa8855f3dc654a 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Interactions/SnapZones/SetSnapDropZoneValidObjectList.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5610eab9c7949d24183c70c04ce48177 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/BezierPointer/SetBezierPointerApperance.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 99098955fbc969a418bc55089bfdd0b1 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/StraightPointer/SetStraightPointerColor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 88dbeeba1e552e348884b5a996acf5a5 3 | timeCreated: 1487614627 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/BezierPointer/SetBezierPointerGeneralApperance.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c0939d56337bc1b46acd2a55800c2e41 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/BezierPointer/SetBezierPointerRenderSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 500a28ce6f368aa48b219d62fae80207 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/StraightPointer/SetStraightPointerCustomAppearance.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bb26698bee4a8454480c647208437308 3 | timeCreated: 1487615133 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/BezierPointer/SetBezierPointerCustomApperanceSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 03e061b02fde4614da2462f5b72260d6 3 | timeCreated: 1501921587 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/StraightPointer/SetStraightPointerAppearanceSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7939027e38e14ea429efa4ea2b3dc705 3 | timeCreated: 1487614339 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /license: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Eric Vander Wal 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Pointer/SetPointerDestinationMarkerSettings.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | 3 | using UnityEngine; 4 | 5 | namespace HutongGames.PlayMaker.Actions 6 | { 7 | [ActionCategory("VRTK Pointer")] 8 | [Tooltip("Set Pointer Destination Marker Settings.")] 9 | 10 | public class SetPointerDestinationMarkerSettings : FsmStateAction 11 | { 12 | [RequiredField] 13 | [CheckForComponent(typeof(VRTK.VRTK_Pointer))] 14 | 15 | public FsmOwnerDefault gameObject; 16 | 17 | [TitleAttribute("Enable Teleport")] 18 | public FsmBool enTeleport; 19 | 20 | public FsmBool everyFrame; 21 | 22 | VRTK.VRTK_Pointer theScript; 23 | 24 | public override void Reset() 25 | { 26 | 27 | gameObject = null; 28 | enTeleport = true; 29 | everyFrame = false; 30 | } 31 | 32 | public override void OnEnter() 33 | { 34 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 35 | 36 | 37 | theScript = go.GetComponent(); 38 | 39 | if (!everyFrame.Value) 40 | { 41 | MakeItSo(); 42 | Finish(); 43 | } 44 | 45 | } 46 | 47 | public override void OnUpdate() 48 | { 49 | if (everyFrame.Value) 50 | { 51 | MakeItSo(); 52 | } 53 | } 54 | 55 | 56 | void MakeItSo() 57 | { 58 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 59 | if (go == null) 60 | { 61 | return; 62 | } 63 | 64 | theScript.enableTeleport = enTeleport.Value; 65 | } 66 | 67 | } 68 | } -------------------------------------------------------------------------------- /Scripts/SetBodyPhysicsEnableTeleport.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | 4 | using UnityEngine; 5 | 6 | namespace HutongGames.PlayMaker.Actions 7 | { 8 | [ActionCategory("VRTK Locomotion")] 9 | [Tooltip("Enable teleport settings for Body Physics for VRTK.")] 10 | 11 | public class SetBodyPhysicsEnableTeleport : FsmStateAction 12 | 13 | { 14 | [RequiredField] 15 | [CheckForComponent(typeof(VRTK.VRTK_BodyPhysics))] 16 | public FsmOwnerDefault gameObject; 17 | 18 | public FsmBool enableTeleport; 19 | 20 | public FsmBool everyFrame; 21 | 22 | VRTK.VRTK_BodyPhysics theScript; 23 | 24 | public override void Reset() 25 | { 26 | enableTeleport = true; 27 | gameObject = null; 28 | everyFrame = false; 29 | } 30 | 31 | public override void OnEnter() 32 | { 33 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 34 | 35 | theScript = go.GetComponent(); 36 | 37 | if (!everyFrame.Value) 38 | { 39 | MakeItSo(); 40 | Finish(); 41 | } 42 | 43 | } 44 | 45 | public override void OnUpdate() 46 | { 47 | if (everyFrame.Value) 48 | { 49 | MakeItSo(); 50 | } 51 | } 52 | 53 | 54 | void MakeItSo() 55 | { 56 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 57 | if (go == null) 58 | { 59 | return; 60 | } 61 | 62 | theScript.enableTeleport = enableTeleport.Value; 63 | 64 | } 65 | 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /Interactions/SnapZones/ObjectEnteredSnapDropZone.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | 4 | using UnityEngine; 5 | using VRTK; 6 | 7 | namespace HutongGames.PlayMaker.Actions 8 | { 9 | [ActionCategory("VRTK Interaction")] 10 | [Tooltip("Get Game Object entered the SnapZone.")] 11 | 12 | public class ObjectEnteredSnapDropZone : FsmStateAction 13 | { 14 | [RequiredField] 15 | [CheckForComponent(typeof(VRTK.VRTK_SnapDropZone))] 16 | public FsmOwnerDefault gameObject; 17 | 18 | [TitleAttribute("Entered Game Object")] 19 | public FsmGameObject snapZoneObject; 20 | 21 | private VRTK.UnityEventHelper.VRTK_SnapDropZone_UnityEvents snapEvents; 22 | 23 | public override void Reset() 24 | { 25 | 26 | gameObject = null; 27 | snapZoneObject = null; 28 | } 29 | 30 | public override void OnEnter() 31 | { 32 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 33 | 34 | snapEvents = go.GetComponent(); 35 | if (snapEvents == null) 36 | { 37 | snapEvents = go.AddComponent(); 38 | } 39 | 40 | //snapEvents.OnValueChanged.AddListener(HandleChange); 41 | snapEvents.OnObjectEnteredSnapDropZone.AddListener(ObjectSnapped); 42 | 43 | } 44 | 45 | private void ObjectSnapped(object sender, SnapDropZoneEventArgs e) 46 | { 47 | snapZoneObject.Value = e.snappedObject; 48 | 49 | } 50 | 51 | } 52 | 53 | } 54 | -------------------------------------------------------------------------------- /TriggerEvents/GetTriggerPressed.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | 4 | using UnityEngine; 5 | 6 | namespace HutongGames.PlayMaker.Actions 7 | { 8 | [ActionCategory("VRTKController")] 9 | [Tooltip("Get trigger pressed for VRTK.")] 10 | 11 | public class GetTriggerPressed : FsmStateAction 12 | 13 | { 14 | [RequiredField] 15 | [CheckForComponent(typeof(VRTK.VRTK_ControllerEvents))] 16 | public FsmOwnerDefault gameObject; 17 | 18 | [Tooltip("This will be true if the trigger is squeezed about half way in.")] 19 | public FsmBool triggerPressed; 20 | 21 | public FsmBool everyFrame; 22 | 23 | VRTK.VRTK_ControllerEvents theScript; 24 | 25 | public override void Reset() 26 | { 27 | 28 | triggerPressed = false; 29 | gameObject = null; 30 | everyFrame = false; 31 | } 32 | 33 | public override void OnEnter() 34 | { 35 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 36 | 37 | theScript = go.GetComponent(); 38 | 39 | if (!everyFrame.Value) 40 | { 41 | MakeItSo(); 42 | Finish(); 43 | } 44 | 45 | } 46 | 47 | public override void OnUpdate() 48 | { 49 | if (everyFrame.Value) 50 | { 51 | MakeItSo(); 52 | } 53 | } 54 | 55 | 56 | void MakeItSo() 57 | { 58 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 59 | if (go == null) 60 | { 61 | return; 62 | } 63 | 64 | triggerPressed.Value = theScript.triggerPressed; 65 | 66 | } 67 | 68 | } 69 | } -------------------------------------------------------------------------------- /Pointer/SetPointerInteractionSettings.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | 3 | using UnityEngine; 4 | 5 | namespace HutongGames.PlayMaker.Actions 6 | { 7 | [ActionCategory("VRTK Pointer")] 8 | [Tooltip("Set Pointer Interaction Settings.")] 9 | 10 | public class SetPointerInteractionSettings : FsmStateAction 11 | { 12 | [RequiredField] 13 | [CheckForComponent(typeof(VRTK.VRTK_Pointer))] 14 | 15 | public FsmOwnerDefault gameObject; 16 | 17 | [TitleAttribute("Interact with Object")] 18 | public FsmBool grabTip; 19 | 20 | [TitleAttribute("Grab to Pointer Tip")] 21 | public FsmBool interObj; 22 | 23 | public FsmBool everyFrame; 24 | 25 | VRTK.VRTK_Pointer theScript; 26 | 27 | public override void Reset() 28 | { 29 | 30 | gameObject = null; 31 | grabTip = null; 32 | interObj = null; 33 | everyFrame = false; 34 | } 35 | 36 | public override void OnEnter() 37 | { 38 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 39 | 40 | 41 | theScript = go.GetComponent(); 42 | 43 | if (!everyFrame.Value) 44 | { 45 | MakeItSo(); 46 | Finish(); 47 | } 48 | 49 | } 50 | 51 | public override void OnUpdate() 52 | { 53 | if (everyFrame.Value) 54 | { 55 | MakeItSo(); 56 | } 57 | } 58 | 59 | 60 | void MakeItSo() 61 | { 62 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 63 | if (go == null) 64 | { 65 | return; 66 | } 67 | 68 | theScript.interactWithObjects = interObj.Value; 69 | theScript.grabToPointerTip = grabTip.Value; 70 | 71 | } 72 | 73 | } 74 | } 75 | 76 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/StraightPointer/SetStraightPointerCustomAppearance.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | 3 | using UnityEngine; 4 | 5 | namespace HutongGames.PlayMaker.Actions 6 | { 7 | [ActionCategory("VRTK Pointer")] 8 | [Tooltip("Set Straight Pointer Custom Appearance.")] 9 | 10 | public class SetStraightPointerCustomAppearance : FsmStateAction 11 | { 12 | [RequiredField] 13 | [CheckForComponent(typeof(VRTK.VRTK_StraightPointerRenderer))] 14 | 15 | public FsmOwnerDefault gameObject; 16 | 17 | [TitleAttribute("Custom Tracer")] 18 | public FsmGameObject tracer; 19 | 20 | [TitleAttribute("Custom Cursor")] 21 | public FsmGameObject cursor; 22 | 23 | public FsmBool everyFrame; 24 | 25 | 26 | 27 | 28 | VRTK.VRTK_StraightPointerRenderer theScript; 29 | 30 | public override void Reset() 31 | { 32 | 33 | gameObject = null; 34 | cursor = null; 35 | tracer = null; 36 | everyFrame = false; 37 | } 38 | 39 | public override void OnEnter() 40 | { 41 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 42 | 43 | 44 | theScript = go.GetComponent(); 45 | 46 | if (!everyFrame.Value) 47 | { 48 | MakeItSo(); 49 | Finish(); 50 | } 51 | 52 | } 53 | 54 | public override void OnUpdate() 55 | { 56 | if (everyFrame.Value) 57 | { 58 | MakeItSo(); 59 | } 60 | } 61 | 62 | 63 | void MakeItSo() 64 | { 65 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 66 | if (go == null) 67 | { 68 | return; 69 | } 70 | 71 | theScript.customCursor = cursor.Value; 72 | theScript.customTracer = tracer.Value; 73 | 74 | } 75 | 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /Pointer/PointerRenderers/BezierPointer/SetBezierPointerApperance.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | // Version two of this action. MaximumLength was changed from a float to a Vector2 per changes in VRTK 3.1.0 4 | 5 | using UnityEngine; 6 | using VRTK; 7 | 8 | namespace HutongGames.PlayMaker.Actions 9 | { 10 | [ActionCategory("VRTK Pointer")] 11 | [Tooltip("Set Bezier Pointer apperance.")] 12 | 13 | public class SetBezierPointerApperance : FsmStateAction 14 | { 15 | [RequiredField] 16 | [CheckForComponent(typeof(VRTK.VRTK_BezierPointerRenderer))] 17 | public FsmOwnerDefault gameObject; 18 | 19 | public FsmVector2 maximumLength; 20 | public FsmInt tracerDensity; 21 | public FsmFloat cursorRadius; 22 | 23 | public FsmBool everyFrame; 24 | 25 | VRTK.VRTK_BezierPointerRenderer theScript; 26 | 27 | public override void Reset() 28 | { 29 | 30 | tracerDensity = null; 31 | cursorRadius = null; 32 | gameObject = null; 33 | everyFrame = false; 34 | } 35 | 36 | public override void OnEnter() 37 | { 38 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 39 | 40 | 41 | theScript = go.GetComponent(); 42 | 43 | if (!everyFrame.Value) 44 | { 45 | MakeItSo(); 46 | Finish(); 47 | } 48 | 49 | } 50 | 51 | public override void OnUpdate() 52 | { 53 | if (everyFrame.Value) 54 | { 55 | MakeItSo(); 56 | } 57 | } 58 | 59 | 60 | void MakeItSo() 61 | { 62 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 63 | if (go == null) 64 | { 65 | return; 66 | } 67 | 68 | theScript.maximumLength = maximumLength.Value; 69 | theScript.tracerDensity = tracerDensity.Value; 70 | theScript.cursorRadius = cursorRadius.Value; 71 | } 72 | 73 | } 74 | } 75 | -------------------------------------------------------------------------------- /Helper/GetCollisionForceVRTK.cs: -------------------------------------------------------------------------------- 1 | // Eric Vander Wal 2 | // Custom Action by DumbGameDev 3 | // www.dumbgamedev.com 4 | 5 | using UnityEngine; 6 | 7 | namespace HutongGames.PlayMaker.Actions 8 | { 9 | [ActionCategory("VRTK Helper")] 10 | [Tooltip("Gets info on the last collision for use with VRTK haptic strength.")] 11 | public class GetCollisionForceVRTK : FsmStateAction 12 | { 13 | [UIHint(UIHint.Variable)] 14 | [Tooltip("Get the GameObject hit.")] 15 | public FsmGameObject gameObjectHit; 16 | 17 | [UIHint(UIHint.Variable)] 18 | [Tooltip("Get the relative velocity of the collision.")] 19 | public FsmVector3 relativeVelocity; 20 | 21 | [UIHint(UIHint.Variable)] 22 | [Tooltip("Get the relative speed of the collision. Useful for controlling reactions. E.g., selecting an appropriate sound fx.")] 23 | public FsmFloat relativeSpeed; 24 | 25 | [ActionSection("Haptic Inputs")] 26 | 27 | [Tooltip("Set max collision force possible for haptics. Suggested value is 4000.")] 28 | public FsmFloat maxCollisionForce; 29 | 30 | [Tooltip("Set impact magnifier for haptic to change haptic outputs.")] 31 | public FsmFloat impactMagnifier; 32 | 33 | [ActionSection("Haptic Outputs")] 34 | 35 | [UIHint(UIHint.Variable)] 36 | [Tooltip("Suggested haptic force based on collision data above.")] 37 | public FsmFloat hapticForce; 38 | 39 | public override void Reset() 40 | { 41 | gameObjectHit = null; 42 | relativeVelocity = null; 43 | relativeSpeed = null; 44 | maxCollisionForce = 4000f; 45 | impactMagnifier = 120f; 46 | hapticForce = null; 47 | } 48 | 49 | void StoreCollisionInfo() 50 | { 51 | if (Fsm.CollisionInfo == null) 52 | { 53 | return; 54 | } 55 | 56 | gameObjectHit.Value = Fsm.CollisionInfo.gameObject; 57 | relativeSpeed.Value = Fsm.CollisionInfo.relativeVelocity.magnitude; 58 | 59 | // calculations 60 | var collisionForce = relativeSpeed.Value * impactMagnifier.Value; 61 | hapticForce.Value = collisionForce / maxCollisionForce.Value; 62 | 63 | } 64 | 65 | public override void OnEnter() 66 | { 67 | StoreCollisionInfo(); 68 | 69 | Finish(); 70 | } 71 | } 72 | } -------------------------------------------------------------------------------- /Pointer/PointerRenderers/StraightPointer/SetStraightPointerAppearanceSettings.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | 3 | using UnityEngine; 4 | 5 | namespace HutongGames.PlayMaker.Actions 6 | { 7 | [ActionCategory("VRTK Pointer")] 8 | [Tooltip("Set Straight Pointer Appearance.")] 9 | 10 | public class SetStraightPointerAppearanceSettings : FsmStateAction 11 | { 12 | [RequiredField] 13 | [CheckForComponent(typeof(VRTK.VRTK_StraightPointerRenderer))] 14 | 15 | public FsmOwnerDefault gameObject; 16 | 17 | [TitleAttribute("Max Length")] 18 | public FsmFloat maxLength; 19 | 20 | [TitleAttribute("Scale Factor")] 21 | public FsmFloat scFactor; 22 | 23 | [TitleAttribute("Cursor Scale Multiplier")] 24 | public FsmFloat scMultiplier; 25 | 26 | [TitleAttribute("Cursor Match Target Rotation")] 27 | public FsmBool cuMatch; 28 | 29 | [TitleAttribute("Cursor Distance Rescale")] 30 | public FsmBool cuDistance; 31 | 32 | 33 | public FsmBool everyFrame; 34 | 35 | 36 | VRTK.VRTK_StraightPointerRenderer theScript; 37 | 38 | public override void Reset() 39 | { 40 | 41 | gameObject = null; 42 | maxLength = null; 43 | scFactor = null; 44 | cuMatch = false; 45 | scMultiplier = null; 46 | cuDistance = false; 47 | everyFrame = false; 48 | } 49 | 50 | public override void OnEnter() 51 | { 52 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 53 | 54 | 55 | theScript = go.GetComponent(); 56 | 57 | if (!everyFrame.Value) 58 | { 59 | MakeItSo(); 60 | Finish(); 61 | } 62 | 63 | } 64 | 65 | public override void OnUpdate() 66 | { 67 | if (everyFrame.Value) 68 | { 69 | MakeItSo(); 70 | } 71 | } 72 | 73 | 74 | void MakeItSo() 75 | { 76 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 77 | if (go == null) 78 | { 79 | return; 80 | } 81 | 82 | theScript.maximumLength = maxLength.Value; 83 | theScript.scaleFactor = scFactor.Value; 84 | theScript.cursorMatchTargetRotation = cuMatch.Value; 85 | theScript.cursorScaleMultiplier = scMultiplier.Value; 86 | theScript.cursorDistanceRescale = cuDistance.Value; 87 | 88 | } 89 | 90 | } 91 | } 92 | -------------------------------------------------------------------------------- /Locomotion/SetBasicTeleport.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | 4 | using UnityEngine; 5 | 6 | namespace HutongGames.PlayMaker.Actions 7 | { 8 | [ActionCategory("VRTK Locomotion")] 9 | [Tooltip("Set basic teleport settings for VRTK.")] 10 | 11 | public class SetBasicTeleport : FsmStateAction 12 | 13 | { 14 | [RequiredField] 15 | [CheckForComponent(typeof(VRTK.VRTK_BasicTeleport))] 16 | public FsmOwnerDefault gameObject; 17 | 18 | [Tooltip("The fade blink speed can be changed on the basic teleport script to provide a customised teleport experience. Setting the speed to 0 will mean no fade blink effect is present.")] 19 | public FsmFloat blinkTransitionSpeed; 20 | [Tooltip("A range between 0 and 32 that determines how long the blink transition will stay blacked out depending on the distance being teleported. A value of 0 will not delay the teleport blink effect over any distance, a value of 32 will delay the teleport blink fade in even when the distance teleported is very close to the original position. This can be used to simulate time taking longer to pass the further a user teleports. A value of 16 provides a decent basis to simulate this to the user.")] 21 | [HasFloatSliderAttribute(0, 32f)] 22 | public FsmFloat distanceBlinkDelay; 23 | [Tooltip("If this is checked then the teleported location will be the position of the headset within the play area. If it is unchecked then the teleported location will always be the centre of the play area even if the headset position is not in the centre of the play area.")] 24 | public FsmBool headsetPositionCompensation; 25 | [Tooltip("The max distance the teleport destination can be outside the nav mesh to be considered valid. If a value of `0` is given then the nav mesh restrictions will be ignored.")] 26 | public FsmFloat navMeshLimitDistance; 27 | 28 | public FsmBool everyFrame; 29 | 30 | VRTK.VRTK_BasicTeleport theScript; 31 | 32 | public override void Reset() 33 | { 34 | 35 | gameObject = null; 36 | blinkTransitionSpeed = null; 37 | distanceBlinkDelay = null; 38 | headsetPositionCompensation = false; 39 | navMeshLimitDistance = null; 40 | everyFrame = false; 41 | } 42 | 43 | public override void OnEnter() 44 | { 45 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 46 | 47 | theScript = go.GetComponent(); 48 | 49 | if (!everyFrame.Value) 50 | { 51 | MakeItSo(); 52 | Finish(); 53 | } 54 | 55 | } 56 | 57 | public override void OnUpdate() 58 | { 59 | if (everyFrame.Value) 60 | { 61 | MakeItSo(); 62 | } 63 | } 64 | 65 | 66 | void MakeItSo() 67 | { 68 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 69 | if (go == null) 70 | { 71 | return; 72 | } 73 | 74 | theScript.blinkTransitionSpeed = blinkTransitionSpeed.Value; 75 | theScript.distanceBlinkDelay = distanceBlinkDelay.Value; 76 | theScript.headsetPositionCompensation = headsetPositionCompensation.Value; 77 | theScript.navMeshLimitDistance = navMeshLimitDistance.Value; 78 | 79 | } 80 | 81 | } 82 | } 83 | 84 | 85 | 86 | 87 | 88 | 89 | -------------------------------------------------------------------------------- /Locomotion/SetDashTeleportBaseOptions.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | 4 | using UnityEngine; 5 | 6 | namespace HutongGames.PlayMaker.Actions 7 | { 8 | [ActionCategory("VRTK Locomotion")] 9 | [Tooltip("Set dash teleport base option settings for VRTK.")] 10 | 11 | public class SetDashTeleportBaseOptions : FsmStateAction 12 | 13 | { 14 | [RequiredField] 15 | [CheckForComponent(typeof(VRTK.VRTK_DashTeleport))] 16 | public FsmOwnerDefault gameObject; 17 | 18 | [Header("Base Options")] 19 | [Tooltip("The fade blink speed can be changed on the basic teleport script to provide a customised teleport experience. Setting the speed to 0 will mean no fade blink effect is present.")] 20 | public FsmFloat blinkTransitionSpeed; 21 | [Tooltip("A range between 0 and 32 that determines how long the blink transition will stay blacked out depending on the distance being teleported. A value of 0 will not delay the teleport blink effect over any distance, a value of 32 will delay the teleport blink fade in even when the distance teleported is very close to the original position. This can be used to simulate time taking longer to pass the further a user teleports. A value of 16 provides a decent basis to simulate this to the user.")] 22 | [HasFloatSliderAttribute(0, 32f)] 23 | public FsmFloat distanceBlinkDelay; 24 | [Tooltip("If this is checked then the teleported location will be the position of the headset within the play area. If it is unchecked then the teleported location will always be the centre of the play area even if the headset position is not in the centre of the play area.")] 25 | public FsmBool headsetPositionCompensation; 26 | [Tooltip("The max distance the teleport destination can be outside the nav mesh to be considered valid. If a value of `0` is given then the nav mesh restrictions will be ignored.")] 27 | public FsmFloat navMeshLimitDistance; 28 | 29 | public FsmBool everyFrame; 30 | 31 | VRTK.VRTK_DashTeleport theScript; 32 | 33 | public override void Reset() 34 | { 35 | 36 | gameObject = null; 37 | blinkTransitionSpeed = null; 38 | distanceBlinkDelay = null; 39 | headsetPositionCompensation = false; 40 | navMeshLimitDistance = null; 41 | everyFrame = false; 42 | } 43 | 44 | public override void OnEnter() 45 | { 46 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 47 | 48 | theScript = go.GetComponent(); 49 | 50 | if (!everyFrame.Value) 51 | { 52 | MakeItSo(); 53 | Finish(); 54 | } 55 | 56 | } 57 | 58 | public override void OnUpdate() 59 | { 60 | if (everyFrame.Value) 61 | { 62 | MakeItSo(); 63 | } 64 | } 65 | 66 | 67 | void MakeItSo() 68 | { 69 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 70 | if (go == null) 71 | { 72 | return; 73 | } 74 | 75 | theScript.blinkTransitionSpeed = blinkTransitionSpeed.Value; 76 | theScript.distanceBlinkDelay = distanceBlinkDelay.Value; 77 | theScript.headsetPositionCompensation = headsetPositionCompensation.Value; 78 | theScript.navMeshLimitDistance = navMeshLimitDistance.Value; 79 | 80 | } 81 | 82 | } 83 | } -------------------------------------------------------------------------------- /Scripts/SetBodyPhysicsBodyCollisionSettings.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | 4 | using UnityEngine; 5 | 6 | namespace HutongGames.PlayMaker.Actions 7 | { 8 | [ActionCategory("VRTK Locomotion")] 9 | [Tooltip("Set body physics body collisions settings for VRTK.")] 10 | 11 | public class SetBodyPhysicsBodyCollisionSettings : FsmStateAction 12 | 13 | { 14 | [RequiredField] 15 | [CheckForComponent(typeof(VRTK.VRTK_BodyPhysics))] 16 | public FsmOwnerDefault gameObject; 17 | 18 | [Tooltip("If checked then the body collider and rigidbody will be used to check for rigidbody collisions.")] 19 | public FsmBool enableBodyCollisions; 20 | [Tooltip("If this is checked then any items that are grabbed with the controller will not collide with the body collider. This is very useful if the user is required to grab and wield objects because if the collider was active they would bounce off the collider.")] 21 | public FsmBool ignoreGrabbedCollisions; 22 | [Tooltip("The collider which is created for the user is set at a height from the user's headset position. If the collider is required to be lower to allow for room between the play area collider and the headset then this offset value will shorten the height of the generated collider.")] 23 | public FsmFloat headsetYOffset; 24 | [Tooltip("The amount of movement of the headset between the headset's current position and the current standing position to determine if the user is walking in play space and to ignore the body physics collisions if the movement delta is above this threshold.")] 25 | public FsmFloat movementThreshold; 26 | [Tooltip("The maximum number of samples to collect of headset position before determining if the current standing position within the play space has changed.")] 27 | public FsmInt standingHistorySamples; 28 | [Tooltip("The `y` distance between the headset and the object being leaned over, if object being leaned over is taller than this threshold then the current standing position won't be updated.")] 29 | public FsmFloat leanYThreshold; 30 | 31 | public FsmBool everyFrame; 32 | 33 | VRTK.VRTK_BodyPhysics theScript; 34 | 35 | public override void Reset() 36 | { 37 | enableBodyCollisions = false; 38 | ignoreGrabbedCollisions = false; 39 | headsetYOffset = null; 40 | movementThreshold = null; 41 | standingHistorySamples = null; 42 | leanYThreshold = null; 43 | gameObject = null; 44 | everyFrame = false; 45 | } 46 | 47 | public override void OnEnter() 48 | { 49 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 50 | 51 | theScript = go.GetComponent(); 52 | 53 | if (!everyFrame.Value) 54 | { 55 | MakeItSo(); 56 | Finish(); 57 | } 58 | 59 | } 60 | 61 | public override void OnUpdate() 62 | { 63 | if (everyFrame.Value) 64 | { 65 | MakeItSo(); 66 | } 67 | } 68 | 69 | 70 | void MakeItSo() 71 | { 72 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 73 | if (go == null) 74 | { 75 | return; 76 | } 77 | 78 | theScript.enableBodyCollisions = enableBodyCollisions.Value; 79 | theScript.ignoreGrabbedCollisions = ignoreGrabbedCollisions.Value; 80 | theScript.enableBodyCollisions = enableBodyCollisions.Value; 81 | theScript.ignoreGrabbedCollisions = ignoreGrabbedCollisions.Value; 82 | theScript.headsetYOffset = headsetYOffset.Value; 83 | theScript.movementThreshold = movementThreshold.Value; 84 | theScript.standingHistorySamples = standingHistorySamples.Value; 85 | theScript.leanYThreshold = leanYThreshold.Value; 86 | } 87 | 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # VRTK Playmaker Action Set 2 | 3 | These c# files are created to be used in conjunction with the Unity3d asset Playmaker, along with the VRTK (virtual reality tool kit). They act as bridge to allow VRTK variables to be changed and various methods and events to be called from within Playmaker during Unity3d runtime. 4 | 5 | The following project is released under the MIT license as stated below. 6 | 7 | ## Important - Read First 8 | 9 | The current master version to be used together with the current VRTK Github version (3.3.0 beta). **Always backup your projects before updating ** 10 | 11 | Tested and working with the most current version of Playmaker from the asset store, as well as the most current version of steam VR from the asset store. 12 | 13 | ## Updating 14 | 15 | If you are updating from 3.2.0 or 3.1.0, to 3.3.0, make sure to backup your project first. Then remove all the VRTK playmaker actions and replace the folder entirely. The 3.3.0 does include legacy actions from 3.2.0/3.1.0 that are no longer in use. I am currently in the process of marking them all obsolete (as I find them). They will not break your project, but they rely on script that are no longer in use for VRTK. They are included however to not break any updates. 16 | 17 | Once finished updating, you may need open some actions in your FSM to correct them. Some actions have new variable fields added or removed. This was unavoidable as VRTK continues to update. 18 | 19 | Specifically these actions: 20 | 21 | getControllerVisible 22 | setControllerOpacity 23 | toggleControllerVisbility 24 | getControllerVelocity 25 | GetGrabPressed 26 | GetGripPressed 27 | GetMenuPressed (aka, button two). 28 | GetUiClickPressed 29 | GetPointerPressed 30 | GetUsePressed 31 | SetBodyPhysicsSnapToFloorSettings 32 | SetDashTeleportHeightAdjustOptions 33 | pointerDestinationInfoExit 34 | pointerDestinationInfo 35 | AltSetPointerDestinationMarkerSettings 36 | 37 | 38 | ## License 39 | 40 | **Copyright 2017 Eric Vander Wal** 41 | 42 | 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: 43 | 44 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 45 | 46 | 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. 47 | 48 | ## Current Author and Contributors 49 | 50 | Currently this managed and authored by **Eric Vander Wal** 51 | 52 | If you are interested in contributing to this project, please contact me privately at tcmeric@gmail.com, as well as join our playmaker slack channel: https://invite-playmaker-slack.herokuapp.com 53 | 54 | ## Project Source 55 | 56 | This project can be downloaded in full for free from : https://github.com/ericvanderwal/VRTK_Playmaker3x 57 | 58 | ## Tutorials 59 | 60 | Tutorials about this project can be found online at: https://www.youtube.com/channel/UCyRBYRGl9v_byeKxT4GLG_A 61 | 62 | ## Bugs 63 | 64 | Currently no major bugs have been reported, however this is a work in progress. 65 | -------------------------------------------------------------------------------- /Locomotion/SetMoveInPlace.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | 4 | using UnityEngine; 5 | 6 | namespace HutongGames.PlayMaker.Actions 7 | { 8 | [ActionCategory("VRTK Locomotion")] 9 | [Tooltip("Set move in place settings settings for VRTK.")] 10 | 11 | public class SetMoveInPlace : FsmStateAction 12 | 13 | { 14 | [RequiredField] 15 | [CheckForComponent(typeof(VRTK.VRTK_MoveInPlace))] 16 | public FsmOwnerDefault gameObject; 17 | 18 | [Tooltip("If this is checked then the left controller touchpad will be enabled to move the play area.")] 19 | public FsmBool leftController; 20 | [Tooltip("If this is checked then the right controller touchpad will be enabled to move the play area.")] 21 | public FsmBool rightController; 22 | [Tooltip("Lower to decrease speed, raise to increase.")] 23 | public FsmFloat speedScale; 24 | [Tooltip("The max speed the user can move in game units. (If 0 or less, max speed is uncapped)")] 25 | public FsmFloat maxSpeed; 26 | [Tooltip("The speed in which the play area slows down to a complete stop when the user is no longer pressing the engage button. This deceleration effect can ease any motion sickness that may be suffered.")] 27 | public FsmFloat deceleration; 28 | [Tooltip("The speed in which the play area slows down to a complete stop when the user is falling.")] 29 | public FsmFloat fallingDeceleration; 30 | [Tooltip("The degree threshold that all tracked objects (controllers, headset) must be within to change direction when using the Smart Decoupling Direction Method.")] 31 | public FsmFloat smartDecoupleThreshold; 32 | [Tooltip("The maximum amount of movement required to register in the virtual world. Decreasing this will increase acceleration, and vice versa.")] 33 | public FsmFloat sensitivity; 34 | [Tooltip("Select which button to hold to engage Move In Place.")] 35 | [ObjectType(typeof(VRTK.VRTK_ControllerEvents.ButtonAlias))] 36 | public FsmEnum engageButton; 37 | [Tooltip("Select which trackables are used to determine movement.")] 38 | [ObjectType(typeof(VRTK.VRTK_MoveInPlace.ControlOptions))] 39 | public FsmEnum controlOptions; 40 | [Tooltip("How the user's movement direction will be determined. The Gaze method tends to lead to the least motion sickness. Smart decoupling is still a Work In Progress.")] 41 | [ObjectType(typeof(VRTK.VRTK_MoveInPlace.DirectionalMethod))] 42 | public FsmEnum directionMethod; 43 | 44 | 45 | 46 | 47 | public FsmBool everyFrame; 48 | 49 | VRTK.VRTK_MoveInPlace theScript; 50 | 51 | public override void Reset() 52 | { 53 | 54 | leftController = true; 55 | rightController = true; 56 | speedScale = null; 57 | maxSpeed = null; 58 | deceleration = null; 59 | fallingDeceleration = null; 60 | smartDecoupleThreshold = null; 61 | gameObject = null; 62 | engageButton = null; 63 | controlOptions = null; 64 | directionMethod = null; 65 | everyFrame = false; 66 | } 67 | 68 | public override void OnEnter() 69 | { 70 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 71 | 72 | theScript = go.GetComponent(); 73 | 74 | if (!everyFrame.Value) 75 | { 76 | MakeItSo(); 77 | Finish(); 78 | } 79 | 80 | } 81 | 82 | public override void OnUpdate() 83 | { 84 | if (everyFrame.Value) 85 | { 86 | MakeItSo(); 87 | } 88 | } 89 | 90 | 91 | void MakeItSo() 92 | { 93 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 94 | if (go == null) 95 | { 96 | return; 97 | } 98 | 99 | theScript.leftController = leftController.Value; 100 | theScript.rightController = rightController.Value; 101 | theScript.speedScale = speedScale.Value; 102 | theScript.maxSpeed = maxSpeed.Value; 103 | theScript.deceleration = deceleration.Value; 104 | theScript.fallingDeceleration = fallingDeceleration.Value; 105 | theScript.smartDecoupleThreshold = smartDecoupleThreshold.Value; 106 | theScript.engageButton = (VRTK.VRTK_ControllerEvents.ButtonAlias)engageButton.Value; 107 | theScript.controlOptions = (VRTK.VRTK_MoveInPlace.ControlOptions)controlOptions.Value; 108 | theScript.directionMethod = (VRTK.VRTK_MoveInPlace.DirectionalMethod)directionMethod.Value; 109 | } 110 | 111 | } 112 | } 113 | 114 | 115 | 116 | 117 | 118 | 119 | -------------------------------------------------------------------------------- /Locomotion/SetDashTeleportHeightAdjustOptions.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | 4 | using UnityEngine; 5 | using VRTK; 6 | 7 | #if VRTK_VERSION_3_2_0_OR_NEWER 8 | 9 | namespace HutongGames.PlayMaker.Actions 10 | { 11 | [ActionCategory("VRTK Locomotion")] 12 | [Tooltip("Set basic teleport settings for VRTK.")] 13 | 14 | public class SetDashTeleportHeightAdjustOptions : FsmStateAction 15 | 16 | { 17 | [RequiredField] 18 | [CheckForComponent(typeof(VRTK.VRTK_DashTeleport))] 19 | public FsmOwnerDefault gameObject; 20 | 21 | [Tooltip("The fixed time it takes to dash to a new position.")] 22 | public FsmFloat normalLerpTime = 0.1f; // 100ms for every dash above minDistanceForNormalLerp 23 | [Tooltip("The minimum speed for dashing in meters per second.")] 24 | public FsmFloat minSpeedMps = 50.0f; // clamped to minimum speed 50m/s to avoid sickness 25 | [Tooltip("The Offset of the CapsuleCast above the camera.")] 26 | public FsmFloat capsuleTopOffset = 0.2f; 27 | [Tooltip("The Offset of the CapsuleCast below the camera.")] 28 | public FsmFloat capsuleBottomOffset = 0.5f; 29 | [Tooltip("The radius of the CapsuleCast.")] 30 | public FsmFloat capsuleRadius = 0.5f; 31 | [Tooltip("The layers to ignore.")] 32 | [UIHint(UIHint.Layer)] 33 | public FsmInt layersToIgnore; 34 | 35 | public FsmBool everyFrame; 36 | 37 | VRTK.VRTK_DashTeleport theScript; 38 | 39 | public override void Reset() 40 | { 41 | 42 | gameObject = null; 43 | layersToIgnore = null; 44 | normalLerpTime = null; 45 | minSpeedMps = null; 46 | capsuleTopOffset = null; 47 | capsuleBottomOffset = null; 48 | capsuleRadius = null; 49 | everyFrame = false; 50 | } 51 | 52 | public override void OnEnter() 53 | { 54 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 55 | 56 | theScript = go.GetComponent(); 57 | 58 | if (!everyFrame.Value) 59 | { 60 | MakeItSo(); 61 | Finish(); 62 | } 63 | 64 | } 65 | 66 | public override void OnUpdate() 67 | { 68 | if (everyFrame.Value) 69 | { 70 | MakeItSo(); 71 | } 72 | } 73 | 74 | 75 | void MakeItSo() 76 | { 77 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 78 | if (go == null) 79 | { 80 | return; 81 | } 82 | 83 | theScript.customRaycast.layersToIgnore = (LayerMask)layersToIgnore.Value; 84 | theScript.normalLerpTime = normalLerpTime.Value; 85 | theScript.minSpeedMps = minSpeedMps.Value; 86 | theScript.capsuleTopOffset = capsuleTopOffset.Value; 87 | theScript.capsuleBottomOffset = capsuleBottomOffset.Value; 88 | theScript.capsuleRadius = capsuleRadius.Value; 89 | 90 | } 91 | 92 | } 93 | } 94 | 95 | #else 96 | 97 | namespace HutongGames.PlayMaker.Actions 98 | { 99 | [ActionCategory("VRTK Locomotion")] 100 | [Tooltip("Set basic teleport settings for VRTK.")] 101 | 102 | public class SetDashTeleportHeightAdjustOptions : FsmStateAction 103 | 104 | { 105 | [RequiredField] 106 | [CheckForComponent(typeof(VRTK.VRTK_DashTeleport))] 107 | public FsmOwnerDefault gameObject; 108 | 109 | [Tooltip("The fixed time it takes to dash to a new position.")] 110 | public FsmFloat normalLerpTime = 0.1f; // 100ms for every dash above minDistanceForNormalLerp 111 | [Tooltip("The minimum speed for dashing in meters per second.")] 112 | public FsmFloat minSpeedMps = 50.0f; // clamped to minimum speed 50m/s to avoid sickness 113 | [Tooltip("The Offset of the CapsuleCast above the camera.")] 114 | public FsmFloat capsuleTopOffset = 0.2f; 115 | [Tooltip("The Offset of the CapsuleCast below the camera.")] 116 | public FsmFloat capsuleBottomOffset = 0.5f; 117 | [Tooltip("The radius of the CapsuleCast.")] 118 | public FsmFloat capsuleRadius = 0.5f; 119 | [Tooltip("The layers to ignore.")] 120 | [UIHint(UIHint.Layer)] 121 | public FsmInt layersToIgnore; 122 | 123 | public FsmBool everyFrame; 124 | 125 | VRTK.VRTK_DashTeleport theScript; 126 | 127 | public override void Reset() 128 | { 129 | 130 | gameObject = null; 131 | layersToIgnore = null; 132 | normalLerpTime = null; 133 | minSpeedMps = null; 134 | capsuleTopOffset = null; 135 | capsuleBottomOffset = null; 136 | capsuleRadius = null; 137 | everyFrame = false; 138 | } 139 | 140 | public override void OnEnter() 141 | { 142 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 143 | 144 | theScript = go.GetComponent(); 145 | 146 | if (!everyFrame.Value) 147 | { 148 | MakeItSo(); 149 | Finish(); 150 | } 151 | 152 | } 153 | 154 | public override void OnUpdate() 155 | { 156 | if (everyFrame.Value) 157 | { 158 | MakeItSo(); 159 | } 160 | } 161 | 162 | 163 | void MakeItSo() 164 | { 165 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 166 | if (go == null) 167 | { 168 | return; 169 | } 170 | 171 | theScript.layersToIgnore = (LayerMask)layersToIgnore.Value; 172 | theScript.normalLerpTime = normalLerpTime.Value; 173 | theScript.minSpeedMps = minSpeedMps.Value; 174 | theScript.capsuleTopOffset = capsuleTopOffset.Value; 175 | theScript.capsuleBottomOffset = capsuleBottomOffset.Value; 176 | theScript.capsuleRadius = capsuleRadius.Value; 177 | 178 | } 179 | 180 | } 181 | } 182 | 183 | #endif -------------------------------------------------------------------------------- /Locomotion/SetHeightAdjustTeleport.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | 4 | using UnityEngine; 5 | using VRTK; 6 | 7 | #if VRTK_VERSION_3_2_0_OR_NEWER 8 | 9 | namespace HutongGames.PlayMaker.Actions 10 | { 11 | [ActionCategory("VRTK Locomotion")] 12 | [Tooltip("Set height adjust teleport settings for VRTK.")] 13 | 14 | public class SetHeightAdjustTeleport : FsmStateAction 15 | 16 | { 17 | [RequiredField] 18 | [CheckForComponent(typeof(VRTK.VRTK_HeightAdjustTeleport))] 19 | public FsmOwnerDefault gameObject; 20 | 21 | [Tooltip("The fade blink speed can be changed on the basic teleport script to provide a customised teleport experience. Setting the speed to 0 will mean no fade blink effect is present.")] 22 | public FsmFloat blinkTransitionSpeed; 23 | [Tooltip("A range between 0 and 32 that determines how long the blink transition will stay blacked out depending on the distance being teleported. A value of 0 will not delay the teleport blink effect over any distance, a value of 32 will delay the teleport blink fade in even when the distance teleported is very close to the original position. This can be used to simulate time taking longer to pass the further a user teleports. A value of 16 provides a decent basis to simulate this to the user.")] 24 | [HasFloatSliderAttribute(0, 32f)] 25 | public FsmFloat distanceBlinkDelay; 26 | [Tooltip("If this is checked then the teleported location will be the position of the headset within the play area. If it is unchecked then the teleported location will always be the centre of the play area even if the headset position is not in the centre of the play area.")] 27 | public FsmBool headsetPositionCompensation; 28 | [Tooltip("The max distance the teleport destination can be outside the nav mesh to be considered valid. If a value of `0` is given then the nav mesh restrictions will be ignored.")] 29 | public FsmFloat navMeshLimitDistance; 30 | [Tooltip("The layers to ignore.")] 31 | [UIHint(UIHint.Layer)] 32 | public FsmInt layersToIgnore; 33 | 34 | public FsmBool everyFrame; 35 | 36 | VRTK.VRTK_HeightAdjustTeleport theScript; 37 | 38 | public override void Reset() 39 | { 40 | 41 | gameObject = null; 42 | layersToIgnore = null; 43 | blinkTransitionSpeed = null; 44 | distanceBlinkDelay = null; 45 | headsetPositionCompensation = false; 46 | navMeshLimitDistance = null; 47 | everyFrame = false; 48 | } 49 | 50 | public override void OnEnter() 51 | { 52 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 53 | 54 | theScript = go.GetComponent(); 55 | 56 | if (!everyFrame.Value) 57 | { 58 | MakeItSo(); 59 | Finish(); 60 | } 61 | 62 | } 63 | 64 | public override void OnUpdate() 65 | { 66 | if (everyFrame.Value) 67 | { 68 | MakeItSo(); 69 | } 70 | } 71 | 72 | 73 | void MakeItSo() 74 | { 75 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 76 | if (go == null) 77 | { 78 | return; 79 | } 80 | 81 | theScript.customRaycast.layersToIgnore = (LayerMask)layersToIgnore.Value; 82 | theScript.blinkTransitionSpeed = blinkTransitionSpeed.Value; 83 | theScript.distanceBlinkDelay = distanceBlinkDelay.Value; 84 | theScript.headsetPositionCompensation = headsetPositionCompensation.Value; 85 | theScript.navMeshLimitDistance = navMeshLimitDistance.Value; 86 | 87 | } 88 | 89 | } 90 | } 91 | 92 | #else 93 | 94 | namespace HutongGames.PlayMaker.Actions 95 | { 96 | [ActionCategory("VRTK Locomotion")] 97 | [Tooltip("Set height adjust teleport settings for VRTK.")] 98 | 99 | public class SetHeightAdjustTeleport : FsmStateAction 100 | 101 | { 102 | [RequiredField] 103 | [CheckForComponent(typeof(VRTK.VRTK_HeightAdjustTeleport))] 104 | public FsmOwnerDefault gameObject; 105 | 106 | [Tooltip("The fade blink speed can be changed on the basic teleport script to provide a customised teleport experience. Setting the speed to 0 will mean no fade blink effect is present.")] 107 | public FsmFloat blinkTransitionSpeed; 108 | [Tooltip("A range between 0 and 32 that determines how long the blink transition will stay blacked out depending on the distance being teleported. A value of 0 will not delay the teleport blink effect over any distance, a value of 32 will delay the teleport blink fade in even when the distance teleported is very close to the original position. This can be used to simulate time taking longer to pass the further a user teleports. A value of 16 provides a decent basis to simulate this to the user.")] 109 | [HasFloatSliderAttribute(0, 32f)] 110 | public FsmFloat distanceBlinkDelay; 111 | [Tooltip("If this is checked then the teleported location will be the position of the headset within the play area. If it is unchecked then the teleported location will always be the centre of the play area even if the headset position is not in the centre of the play area.")] 112 | public FsmBool headsetPositionCompensation; 113 | [Tooltip("The max distance the teleport destination can be outside the nav mesh to be considered valid. If a value of `0` is given then the nav mesh restrictions will be ignored.")] 114 | public FsmFloat navMeshLimitDistance; 115 | [Tooltip("The layers to ignore.")] 116 | [UIHint(UIHint.Layer)] 117 | public FsmInt layersToIgnore; 118 | 119 | public FsmBool everyFrame; 120 | 121 | VRTK.VRTK_HeightAdjustTeleport theScript; 122 | 123 | public override void Reset() 124 | { 125 | 126 | gameObject = null; 127 | layersToIgnore = null; 128 | blinkTransitionSpeed = null; 129 | distanceBlinkDelay = null; 130 | headsetPositionCompensation = false; 131 | navMeshLimitDistance = null; 132 | everyFrame = false; 133 | } 134 | 135 | public override void OnEnter() 136 | { 137 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 138 | 139 | theScript = go.GetComponent(); 140 | 141 | if (!everyFrame.Value) 142 | { 143 | MakeItSo(); 144 | Finish(); 145 | } 146 | 147 | } 148 | 149 | public override void OnUpdate() 150 | { 151 | if (everyFrame.Value) 152 | { 153 | MakeItSo(); 154 | } 155 | } 156 | 157 | 158 | void MakeItSo() 159 | { 160 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 161 | if (go == null) 162 | { 163 | return; 164 | } 165 | 166 | theScript.layersToIgnore = (LayerMask)layersToIgnore.Value; 167 | theScript.blinkTransitionSpeed = blinkTransitionSpeed.Value; 168 | theScript.distanceBlinkDelay = distanceBlinkDelay.Value; 169 | theScript.headsetPositionCompensation = headsetPositionCompensation.Value; 170 | theScript.navMeshLimitDistance = navMeshLimitDistance.Value; 171 | 172 | } 173 | 174 | } 175 | } 176 | 177 | #endif -------------------------------------------------------------------------------- /Scripts/SetBodyPhysicsSnapToFloorSettings.cs: -------------------------------------------------------------------------------- 1 | // Custom Action by DumbGameDev 2 | // www.dumbgamedev.com 3 | 4 | using UnityEngine; 5 | using VRTK; 6 | 7 | #if VRTK_VERSION_3_2_0_OR_NEWER 8 | 9 | namespace HutongGames.PlayMaker.Actions 10 | { 11 | [ActionCategory("VRTK Locomotion")] 12 | [Tooltip("Enable Snap to Floor Settings for Body Physics for VRTK.")] 13 | 14 | public class SetBodyPhysicsSnapToFloorSettings : FsmStateAction 15 | 16 | { 17 | [RequiredField] 18 | [CheckForComponent(typeof(VRTK.VRTK_BodyPhysics))] 19 | public FsmOwnerDefault gameObject; 20 | 21 | [Tooltip("The layers to ignore when raycasting to find floors.")] 22 | [UIHint(UIHint.Layer)] 23 | public FsmInt layersToIgnore; 24 | [ObjectType(typeof(VRTK.VRTK_BodyPhysics.FallingRestrictors))] 25 | [Tooltip("A check to see if the drop to nearest floor should take place. If the selected restrictor is still over the current floor then the drop to nearest floor will not occur. Works well for being able to lean over ledges and look down. Only works for falling down not teleporting up.")] 26 | public FsmEnum fallRestriction; 27 | [Tooltip("When the `y` distance between the floor and the headset exceeds this distance and `Enable Body Collisions` is true then the rigidbody gravity will be used instead of teleport to drop to nearest floor.")] 28 | public FsmFloat gravityFallYThreshold; 29 | [Tooltip("The `y` distance between the floor and the headset that must change before a fade transition is initiated. If the new user location is at a higher distance than the threshold then the headset blink transition will activate on teleport. If the new user location is within the threshold then no blink transition will happen, which is useful for walking up slopes, meshes and terrains to prevent constant blinking.")] 30 | public FsmFloat blinkYThreshold; 31 | [Tooltip("The amount the `y` position needs to change by between the current floor `y` position and the previous floor `y` position before a change in floor height is considered to have occurred. A higher value here will mean that a `Drop To Floor` will be less likely to happen if the `y` of the floor beneath the user hasn't changed as much as the given threshold.")] 32 | public FsmFloat floorHeightTolerance; 33 | 34 | public FsmBool everyFrame; 35 | 36 | VRTK.VRTK_BodyPhysics theScript; 37 | 38 | public override void Reset() 39 | { 40 | layersToIgnore = null; 41 | fallRestriction = null; 42 | gravityFallYThreshold = null; 43 | blinkYThreshold = null; 44 | floorHeightTolerance = null; 45 | gameObject = null; 46 | everyFrame = false; 47 | } 48 | 49 | public override void OnEnter() 50 | { 51 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 52 | 53 | theScript = go.GetComponent(); 54 | 55 | if (!everyFrame.Value) 56 | { 57 | MakeItSo(); 58 | Finish(); 59 | } 60 | 61 | } 62 | 63 | public override void OnUpdate() 64 | { 65 | if (everyFrame.Value) 66 | { 67 | MakeItSo(); 68 | } 69 | } 70 | 71 | 72 | void MakeItSo() 73 | { 74 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 75 | if (go == null) 76 | { 77 | return; 78 | } 79 | 80 | theScript.customRaycast.layersToIgnore = (LayerMask)layersToIgnore.Value; 81 | theScript.fallRestriction = (VRTK.VRTK_BodyPhysics.FallingRestrictors)fallRestriction.Value; 82 | theScript.gravityFallYThreshold = gravityFallYThreshold.Value; 83 | theScript.blinkYThreshold = blinkYThreshold.Value; 84 | theScript.floorHeightTolerance = floorHeightTolerance.Value; 85 | } 86 | 87 | } 88 | } 89 | 90 | #else 91 | 92 | namespace HutongGames.PlayMaker.Actions 93 | { 94 | [ActionCategory("VRTK Locomotion")] 95 | [Tooltip("Enable Snap to Floor Settings for Body Physics for VRTK.")] 96 | 97 | public class SetBodyPhysicsSnapToFloorSettings : FsmStateAction 98 | 99 | { 100 | [RequiredField] 101 | [CheckForComponent(typeof(VRTK.VRTK_BodyPhysics))] 102 | public FsmOwnerDefault gameObject; 103 | 104 | [Tooltip("The layers to ignore when raycasting to find floors.")] 105 | [UIHint(UIHint.Layer)] 106 | public FsmInt layersToIgnore; 107 | [ObjectType(typeof(VRTK.VRTK_BodyPhysics.FallingRestrictors))] 108 | [Tooltip("A check to see if the drop to nearest floor should take place. If the selected restrictor is still over the current floor then the drop to nearest floor will not occur. Works well for being able to lean over ledges and look down. Only works for falling down not teleporting up.")] 109 | public FsmEnum fallRestriction; 110 | [Tooltip("When the `y` distance between the floor and the headset exceeds this distance and `Enable Body Collisions` is true then the rigidbody gravity will be used instead of teleport to drop to nearest floor.")] 111 | public FsmFloat gravityFallYThreshold; 112 | [Tooltip("The `y` distance between the floor and the headset that must change before a fade transition is initiated. If the new user location is at a higher distance than the threshold then the headset blink transition will activate on teleport. If the new user location is within the threshold then no blink transition will happen, which is useful for walking up slopes, meshes and terrains to prevent constant blinking.")] 113 | public FsmFloat blinkYThreshold; 114 | [Tooltip("The amount the `y` position needs to change by between the current floor `y` position and the previous floor `y` position before a change in floor height is considered to have occurred. A higher value here will mean that a `Drop To Floor` will be less likely to happen if the `y` of the floor beneath the user hasn't changed as much as the given threshold.")] 115 | public FsmFloat floorHeightTolerance; 116 | 117 | public FsmBool everyFrame; 118 | 119 | VRTK.VRTK_BodyPhysics theScript; 120 | 121 | public override void Reset() 122 | { 123 | layersToIgnore = null; 124 | fallRestriction = null; 125 | gravityFallYThreshold = null; 126 | blinkYThreshold = null; 127 | floorHeightTolerance = null; 128 | gameObject = null; 129 | everyFrame = false; 130 | } 131 | 132 | public override void OnEnter() 133 | { 134 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 135 | 136 | theScript = go.GetComponent(); 137 | 138 | if (!everyFrame.Value) 139 | { 140 | MakeItSo(); 141 | Finish(); 142 | } 143 | 144 | } 145 | 146 | public override void OnUpdate() 147 | { 148 | if (everyFrame.Value) 149 | { 150 | MakeItSo(); 151 | } 152 | } 153 | 154 | 155 | void MakeItSo() 156 | { 157 | var go = Fsm.GetOwnerDefaultTarget(gameObject); 158 | if (go == null) 159 | { 160 | return; 161 | } 162 | 163 | theScript.layersToIgnore = (LayerMask)layersToIgnore.Value; 164 | theScript.fallRestriction = (VRTK.VRTK_BodyPhysics.FallingRestrictors)fallRestriction.Value; 165 | theScript.gravityFallYThreshold = gravityFallYThreshold.Value; 166 | theScript.blinkYThreshold = blinkYThreshold.Value; 167 | theScript.floorHeightTolerance = floorHeightTolerance.Value; 168 | } 169 | 170 | } 171 | } 172 | 173 | #endif --------------------------------------------------------------------------------