显示与真实对象相关的ARKit节点

时间:2017-08-01 19:13:40

标签: arkit

我正在尝试绘制一个可以帮助某人了解物品尺寸的盒子,但我一直有这个问题,因为当我将物理物品放在飞机顶部时,我首先需要识别飞机,我的盒子被吸引到物品前面。

有可能以某种方式克服这个问题吗?

Screenshot

2 个答案:

答案 0 :(得分:3)

@John Scalo是对的,你的问题不是首先检测一个平面,而是你的渲染引擎不知道绿框框的那部分是遮挡(隐藏)通过现实世界的对象。

  

“......以某种方式克服了这个

是的,通过这样做,您可能会“解决”原始问题 - 帮助某人了解项目的维度。

(取决于您选择的渲染引擎,例如SceneKit)您可以添加一个与真实世界对象具有相同尺寸的不可见3D对象;因此渲染引擎将“知道”框架的某些部分位于此(对于用户不可见)3D对象的后面。因此,你可以告诉它不要绘制你的框架的那些部分,这将给出幻觉(从这里借用苹果),你的汽水可以有它周围的盒子。

这些变通办法是不准确的,但也许它们的准确性足以达到你想要达到的现实水平:

  • 选项1:1。检测到桌面后,在汽水罐上放置一个半透明的3D物体,然后调整尺寸(您选择的手势/按钮),直到它与汽水罐的尺寸有关。 2.确认你已经完成了,只是不要在它上面画一个纹理,只是让它遮挡绿框框。

  • 选项2:将您的设备靠近汽水罐的边缘并添加“足够的”ARAnchor以便能够创建“再次”可以用于捕获真实的单词对象并遮挡它。

  • 选项3 :(激烈,也许最不准确)用手指从各个角度“刷”对象,并在每次触摸时执行命中测试(希望顶部/最近的命中是一部分)你的汽水罐)并以这种方式建立一个“边界形状”。

  • 选项X:1 - 2 - 3的任意组合。

祝你好运,有很多人试图在这个时候解决这个设备/ ARKit限制,所以请留意你的好主意。

答案 1 :(得分:0)

您正在处理的问题称为遮挡,而ARKit(当前?)包括遮挡支持。也许有一天iPhone和iPad将开始随LIDAR(或类似)一起发售,在这种情况下,ARKit将能够检测场景中的物体,使遮挡更加容易。