public class NewBehaviourScript1 : MonoBehaviour { [SerializeField] private GameObject Prefab; [SerializeField] private Camera arCamera; [SerializeField] private ARRaycastManager raycastManager; private List<ARRaycastHit> raycastHits = new List<ARRaycastHit>(); private void Update() { if (Input.touchCount <= 0) return; var touch = Input.GetTouch(0); if (touch.phase == TouchPhase.Began) { // arCameraカメラからrayを照射 var ray = arCamera.ScreenPointToRay(touch.position); // Cubeをタップした場合は削除する RaycastHit hit; bool hasHit = Physics.Raycast(ray, out hit); if (hasHit) { var target = hit.collider.gameObject; if (target.name.Contains("Cube")) { Destroy(target); return; } } } } }
前提・実現したいこと
unityのAR Tracked Imageを用いてARマーカーで表示されたオブジェクトをスマホ画面のタッチで消したいと考えています。さまざまなサイトを参考に上のソースコードを試してみましたがオブジェクトが消えないという状況になります。Rayを飛ばす必要はあるのでしょうか?どこの部分が悪いか、どういうコードを加えればよいか教えてくださると幸いです。
あなたの回答
tips
プレビュー