// Update is called once per frame void Update() { //Change seabed using VR if ((clickMove.GetLastStateDown(handtype) && clickAxis.GetLastAxis(handtype).y < 0) || Input.GetKeyDown(KeyCode.DownArrow)) { if (nActualSeaBed > 0) { nActualSeaBed--; seaBed.GetComponent <MeshFilter>().mesh = seaBeds[nActualSeaBed]; imageVR.sprite = seaBedMaps[nActualSeaBed]; imageFS.sprite = seaBedMaps[nActualSeaBed]; dataTimeTextVR.text = "Year: " + (GetComponent <TimeChange>().years[nActualSeaBed]).ToString(); dataTimeTextFS.text = "Year: " + (GetComponent <TimeChange>().years[nActualSeaBed]).ToString(); } } //Change seabed using Flat Screens if ((clickMove.GetLastStateDown(handtype) && clickAxis.GetLastAxis(handtype).y > 0) || Input.GetKeyDown(KeyCode.UpArrow)) { if (nActualSeaBed < seaBeds.Length - 1) { nActualSeaBed++; seaBed.GetComponent <MeshFilter>().mesh = seaBeds[nActualSeaBed]; imageVR.sprite = seaBedMaps[nActualSeaBed]; imageFS.sprite = seaBedMaps[nActualSeaBed]; dataTimeTextVR.text = "Year: " + (GetComponent <TimeChange>().years[nActualSeaBed]).ToString(); dataTimeTextFS.text = "Year: " + (GetComponent <TimeChange>().years[nActualSeaBed]).ToString(); } } }
public SteamVR_Action_Boolean trackpadAction; // actions/default/in/teleport //Per a que aço funcione, has d'anyadir al GameObject que te este script un altre script que es diu //ActionSetONLoad y ficar el ActionSet que anem a utilitzar void Update() { if (trackpadAction.GetLastStateDown(SteamVR_Input_Sources.LeftHand)) { Pulse(4, 320, 1, SteamVR_Input_Sources.LeftHand); } if (trackpadAction.GetLastStateDown(SteamVR_Input_Sources.RightHand)) { Pulse(1, 75, 0.2f, SteamVR_Input_Sources.RightHand); } }
// Update is called once per frame void Update() { if (gripAction.GetLastStateDown(handType)) { if (collidingObject && collidingObject.tag != "Bubble") { GrabObject(); } } if (gripAction.GetLastStateUp(handType)) { if (objectInHand) { ReleaseObject(); } } if (swapAction.GetState(SteamVR_Input_Sources.LeftHand) && swapAction.GetState(SteamVR_Input_Sources.RightHand) && !swapped) { print("Swapped"); swapped = true; ControllerActionScript controlScript = GetComponent <ControllerActionScript>(); controlScript.enabled = !controlScript.enabled; LaserScript laserScript = GetComponent <LaserScript>(); laserScript.enabled = !laserScript.enabled; } else if (!swapAction.GetState(SteamVR_Input_Sources.LeftHand) && !swapAction.GetState(SteamVR_Input_Sources.RightHand) && swapped) { print("deswap"); swapped = false; } }
/// <summary> /// function for updates each frame /// </summary> void Update() { RaycastHit hit; //Test if ray collided wit something if (Physics.Raycast(controllerPose.transform.position, linePoint.forward, out hit, maxRange, interactMask)) { ShowLaser(hit); hitPoint = hit.point; Button element; //Checks if has UI button component if (hit.transform.TryGetComponent(out element)) { DisableSelection(); selectedElement = element; element.targetGraphic.color = element.colors.highlightedColor; //Checks if button is pressed if (selectAction.GetLastStateDown(handType)) { element.targetGraphic.color = element.colors.pressedColor; element.onClick.Invoke(); } } else { DisableSelection(); } } else { DisableSelection(); laser.SetActive(false); } }
// Update is called once per frame void Update() { if (teleportAction.GetLastStateDown(handType)) { if (ControllerUseEvent != null) { ControllerUseEvent("positionReset", handType.ToString(), "down"); } DecideOnResetType("position"); } if (teleportAction.GetLastStateUp(handType)) { if (ControllerUseEvent != null) { ControllerUseEvent("positionReset", handType.ToString(), "up"); } } if (menuAction.GetLastStateDown(handType)) { if (ControllerUseEvent != null) { ControllerUseEvent("rotationReset", handType.ToString(), "down"); } DecideOnResetType("rotation"); } if (menuAction.GetLastStateUp(handType)) { if (ControllerUseEvent != null) { ControllerUseEvent("rotationReset", handType.ToString(), "up"); } } }
private void Update() { if (laserAction.GetState(inputSource)) { RaycastHit hit; if (Physics.Raycast(controllerPose.transform.position, transform.forward, out hit, maxDistance)) { Laser.ShowLaser(controllerPose.transform.position, hit.point, laser); } else { Laser.ShowLaser(controllerPose.transform.position, controllerPose.transform.position + controllerPose.transform.forward * maxDistance, laser); } } else { laser.SetActive(false); } if (teleportAction.GetLastStateDown(inputSource)) { RaycastHit hit; if (Physics.Raycast(controllerPose.transform.position, transform.forward, out hit, maxDistance)) { Vector3 offset = new Vector3(playerCamera.transform.position.x, 0, playerCamera.transform.position.z); Vector3 camxz = new Vector3(camRig.transform.position.x, 0, camRig.transform.position.z); offset -= camxz; camRig.transform.position = hit.point - offset; } } }
void Update() { if (grabAction.GetLastStateDown(handType)) { Image.transform.Rotate(new Vector3(90.0f, 0.0f, 0.0f)); } }
private void touchDetection(SteamVR_Input_Sources handType, bool isLeft) { if (grabPinchAction.GetStateUp(handType)) { Debug.Log("Button released"); if (isLeft) { setLeftTriggerDown(false); } else { setRightTriggerDown(false); } } if (grabPinchAction.GetLastStateDown(handType)) { Debug.Log("Button down"); if (isLeft) { setLeftTriggerDown(true); } else { setRightTriggerDown(true); } } }
// Update is called once per frame void Update() { if (asdasd == null) { asdasd = pouch_pad_object.transform.Find("trackpad_touch"); Debug.Log("asd"); } //pouch_pad_object if (touch_Pad.GetLastStateDown(handType)) { if (asdasd.localPosition.x > 0) { asdasdasd = 1; } if (asdasd.localPosition.x < 0) { asdasdasd = -1; } Main_camera.transform.Rotate(0, 15 * asdasdasd, 0); } //if(touch_position.GetLastState(handType)) //{ // if (asdasd.localPosition.x > 0) // asdasdasd = 1; // if (asdasd.localPosition.x < 0) // asdasdasd = -1; //} }
private void Update() { if (isFading) { return; } isHandInArea = playerBody.isHeadInArea ? Mathf.Abs(transform.localPosition.x) < playerBody.currentPlayfieldSize.x / 2.0f && Mathf.Abs(transform.localPosition.z) < playerBody.currentPlayfieldSize.z / 2.0f : false; if (isHandInArea) // is the hand within the playspace { if (grabAction.GetLastStateDown(hand) && holdAction.GetState(hand)) { if (collidingObject) { GrabObject(); } } } if (grabAction.GetLastStateUp(hand)) { if (GetComponent <FixedJoint>() != null) { ReleaseObject(); } } }
public override void Process() { // Reset data, set camera m_Data.Reset(); m_Data.position = new Vector2(m_Camera.pixelWidth / 2, m_Camera.pixelHeight / 2); //Raycast eventSystem.RaycastAll(m_Data, m_RaycastResultCache); m_Data.pointerCurrentRaycast = FindFirstRaycast(m_RaycastResultCache); m_CurrentObject = m_Data.pointerCurrentRaycast.gameObject; //Clear Raycast m_RaycastResultCache.Clear(); //Handle Hover States HandlePointerExitAndEnter(m_Data, m_CurrentObject); //Press if (m_ClickAction.GetLastStateDown(m_TargetSource)) { ProcessPress(m_Data); } //Release if (m_ClickAction.GetLastStateUp(m_TargetSource)) { ProcessRelease(m_Data); } }
public bool GetSteamVRValidateDown(Hand hand) { SteamVR_Action_Boolean teleportAction = SteamVR_Input.GetAction <SteamVR_Action_Boolean>("Teleport"); bool state = teleportAction.GetLastStateDown(hand.handType); return(state); }
// Update is called once per frame public void Update() { Vector3 velo = controllerPose.GetAngularVelocity(); //map to scalable number between 0 and 1... // velo.x = 1/(1+ Mathf.Exp(velo.x)); // velo.y = 1/(1+ Mathf.Exp(velo.y)); // velo.z = 1/(1+ Mathf.Exp(velo.z)); if (clicked.GetLastStateDown(handType)) { Debug.Log("xArrow " + controllerPose.transform.position.x); Debug.Log("yArrow " + controllerPose.transform.position.y); Debug.Log("zArrow " + controllerPose.transform.position.z); Debug.Log("xArrowtransformed " + velo.x); Debug.Log("yArrowtransformed " + velo.y); Debug.Log("zArrowtransformed " + velo.z); } // xArrow.gameObject.transform.localScale = new Vector3(velo.x,xArrow.gameObject.transform.localScale.y,xArrow.gameObject.transform.localScale.z); // yArrow.gameObject.transform.localScale = new Vector3(yArrow.gameObject.transform.localScale.x,velo.y,xArrow.gameObject.transform.localScale.z); // zArrow.gameObject.transform.localScale = new Vector3(zArrow.gameObject.transform.localScale.x,zArrow.gameObject.transform.localScale.y,velo.z); xArrow.localScale = new Vector3(velo.x, xArrow.localScale.y, xArrow.localScale.z); yArrow.localScale = new Vector3(yArrow.localScale.x, velo.y, xArrow.localScale.z); zArrow.localScale = new Vector3(zArrow.localScale.x, zArrow.localScale.y, velo.z); // xArrow.position = new Vector3(velo.x,xArrow.localScale.y,xArrow.localScale.z); // yArrow.localPosition = pos; }
void Update() { // コントローラの入力で振動 if (_action.GetLastStateDown(_handType)) { _haptic.Execute(0, DEFAULT_HAPTIC_SECONDS, 1f / DEFAULT_HAPTIC_SECONDS, 1, _handType); } }
void Update() { //// 1 //if (teleportAction.GetState(handType)) //{ RaycastHit hit; if (TeleportAction.GetState(SteamVR_Input_Sources.Any)) { laser.SetActive(false); } // 2 if (Physics.Raycast(controllerPose.transform.position, transform.forward, out hit, 100) && !TeleportAction.GetState(SteamVR_Input_Sources.Any)) { grabbable = hit.transform.gameObject; if ((grabbable.GetComponent("Throwable")) != null) { print(grabbable); } else { grabbable = null; } hitPoint = hit.point; ShowLaser(hit); } ShowLaser(hit); // 1 if (grabAction.GetLastStateDown(handType)) { if (grabbable) { print(grabbable); GrabObject(); } } // 2 if (grabAction.GetLastStateUp(handType)) { if (objectInHand) { ReleaseObject(); } } //} //else // 3 //{ // laser.SetActive(false); //} }
void Update() { if (turnLeftAction.GetLastStateDown(handType)) { Rotate(-turnAmount); } else if (turnRightAction.GetLastStateDown(handType)) { Rotate(turnAmount); } }
void Update() { if (grabAction.GetLastStateDown(handType)) { controller.moveType = MoveCtrl.MoveType.LOOK_AT; } if (grabAction.GetLastStateUp(handType)) { controller.moveType = MoveCtrl.MoveType.DAYDREAM; } }
private void Update() { if (tableSetButton.GetLastState(otherHand.input) && tableSetButton.GetLastStateDown(input)) { GameManager.inst.table.transform.position += new Vector3(0, transform.position.y - GameManager.inst.table.transform.position.y, 0); } if (!grabbingObject && collidingCand.Count > 0) { collidingObject = collidingCand[0]; collidingObject.GetComponent <Outline>().enabled = true; } if (grabButton.GetLastStateDown(input)) { if (!grabbingObject && collidingObject) { grabbingObject = collidingObject; grabbingObject.GetComponent <Rigidbody>().isKinematic = true; if (otherHand.grabbingObject == grabbingObject) { otherHand.DropObject(); } collidingObject = null; collidingCand.Clear(); grabbingObject.GetComponent <Outline>().enabled = false; if (grabbingObject.layer.Equals(LayerMask.NameToLayer("Weapon"))) { grabbingObject.GetComponentInChildren <LineRenderer>().enabled = true; } conModel.SetActive(false); } else { DropObject(); } GetComponent <AudioSource>().Play(); } if (grabbingObject) { grabbingObject.transform.position = transform.position + grabbingObject.GetComponent <GrabbableObject>().pos; grabbingObject.transform.rotation = transform.rotation; grabbingObject.transform.Rotate(grabbingObject.GetComponent <GrabbableObject>().angle); if (hairButton.GetLastStateDown(input)) { grabbingObject.GetComponent <GrabbableObject>().HairTrigger(); if (grabbingObject.layer.Equals(LayerMask.NameToLayer("Panel"))) { grabbingObject = null; conModel.SetActive(true); } } } }
private void Update() { if (grabGripAction.GetLastStateDown(handType)) { if (collidingObject) { GrabObject(); } } if (grabGripAction.GetLastStateUp(handType) && objectInHand) { ReleaseObject(); } }
private void Update() { LerpButton(); if (grip.GetLastStateDown(SteamVR_Input_Sources.RightHand) && lerpingPos > 0.8f) { oldestObject.transform.parent.position = new Vector3(0, 100, 0); FindObjectOfType <VR_pointerObjectSnapper>().selectedObject = oldestObject.transform.parent.gameObject; Destroy(oldestObject); } if (oldestObject == null) { Destroy(this.gameObject); } }
public void Update() { // 1 if (teleportAction.GetState(handType)) { // 2 if (Physics.Raycast(controllerPose.transform.position, transform.forward, out laserhit, 100)) { rayCurrentlyHitting = laserhit.collider.gameObject; if (laserhit.collider.gameObject.tag == "TeleportArea") { hitPoint = laserhit.point; ShowLaser(laserhit); // 1 reticle.SetActive(true); // 2 teleportReticleTransform.position = hitPoint + teleportReticleOffset; // 3 shouldTeleport = true; } else if (laserhit.collider.gameObject.tag == "Button") { hitPoint = laserhit.point; ShowLaser(laserhit); if (grabAction.GetLastStateDown(handType)) { StartButton(laserhit); } } else if (laserhit.collider.gameObject.tag == "TestTrigger") { hitPoint = laserhit.point; ShowLaser(laserhit); } } } else // 3 { laser.SetActive(false); reticle.SetActive(false); } if (teleportAction.GetStateUp(handType) && shouldTeleport) { Teleport(); } }
// Update is called once per frame void Update() { float targetLength = m_defaultLength; RaycastHit hit = CreateRaycast(targetLength); Vector3 endPos = transform.position + transform.forward * targetLength; if (hit.collider != null) { endPos = hit.point; } coolDown -= Time.deltaTime; m_LineRenderer.enabled = coolDown > 0; m_LineRenderer.SetPosition(0, transform.position); m_LineRenderer.SetPosition(1, endPos); if (m_ClickAction.GetLastStateDown(m_TargetSource)) { ButtonFunctions bf; if (coolDown > 0) { if (hit.collider != null) { Debug.Log("Click Hit " + hit.collider.gameObject.name); if ((bf = hit.collider.GetComponent <ButtonFunctions>()) != null) { Debug.Log("Click Sent " + hit.collider.gameObject.name); bf.OnClick(); } } } coolDown = 5; } if (m_ClickAction.GetLastStateUp(m_TargetSource)) { //ProcessRelease(m_Data); } }
//#if ZED_STEAM_VR #if ZED_SVR_2_0_INPUT /// <summary> /// Checks the button state of a given SteamVR boolean action. /// </summary> /// <param name="state">Whether to check if the button/action is just pressed, just released, or is being held down.</param> protected bool CheckSteamVRBoolActionState(SteamVR_Action_Boolean action, ControllerButtonState buttonstate) { switch (buttonstate) { case ControllerButtonState.Down: return(action.GetLastStateDown(GetSteamVRInputSource())); case ControllerButtonState.Held: return(action.GetLastState(GetSteamVRInputSource())); case ControllerButtonState.Up: return(action.GetLastStateUp(GetSteamVRInputSource())); default: return(false); } }
void Update() { if (Index_Finger.GetLastStateDown(Hand_type)) { print("XXXX" + Hand_type); } if (Index_Finger.GetLastState(Hand_type)) { print("XXXX" + Hand_type); Laser.SetActive(true); } if (Index_Finger.GetLastStateUp(Hand_type)) { print("XXXX" + Hand_type); Laser.SetActive(false); } }
// Update is called once per frame void Update() { if (menuAction.GetLastStateDown(handType)) { if (GameObject.FindGameObjectWithTag("Menu") == null) { MenuLoad = Instantiate(MenuObj); MenuLoad.transform.position = CamPos.transform.position + (CamPos.transform.forward * 4); MenuLoad.transform.LookAt(CamPos.transform); MenuLoad.transform.Rotate(0.0f, 90.0f, 0.0f); } else { Destroy(GameObject.FindGameObjectWithTag("Menu")); } } }
void Update() { RaycastHit hit; if (Physics.Raycast(_controllerPose.transform.position, transform.forward, out hit, 100f, _layerMask)) { if (!ReferenceEquals(_hitObject, hit.collider.gameObject)) { if (_hitObject != null) { Highlight(_hitObject, false); } Highlight(hit.collider.gameObject, true); } _hitObject = hit.collider.gameObject; } else { if (_hitObject) { Highlight(_hitObject, false); _hitObject = null; } } if (_grabAction.GetLastStateDown(_handType)) { if (_collidingObject && InLayerMask(_collidingObject)) { Highlight(_hitObject, false); GrabObject(); } } else if (_grabAction.GetLastStateUp(_handType)) { if (_objectInHand) { ReleaseObject(); } } }
// Update is called once per frame public void Update() { Vector3 pos = controllerPose.transform.localPosition; //map to scalable number between 0 and 1... // pos.x = 5/(1+ Mathf.Exp(pos.x)); // pos.y = 1/(1+ Mathf.Exp(pos.y)); // pos.z = 1/(1+ Mathf.Exp(pos.z)); if (clicked.GetLastStateDown(handType)) { Debug.Log("xArrow " + controllerPose.transform.position.x); Debug.Log("yArrow " + controllerPose.transform.position.y); Debug.Log("zArrow " + controllerPose.transform.position.z); Debug.Log("xArrowtransformed " + pos.x); Debug.Log("yArrowtransformed " + pos.y); Debug.Log("zArrowtransformed " + pos.z); } // xArrow.gameObject.transform.localScale = new Vector3(pos.x,xArrow.gameObject.transform.localScale.y,xArrow.gameObject.transform.localScale.z); // yArrow.gameObject.transform.localScale = new Vector3(yArrow.gameObject.transform.localScale.x,pos.y,xArrow.gameObject.transform.localScale.z); // zArrow.gameObject.transform.localScale = new Vector3(zArrow.gameObject.transform.localScale.x,zArrow.gameObject.transform.localScale.y,pos.z); //PROBLEMATIC // for (int i = 0; i < 3; i++){ // Debug.Log(i+"th component" + pos[i]); // pos[i] = -pos[i]; // } xArrow.localScale = new Vector3(pos.x, xArrow.localScale.y, xArrow.localScale.z); yArrow.localScale = new Vector3(yArrow.localScale.x, pos.y, yArrow.localScale.z); zArrow.localScale = new Vector3(zArrow.localScale.x, zArrow.localScale.y, pos.z); // xArrow.position = new Vector3(pos.x,xArrow.localScale.y,xArrow.localScale.z); // yArrow.localPosition = pos; // Hand playerHand; // Vector3 eulerRotation = new Vector3(0,0,playerHand.transform.eulerAngles.z); // transform.rotation = Quaternion.Euler(eulerRotation); testRotation.rotation = Quaternion.Euler(controllerPose.transform.eulerAngles.x, controllerPose.transform.eulerAngles.y, controllerPose.transform.eulerAngles.z); }
// Update is called once per frame void Update() { if (grabAction.GetLastStateDown(handType)) { if (collidingObj) { GrabObject(); } } if (grabAction.GetLastStateUp(handType)) { if (objInHand) { ReleaseObject(); } } }
// Update is called once per frame void Update() { //Debug.Log(sword); if (grabAction.GetLastStateDown(handType)) { if (collidingObject) { GrabObject(); } } if (grabAction.GetLastStateUp(handType)) { if (objectInHand) { //sword.OffGrap(); } } }
// Update is called once per frame void Update() { //잡기 버튼 누를때 if (grabAction.GetLastStateDown(hand)) { if (willObject) { GrabObject(); } } if (grabAction.GetLastStateUp(hand)) { if (grabObject) { ReleaseObject(); } } }