首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Arfoundation中如何在AR平面上进行碰撞?

ARFoundation 是 Unity 提供的一种用于增强现实应用开发的工具包,可以在移动设备上创建交互式的 AR 内容。在 ARFoundation 中,要在 AR 平面上进行碰撞,可以按照以下步骤进行操作:

  1. 首先,确保你已经将 ARFoundation 添加到 Unity 项目中,并配置好 AR Session 和 AR Session Origin。
  2. 创建一个需要进行碰撞的物体,可以使用 Unity 的基本几何体,如 Cube 或 Sphere,或者导入一个自定义的模型。
  3. 将物体添加到场景中,并将其子级绑定到 AR Session Origin。
  4. 在需要进行碰撞检测的物体上添加一个 Collider 组件,可以使用 Unity 提供的 Box Collider 或 Mesh Collider,根据需要进行选择。
  5. 在 AR Session Origin 上添加一个 AR Raycast Manager 组件。AR Raycast Manager 是用于进行射线碰撞检测的组件,它可以检测 AR 平面上的碰撞。
  6. 在脚本中,使用 AR Raycast Manager 的 Raycast 方法进行射线碰撞检测。该方法将返回一个包含所有碰撞结果的列表。

以下是一个示例脚本,展示了如何在 ARFoundation 中进行 AR 平面上的碰撞检测:

代码语言:txt
复制
using UnityEngine;
using UnityEngine.XR.ARFoundation;

public class ARPlaneCollision : MonoBehaviour
{
    private ARRaycastManager raycastManager;
    
    void Start()
    {
        raycastManager = GetComponent<ARRaycastManager>();
    }

    void Update()
    {
        if (Input.touchCount > 0)
        {
            Touch touch = Input.GetTouch(0);
            
            if (touch.phase == TouchPhase.Began)
            {
                List<ARRaycastHit> hits = new List<ARRaycastHit>();
                raycastManager.Raycast(touch.position, hits, TrackableType.Planes);
                
                if (hits.Count > 0)
                {
                    // 在 AR 平面上发生了碰撞,可以在这里执行相应的操作
                    Debug.Log("碰撞到了 AR 平面");
                }
            }
        }
    }
}

在以上示例中,我们使用 ARRaycastManager 的 Raycast 方法进行射线碰撞检测,并指定了 TrackableType.Planes 参数,以便只检测 AR 平面上的碰撞。如果射线与 AR 平面发生碰撞,我们可以在条件语句中执行相应的操作。

当然,ARFoundation 是一项功能强大的 AR 开发工具,除了 AR 平面碰撞检测外,还有许多其他功能和特性可以探索。如果需要深入了解 ARFoundation 的更多信息,可以访问腾讯云的 ARFoundation 产品介绍页面:ARFoundation产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

ARFoundation☀️ 五、放置AR物体

本章效果展示 ARFoundation丨放置与AR测量 AR放置的基础配置 根据这篇博客,完成项目的初始配置。...AR放置的实现方法 1️⃣ 实现思路 确定放置点 将预制体放到放置点 2️⃣ 实现步骤 将下方代码放在任意场景物体,赋值要展现的预制体即可。...该脚本: 先通过 ARFoundation 自带的 ARRaycastManager 组件发射射线,检测碰撞到的第一个平面。与该平面接触到的点,就是碰撞点。 再实例化预制体,将该预制体放置到碰撞。...Parameters [Tooltip("要放置的预制体")] public GameObject objPrefab; /// /// 已经实例化、摆放在场景的预制体...} } } #endregion #region Private Methods /// /// 判断该平面是水平面还是竖直面

