AR Foundation place object
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.XR.ARFoundation;
using UnityEngine.XR.ARSubsystems;
public class Spawn_object_AR : MonoBehaviour
{
public GameObject spawn_object;
GameObject spawned_object;
ARRaycastManager Arraymanager;
bool object_spawned;
List<ARRaycastHit> hits=new List<ARRaycastHit>();
void Start()
{
Arraymanager=GetComponent<ARRaycastManager>();
object_spawned=false;
}
void Update()
{
if(Input.touchCount>0)
{
if(Arraymanager.Raycast(Input.GetTouch(0).position,hits,TrackableType.PlaneWithinPolygon))
{
var hitPose=hits[0].pose;
if(!object_spawned)
{
spawn_object= Instantiate(spawn_object,hitPose.position,hitPose.rotation) as GameObject;
object_spawned=true;
}
else
{
spawn_object.transform.position=hitPose.position;
}
}
}
}
}