UnityARfoundation获取检测事件(进入、离开)并面板显示回调函数

不管是图像识别、人脸、人体插件给的回调入口基本都是一样的,都是依靠一个事件 

 

using System.Collections;
using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.XR;
using UnityEngine.XR.ARFoundation;
using UnityEngine.Events;

public class HumanBodyInvoke : MonoBehaviour
{
    //检测人体进入和离开!以及更新!并且把回调入口放到外面的监视Inspector面板

    public ARHumanBodyManager MyHumanBodyComp;
    public ARFaceManager MYFaceDe;
    public ARTrackedImageManager MyimageT;
    public ARPointCloudManager pion;

    [Header("这是一个事件")]
    public UnityEvent HumanFound;
 

    void Start()

    {
        MyHumanBodyComp.humanBodiesChanged += MyHumanBodyComp_humanBodiesChanged;//事件(触发)+执行、事件与委托
        MYFaceDe.facesChanged += MYFaceDe_facesChanged;
        MyimageT.trackedImagesChanged += MyimageT_trackedImagesChanged;
        pion.pointCloudsChanged += Pion_pointCloudsChanged;
   
    }
    void xuni()
    { 
    
    }

    private void Pion_pointCloudsChanged(ARPointCloudChangedEventArgs obj)
    {

    }

    private void MyimageT_trackedImagesChanged(ARTrackedImagesChangedEventArgs obj)
    {
        //函数 做一件具体的事情的最小单位!
        Debug.Log("图像进入或离开摄像头或在运动");

    }

    private void MYFaceDe_facesChanged(ARFacesChangedEventArgs obj)
    {
        //函数 做一件具体的事情的最小单位!
        Debug.Log("人脸进入或离开摄像头或在运动");
    }

    private void MyHumanBodyComp_humanBodiesChanged(ARHumanBodiesChangedEventArgs obj)
    {
        //函数 做一件具体的事情的最小单位!
        Debug.Log("人体进入或离开摄像头或在运动");
        foreach (var item in obj.added)
        {
          //当前遍历到的那个人体信息
            Debug.Log("人体进入" + item.pose);
            //===============
            HumanFound.Invoke();//激活事件!
        }
        foreach (var item in obj.removed)
        {
            //当前遍历到的那个人体信息
            Debug.Log("人体离开" + item.pose);
        }
        foreach (var item in obj.updated)
        {
            //当前遍历到的那个人体信息
            Debug.Log("人体运动" + item.pose);
        }




    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Unity耘上飞农

难题的解决使成本节约,求打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值