public void Start() { zoomTarget = 3.4f; angleTarget = PositionToVector(CameraPosition.Center); TouchController tc = TouchController.GetController(); tc.startTouch += StartTouch; tc.endTouch += EndTouch; }
private void LateUpdate() { TouchController tc = TouchController.GetController(); Vector2? vX = tc.Position(); Vector2? vD = tc.Delta(); if (vX.HasValue && vD.HasValue && vD.Value.magnitude > dragThreshold) { Vector2 v = vX.Value; Ray raycast = Camera.main.ScreenPointToRay(v); RaycastHit r; if (Physics.Raycast(raycast, out r, Mathf.Infinity)) { Debug.DrawRay(raycast.origin, r.point - raycast.origin, Color.red, 3); Vector3 difference = r.point - dragOrigin; Vector3 target = transform.position - difference; transform.position = Vector3.Lerp(transform.position, target, .75f); dragOrigin = r.point; } } }