三维对象在ARCore中单击事件

时间:2018-04-16 11:09:52

标签: arcore

如何在android studio中使用arcore SDK获取3D对象的点击事件? 我的要求是单击该3D对象并显示弹出对话框。

3 个答案:

答案 0 :(得分:0)

ARCore不支持此功能。你需要自己做。最流行的方式是光线拾取方法。有很多例子如何使用它

答案 1 :(得分:0)

这与ARCore无关。您正在使用的游戏引擎/框架实际上对此负责。

例如,如果您使用的是Unity,则可以使用Raycasting。

RaycastHit hit;
Ray ray = yourARCamera.ScreenPointToRay(Input.GetTouch(0).position);
if (Physics.Raycast(ray, out hit))
{
     // Check if what is hit is the desired object
     if(hit.tag == "The_Tag_Of_The_Object_You_Are_Looking_For")
     {
           // User clicked the object.. Do something here..
     }
}

在这里阅读更多内容:

https://unity3d.com/learn/tutorials/topics/physics/raycasting https://docs.unity3d.com/ScriptReference/Physics.Raycast.html

答案 2 :(得分:0)

对于Arcore-Sceneform SDK,创建锚点后,您只需像这样简单地在AnchorNode上设置侦听器

anchorNode.setOnTapListener((hitResult,motionEvent)->{
   //Your pop up
});