9010
  • ARFoundation☀️ 二、工程的基础配置

    2️⃣ 对场景进行配置 添加生命周期预制体 层级面板删掉原始摄像机,右键 XR,添加AR Session Origin、AR Session。...这两个组件包含了摄像机、ARFoundation的生命周期等等功能。我们之后会经常调用这两个物体组件的功能。...就需要b步骤进行配置。 b、层级面板右键XR-AR Default Plane,将该物体制成平面预制体,删掉层级面板的该物体。...脚本功能如下: 提供:启用与禁用平面检测 提供:显示与隐藏检测到的平面 得到:当前AR会话是否正在运行,并被跟踪(即该设备当前能否确定其在世界的位置和方向) 自动运行:检查设备运行环境,能否支持ARFoundation....x独特配置 随着ARFoundation的迭代,4.x版本后,ARFoundation就成为了UnityXR的子功能。

    9010

    ARFoundation☀️ 一、本专栏概述及开发环境配置

    本专栏概述 1️⃣ 为什么要用ARFoundationARFoundation 对 ARCore、ARKit 等进行了封装。原先我们开发安卓应用,要用 ARCore 开发。...我们只需要对 ARFoundation 进行一次开发,切换平台,便可导出安卓、或苹果等的应用了。我们可以看看2020021官方出示的集成资源包图片: 2️⃣ 本专栏能学到什么?...、 也包括拓展的功能点: 光照估计 AR测量、 人体动作捕捉、 人物遮挡(People occlusion)、 环境遮挡、 多人协作、 ......接下来的日子里,希望我们学习愉快~ ARFoundation开发环境配置 1️⃣ Unity2019.3.3f1、VS2019 笔者各个版本做了测试,Unity2019及以上支持ARFoundation3.0...b、安卓机型受支持的机型 笔者用的华为P20,这款及以上支持平面检测、人脸识别等,以下不支持。 你也可以在这看看支持的机型。(传送门) 大家还有什么问题,欢迎在下方留言!

    13010

    手机秒变投篮机,还能模拟投篮真实手感,腾讯微视技术「家底」到底有多厚?

    平面 AR 算法:覆盖 90% 的安卓机,爆款「AR 投篮机」炼成背后 AR 投篮游戏中,虚拟的 3D 篮板看起来就像依附在现实的地板一样。 如何做到这一点?...确定依附平面方面腾讯微视采用的是「水平面 AR 算法」,通常的做法是使用 SLAM 算法一边对三维场景进行扫描建图,一边定位水平面位置。 定位完成后平面上放上 AR 模型。...PBR 渲染:基于物理规律,游戏级别渲染效果 水平面 AR 算法可以让篮板依附在现实的地板,但做出栩栩生的篮球、篮板的 3D 模型还要靠渲染技术。...进行碰撞体生成的时候,腾讯微视一开始使用简单碰撞体来代表整个篮架,导致篮球与篮架的碰撞不精确,球体的碰撞反馈效果违和。后来改用精度超高的模型来进行碰撞体的创建,但又会出现卡顿的问题。...之后识别的 Maker 图案摆放预先设置的 3D 模型,当用户移动人民币时,摆放的 3D 模型也会跟着人民币进行相应的移动。 实际操作,用户可能会摆放多个人民币。

    1K10

    短视频特效“耍花招”:线上投篮、摆摊,让画中人摇摆,浅谈腾讯微视的AR基建

    更重要的是,从微视引入的AR特效功能出发,也可以一窥腾讯AR前沿技术的布局。...当然,开发具体AR特效时,以上相关AR算法都被集成到一个SDK,每个具体技术的都可以进行类似模块化组合,有效加速新能力的接入速度。...相比ARkit或ARcore,虽然它们高精度定位更好,但微视的水平面AR算法更简洁,能涵盖绝大多数的模型,此外,单目相机的手机上,水平面AR算法能在第一帧就初始化放置AR模型,不需要视差。...同时,鲁棒性、计算量、交互和扩展性等方面,水平面AR算法也优于其它技术。 当然,AR投篮机还用到了AR物理引擎、以及PAG技术。...使用AR投篮机投篮时,为了模拟真实世界投篮的角度和打板距离等因素,这时物理引擎技术就不可缺少,它能实时模拟真实世界物体运动与碰撞反馈。

    1.1K10

    ManoMotion⭐二、Unity手势识别插件简介,及效果录屏

    ManoMotion,一个手部识别的插件 manmotion支持实时2D/3D手部跟踪和手势控制 最少的计算和功率需求 标准传感器 没有专用硬件 manmotion可用来开发VR和AR应用,进行AR手势的识别及跟踪...ManoMotion,是 Unity 手势识别最佳选择之一 相对于其他的AR平台: 商汤SeneseAR可以手部识别,但只支持安卓平台,且对硬件有要求 ARFoundation...这些信息可以分为三类,帮助开发者设计体验,定制不同的行为,并映射到Unity世界。 当前帧手势识别 ManoClass是每一帧的手的原始检测。...这意味着只有当用户一定的帧数(时间)内保持相同的手部姿势时,才会触发连续手势。 手势回调 手势回调是一次性手势。...ManoMotion 可进行拓展 ManoMotion可与ARFoundation进行拓展,实现SLAM空间定位功能。 ManoMotion也可与Vuforia进行拓展,实现更多AR功能。

    19110

    AR图书,看着很美其实有点坑

    我们昨天报道了一篇AR涂色书Kickstarter众筹的消息,在这本涂色书中,创作者描绘的AR体验非常令人向往。而碰巧的的是,刚刚落幕的上海书展,山东教育出版社也推出了AR图书《恐龙世界》。...当AR技术和文化碰撞,擦出的火花是什么样的呢? 什么是AR图书? AR图书,顾名思义,就是将AR技术应用在书籍,它最大的特点就是让静态的图文“活”起来。...通常情况下,通过手机、平板的摄像头去扫描AT图书指定页码的图片,透过手机屏幕可以看到书中平面的人物形象变身为3D立体模型,点击屏幕还可以进行互动,将视觉的画面扩展到视听多方位的体验。...创作的过程,首先需要对书籍的内容进行自然标记点的绘制,然后将书中的平面人物进行3D建模,再将建模后的数字信息加载到程序,而这些这只是前期的一部分内容。...比如说,出版商想要发行一本和工业机械设计相关的AR书籍,他们首先需要对书籍的专业知识进行分析解构和整体策划,根据这些专业知识去做技术还原,这样就对技术人员的能力素质要求很高。

    75430

    ARKit 进阶:物理世界

    Demo 视频内容 视频内容 关于物理模拟 虽然物理引擎都具有真实的物理变量,质量、重力、摩擦力等,但当我们说道物理模拟,不是要真的去用真实世界的数值去模拟物理行为,事实那样反而会失真。...type: dynamic: 可以被碰撞、力影响。适合场景物理引擎可以完全接管的类型,掉落的石块。 static: 不受碰撞、力影响,且不能移动。适合场景地面、墙体等。...collision respond 物理引擎会在渲染之前,计算物理碰撞的结果并应用到物体。...因为render loop的渲染时,两者相接触的那一帧物理模拟时,石块已经大部分穿过了平面,这样在下一帧石块会直接穿过去,而不是回弹。可以看我的回答。...types:(ARHitTestResultType)types; 根据ARSCNView的点,构造一条3D世界的射线,搜索ARAnchor或真实物体(特征点或已检测出的平面)。

    2.8K70

    2020-2021 设计趋势ISUX报告 · 运营篇

    孟菲斯风格图形大量使用点线面等几何元素,排版无规律可循,色彩多用明快、对比强烈的配色机制,元素随机排列搭配大胆跳跃的色彩使得作品妙趣横生。...相对于前两年的视觉冲击力较强的赛博朋克以及镭射渐变有着明显风格的场景,渐变色的基础加入了更多相关内容的标签场景,不局限一种配色方案将各种明亮色彩与不同的媒介的场景结合起来,碰撞出有趣的设计。...当3D与平面设计碰撞时,则会迸发更多创意的火花。多维度融合是现在3D设计的流行趋势之一。它包括传统平面与3D结合、3D图形二维渲染、3D与涂鸦结合等多种表现形式。...另一方面,短视频业务的热度也加速拓展了更多AR玩法。AR技术移动端设备的使用玩法也越来越丰富。...增强现实的升级应用一个典型运用就是把AR UI与周围环境相互关联,将界面的某个元素或内容与现实世界的元素或内容进行链接,通过将UI与对象关联,将虚拟物体和真实世界融合,当扫描特定内容来触发某种运营玩法

    88821

    ABB 3BSE011180R1 专业工业元宇宙应用程序

    ABB 3BSE011180R1 专业工业元宇宙应用程序图片XR专家Holo-Light将于4月17日至21日2023年汉诺威工业博览会15号馆F71展位展示其增强现实工程空间AR3S的新版本。...独家演示,参观者将体验沉浸式技术如何简化和加速产品开发,以及如何跨增强现实(AR)和虚拟现实(VR)进行协作。...工程师和工业设计师使用AR3S来可视化复杂的全尺寸3D CAD模型,将它们与物理组件合并,并在物理环境中进行评估和交互。...有了AR3S,参与产品开发过程的每个人都可以参与到协作过程,并在同一个数字双胞胎实时工作,而不用考虑位置。AR3S的最新版本提供了更大的灵活性和可伸缩性。...通过从切割平面和X射线模式到碰撞检测和直接在物体上标记的功能,AR3S彻底改变了数字空间中的协作和集体决策,无论是AR和VR组合还是AR单独

    14420

    商汤提出手机端实时单目三维重建系统,实现逼真AR效果和交互

    通过定性和定量的实验验证,所研制的单目三维重建系统能够正确处理虚拟物体与真实场景之间的遮挡和碰撞,在手机端实现逼真的 AR 效果和交互。...搭建了一套完整的基于单目 RGB 的实时三维重建系统,该系统端手机平台上可以达到 125ms 每关键帧,获取的表面网格精度可以达到厘米级,基于该系统可以在手机端实现逼真的 AR 效果和交互,如图 1...为了对匹配代价进行约束,本文进一步使用文献[1]的半全局优化策略对代价体进行多路径积聚后得到积聚代价体 ? 。 ? 最后,积聚代价体 ?...图12 Mobile3DRecon 在手机平台上的 AR 应用 Part 4 结语 本文提出了一个实时的单目三维重建系统,该系统允许用户一些端的手机平台上使用单目摄像头提供在线网格生成功能。...Mobile3DRecon 系统能够正确处理虚拟物体与真实场景之间的遮挡和碰撞,从而达到逼真的AR效果。

    2.3K30

    顾客新宠柜姐福音,AR试妆引领购物新体验

    该应用,内置的AR魔镜可捕捉顾客的面部特征,顾客屏幕上选好化妆品,眼影口红后,摄像头就能通过“视频流”将这些化妆品“涂抹”脸部的准确位置,顾客转动头部就能从不同角度观察妆效果。...“玩美彩妆”开发商“玩美移动”的总经理张华祯曾表示:“当消费者购买一支口红之前,平均要试五种颜色才能做购买决定,专柜虚拟试妆的AR技术可以满足顾客想在短时间内体验多项彩妆品的需求”。...2016年7月,欧莱雅还举办了一场AR派对,在这场音乐派对上,AR与彩妆碰撞在了一起。...TeleBeauty日本微软的女性员工找了100个人进行测试,目前可以做到视频的面部实现自然、时尚、酷、女人味4种不同风格的妆容。...以前美妆品牌往往是通过平面、场景化的文案,或者H5的形式来展示产品的功能。但这种传统的营销理念,难以真正意义给用户带来直观的体验。

    1.5K60

    ARKit 简介

    增强现实(AugmentedReality,简称 AR),是一种实时地计算摄影机影像的位置及角度并加上相应图像的技术,这种技术的目标是屏幕把虚拟世界套在现实世界并进行互动。...说起AR,其实它并不是第一次出现,不管国内还是国外,好多大小公司都对AR有所涉猎,去年流行的Pokémon Go,阿里的AR红包,百度的AR地图…都是AR领域的重要应用。...第二层:平面和边界感知 碰撞测试和光线估算,让虚拟内容和现实环境无缝衔接。 ? 第三层,渲染,支持各种渲染制作工具,目标就是简单易用,和其它插件融合度好。 ?...4.坐标识别及转换:3D模型显示现实图像不是单纯的frame坐标点,而是一个三维的矩阵坐标。这基本也是学习AR最难的部分,好在ARKit帮助我们大大简化了这一过程。...//创建节点(节点可以理解为AR将要展示的2D图像) SKLabelNode *labelNode = [SKLabelNode labelNodeWithText:@" 修改模型 苹果的例子

    2.5K60

    元宇宙里也有魔法师:Unity模块加苹果LIDAR,你也能手搓魔法光球!

    Reddit,在他分享的不到一分钟的视频,Goguel的指尖充斥着粉色能量。能量条游走在指尖,好像就附着在上面一样。随着他的操控,他的掌心中间慢慢出现了一个精细的能量球。...该视频下面的评论都十分激动,对此感兴趣的人可以 Github 找到并下载相关内容。 领英页面的评论写道,「太不可思议了!3D 手部追踪技术、空间理解技术都让这种体验感做到了无可复加的逼真。...GitHub,向高手学如何徒手搓光球 Olivier Goguel是怎么做到的呢?他GitHub公布自己制作AR视像的软件包组件、和软硬件基础要求。...基础要求,硬件要有支持激光雷达(Lidar)的Iphone 12或Pro。这些带足够新ARKit的型号,AR功能上有深度API、位置锚定等特色。...然后将GoguelGitHub的自制软件包安装在搭载如上软件的Iphone 12: 先在菜单添上RealtimeHand安装包;然后搭载SwiftSupport支持包;都安装好后,点击RealtimeHandSample

    90710

    50. 精读《快速上手构建ARKit应用》

    这个库不 3 精读 开始精读前,我先抛出我的问题三连:Why AR? Why ARKit? Why React Native ARKit? 3.1 Why AR?...之前的第43期精读评论,我们探讨了AR对于和前端结合的可能性。总的来说,AR把前端开发不再局限在有限的屏幕空间,对于可视化等对前端展示空间有强烈需求的细分领域,AR是一个很值得研究的内容。...但是ARKit更进一步,他利用高频调用摄像头,通过对图像进行识别分析,可以进行空间感知,例如可以识别出一个平面。而这些都是ARKit所提供的,我们只需要调用它的能力就好了。...可以很清楚地看到,ARKit感知到了房间这个立方体空间后所构建出来的AR的效果。 平面识别 而最后的这段视频会更加有趣一些,中央的红圈的出现逻辑是停留在最近识别出的一个平面上。...总结 苹果的ARKit对空间平面的感知能力胜过了一般的AR渲染库。而iPhone 6S就能跑的特性又让我们觉得AR其实并没有那么遥远。

    1K10

    Unity的物理系统

    Unity的物理系统是游戏开发不可或缺的一部分,它通过模拟现实世界的物理规则(重力、碰撞、摩擦等)来增强游戏的真实感和互动性。...Box2D同样支持刚体、碰撞器和关节等功能,但其设计更适合平面二维空间的物理模拟。 主要组件 Rigidbody 2D:类似于3D的Rigidbody,但专为2D场景设计。...Collider 2D:定义了物体2D平面上的形状和大小。 Joints 2D:允许两个或多个刚体2D平面进行连接和约束。...关节参数设置 关节组件提供了多种参数设置,以控制对象各轴的移动和旋转。例如: XMotion、YMotion、ZMotion:控制对象各轴的线性运动。...使用简单的碰撞器:尽量使用简单的碰撞进行碰撞检测,减少复杂性,同时避免不必要的刚体组件和复杂的碰撞设置。

    7210

    图像检测-如何通过扫描图像来制造幻觉

    本课程,您将学习如何通过检测您喜欢的任何图像以及如何在呈现模型时更改模型的材质,将您自己的3D模型放置在任何对象之上。...您可以下载Final Xcode项目,以帮助您与自己的进度进行比较。 设置 如果您运行该应用程序,Apple的太空飞船将出现在您的环境。这是AR模板。...if anchor is ARImageAnchor { } 平面 锚声明,声明一个具有此大小的平面。我们之所以希望平面的尺寸大于盒子的大小,是因为我们希望标签的错觉漂浮在空中。...SKS 平面场景 让我们平面下面声明我们新的SpriteKit场景并给它起名称:deviceScene。...您刚学会了如何通过检测图像将3D模型放置您的环境本课程的其余部分,我将教你如何制作动画,以及与按钮的互动。最重要的是,您将玩光照和阴影。

    2.4K20

    深入浅出 ARCore

    ARCore会查找常见水平表面(桌面)的特征点集群,除此之外,ARCore还可以确定每个平面的边界,并将以上信息提供给您的应用程序。...当然是从手机的 Camera获取。 我们把从 Camera获取的视频当作 AR的背景。...其实,AR 就是将虚拟物品放到视频,只不过不是简单的放置,而是需要经过大量的计算,找到视频平面位置再放置。 而Android中视频的采集相对比较简单,像直播系统,照像机都要使用该技术。...平台检测 上面我们已经说了,AR就是实时视频+虚拟物品。但虚拟物不能简单的放到视频,而是先对视频的每一帧进行检测,找到视频平面,确定好位置后,再将虚拟物品放置上去。...这样才算是AR呀:) 点云 上面我们知道了,AR=实时视频+平面+虚拟物品。除此之外,它还应该能对虚拟物品进行跟踪,也就是可以不同的角度观察同一个物品,并得出不同的姿态,所以就有了“点云” 技术。

    3.8K10
    领券