在运行时设置 OnAutomaticHitTest 和 OnInteractiveHitTest

Set OnAutomaticHitTest and OnInteractiveHitTest during runtime

我正在放置我的 Plane Stage 和 Plane Finder 并在运行时设置属性,但有两个属性我不知道如何设置:OnAutomaticHitTestOnInteractiveHitTest

我看到它需要 HitTestEvent 类型的东西,但我不知道如何在这里设置我的自定义函数。

有人可以帮助我吗?

您可以找到 PlaneFinderBehaviour here

的文档

实际上,您实际上并没有定义这些属性,而是使用它们来触发事件。

例如:

public class CustomPlaneFinderBehaviour : PlaneFinderBehaviour
{
    public void CustomIntPerformHitTest(Vector2 screenPosition)
    {
        //Triggered on interactive hit test
    }
    public void CustomAutoPerformHitTest(Vector2 screenPosition)
    {
        //Triggered on automatic hit test
    }
}

然后在检查器中,您可以通过按加号按钮并在框中选择当前脚本来定义事件。然后,您可以选择更改调用的函数。

此处定义了交互式命中测试,未定义自动命中测试:

您需要使用Unity的AddListener调用

void HandleHitTest(HitTestResult htr)
{
    //Handle Test Here
}

planeFinderBehavior.OnAutomaticHitTest.AddListener(HandleHitTest);