Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
1.3 kB
1
Indexable
Never
using UnityEngine;
using UnityEngine.XR.ARFoundation;

public class ObjectInteraction : MonoBehaviour
{
    private ARRaycastManager raycastManager;
    private GameObject currentObject;

    private void Start()
    {
        raycastManager = FindObjectOfType<ARRaycastManager>();
    }

    private void Update()
    {
        // Sprawdzamy, czy użytkownik dotknął ekranu
        if (Input.touchCount > 0)
        {
            Touch touch = Input.GetTouch(0);

            if (touch.phase == TouchPhase.Began)
            {
                // Tworzymy promień z ekranu do przestrzeni AR
                Ray ray = Camera.main.ScreenPointToRay(touch.position);
                List<ARRaycastHit> hits = new List<ARRaycastHit>();

                // Wykonujemy rzut promienia i sprawdzamy trafienia w obiekty AR
                if (raycastManager.Raycast(ray, hits, TrackableType.FeaturePoint))
                {
                    // Pobieramy trafiony obiekt
                    ARRaycastHit hit = hits[0];
                    currentObject = hit.transform.gameObject;

                    // Ukrywamy trafiony obiekt
                    currentObject.SetActive(false);
                }
            }
        }
    }
}