C# Vuforia+;Unity:按下UI按钮时在AR中实例化模型

C# Vuforia+;Unity:按下UI按钮时在AR中实例化模型,c#,user-interface,unity3d,augmented-reality,vuforia,C#,User Interface,Unity3d,Augmented Reality,Vuforia,我知道这是一个非常简单的问题,但我不知道如何存档: 我的场景中有一个UI按钮,我希望Vuforia仅在按下按钮时实例化一个AR模型 根据网上教程,我可以在触摸屏幕时在屏幕上实例化一个模型,但我需要知道如何设置Vuforia,以便只在按下按钮时归档相同的结果 我必须禁用“锚输入侦听器行为”? 然后呢 我想调用PlaneAnchor中的PositionContentAtAnchor,但我不知道如何在按钮的OnClick字段中以正确的方式调用它。我需要为此制作一个自定义脚本 谢谢你的回答。好的,很抱歉

我知道这是一个非常简单的问题,但我不知道如何存档:

我的场景中有一个UI按钮,我希望Vuforia仅在按下按钮时实例化一个AR模型

根据网上教程,我可以在触摸屏幕时在屏幕上实例化一个模型,但我需要知道如何设置Vuforia,以便只在按下按钮时归档相同的结果

我必须禁用“锚输入侦听器行为”? 然后呢

我想调用PlaneAnchor中的PositionContentAtAnchor,但我不知道如何在按钮的
OnClick
字段中以正确的方式调用它。我需要为此制作一个自定义脚本


谢谢你的回答。

好的,很抱歉耽搁了

我推断您正在使用地平面,如果您在场景中有
地平面舞台
平面查找器
,并且工作正常,那么我们就处于一个好的位置

现在,您只需在场景中添加一个按钮,然后在脚本中添加如下内容:

public PlaneFinderBehaviour plane;

void Start()
{
    ...
    buttonOnTheScene.onClick.AddListener(TaskOnClick);
    ...
}

void TaskOnClick()
{
    Vector2 aPosition = new Vector2(0,0);
    ...
    plane.PerformHitTest(aPosition);
}
这是什么意思

首先,您必须将
平面查找器
从层次结构移动到脚本变量,以便在脚本中有一个对平面的引用

然后,当您单击(或轻触)按钮时,您可以使用
PerformHitTest
模拟显示屏上的单击(或轻触)

如果你想知道为什么我在评论中提出这个问题,那是因为
平面查找器行为脚本有两种模式类型:交互模式和自动模式。交互式截取在显示器上点击,并在点击的确切位置显示对象(在地平面上),自动截取在平面中心显示对象

因此,如果希望对象处于精确位置,可以在PerformHitTest中传递
矢量2
位置,如果希望以编程方式显示对象或在对象显示时执行某些操作,则可以调用自定义方法
OnInteractiveHitTest


就这些。

只有一个问题:你想把物体放在哪里?当你点击按钮或在一个前缀位置时,在平面的中心?我希望它出现在屏幕的中心。飞机指示器在哪里?谢谢!那很有用!如果我想动态放置游戏对象并使其稳定并与锚链接,该怎么办?