Files
ImaageQ_Unity_App/Assets/Rendering/Scripts/ScalateAndRotateObjectAR.cs
Ignacio Gómez Puga 5847d844a5 Removed TOTU 103
2025-03-04 12:04:52 -06:00

50 lines
1.4 KiB
C#

using UnityEngine;
public class ScalateAndRotateObjectAR : MonoBehaviour
{
public GameObject furniture;
public Camera arCamera;
public float rotationSpeed = 100f;
private bool isRotating;
private Vector2 lastTouchPosition;
// Update is called once per frame
void Update()
{
HandleRotation();
}
void HandleRotation()
{
// Comprobar si hay un toque en la pantalla
if (Input.touchCount > 0)
{
Touch touch = Input.GetTouch(0);
// Si el toque ha comenzado
if (touch.phase == TouchPhase.Began)
{
lastTouchPosition = touch.position;
isRotating = true;
}
// Mientras se arrastra el dedo en la pantalla
else if (touch.phase == TouchPhase.Moved && isRotating)
{
Vector2 touchDelta = touch.position - lastTouchPosition;
float rotatiorAmount = touchDelta.x * rotationSpeed * Time.deltaTime;
// Rotar el mueble sobre el eje Y
furniture.transform.Rotate(0, -rotatiorAmount, 0);
lastTouchPosition = touch.position;
}
// Cuando el toque termina
else if (touch.phase == TouchPhase.Ended || touch.phase == TouchPhase.Canceled)
{
isRotating = false;
}
}
}
}