You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity AR Foundation人体追踪是否支持多人体追踪?

Unity AR Foundation 多人体追踪支持说明

核心结论

Unity AR Foundation支持多人体追踪,但需满足平台、版本及配置要求,且需使用正确的API获取多人体数据。

关键细节说明

  1. 支持前提

    • 硬件:搭载A12及以上处理器的iOS设备(依赖ARKit 3.0+的多人体追踪能力,AR Foundation封装了ARKit的底层功能)
    • AR Foundation版本:需使用5.0及以上版本(需手动编辑Packages/manifest.json指定版本)
    • 配置:AR Session配置中需开启人体追踪,并在ARHumanBodyManager组件上勾选对应追踪模式(2D/3D)
  2. 获取多人体2D关节数据的正确方式
    你使用的无参方法var joints = m_HumanBodyManager.GetHumanBodyPose2DJoints(Allocator.Temp);仅返回第一个检测到的人体的2D关节数据。要获取多人体数据,需遍历ARHumanBodyManager.trackables集合,对每个ARHumanBody实例调用带参数的重载方法:

    foreach (var humanBody in m_HumanBodyManager.trackables)
    {
        var joints = m_HumanBodyManager.GetHumanBodyPose2DJoints(humanBody, Allocator.Temp);
        // 处理当前人体的2D关节数据
    }
    
  3. humanBodiesChanged事件未触发的可能原因

    • 未开启正确的追踪配置:检查AR Session配置和ARHumanBodyManager的追踪模式是否勾选
    • 场景中未检测到多人体:确保测试时有多个人体出现在相机视野内
    • 事件订阅时机错误:需在组件初始化阶段(如Awake或Start方法)订阅事件,确保ARHumanBodyManager已完成初始化
    • 权限问题:iOS设备需授予相机权限,否则无法进行人体检测
  4. 简化调试的方法
    使用ARKit Remote工具,通过电脑连接iOS设备在Unity编辑器中模拟测试,无需频繁打包即可验证多人体追踪逻辑;也可在代码中添加日志输出m_HumanBodyManager.trackables.count,确认是否检测到多人体。

内容的提问来源于stack exchange,提问作者Guye Incognito

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 06:55:14