承接ARKit案例开发/宣传Demo开发/游戏开发 QQ:2118590660
http://edu.manew.com/user/98138
ARKit 识别到平面后会以委托的方式传出来
分别为 添加一个平面、 更新平面、移除平面
public delegate void ARAnchorAdded(ARPlaneAnchor anchorData);
public static event ARAnchorAdded ARAnchorAddedEvent;
public delegate void ARAnchorUpdated(ARPlaneAnchor anchorData);
public static event ARAnchorUpdated ARAnchorUpdatedEvent;
public delegate void ARAnchorRemoved(ARPlaneAnchor anchorData);
public static event ARAnchorRemoved ARAnchorRemovedEvent;
我这边写个小测试,在它每识别出一个新的平面的时候创建物体
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.XR.iOS;
public class GameController : MonoBehaviour {
public GameObject obj;
void OnEnable()
{
UnityARSessionNativeInterface.ARAnchorAddedEvent += MyARAnchorAdded;
}
void OnDisable()
{
UnityARSessionNativeInterface.ARAnchorAddedEvent -= MyARAnchorAdded;
}
void MyARAnchorAdded(ARPlaneAnchor anchorData)
{
GameObject currentObj = GameObject.Instantiate (obj) as GameObject;
currentObj.transform.position = UnityARMatrixOps.GetPosition (anchorData.transform);
}
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}