如何在ARCore的统一场景中的3Dobject处添加UI按钮和功能

时间:2019-04-25 08:41:39

标签: unity3d uibutton augmented-reality arcore

我想在场景中的3D对象上添加UI按钮。我正在使用Hello AR场景。根据我的理解,将3D对象拖入Hello AR Controller脚本(检查器)中。我像往常一样添加画布和按钮。但在我构建和运行时不起作用。目前,我正在开发ARCore增强现实应用程序。谁能帮我?非常感谢!

2 个答案:

答案 0 :(得分:1)

这可能是您的画布渲染模式,我建议您将其放置在世界空间中:

Setting to change

可能是问题所在。

答案 1 :(得分:1)

UI按钮和APP示例都必须响应触摸输入:

if (!EventSystem.current.IsPointerOverGameObject(touch.fingerId)) {

    // .....
}

和:

if (Session.Raycast(touch.position.x, touch.position.y, 
                    raycastFilter, out hit) && doPlace &&
                    !EventSystem.current.IsPointerOverGameObject(touch.fingerId)) {

    var modelObject = Instantiate(ModelAndroidPrefab, 
                                  hit.Pose.position, 
                                  hit.Pose.rotation);
    var anchor = hit.Trackable.CreateAnchor(hit.Pose);
    modelObject.transform.LookAt(FirstPersonCamera.transform);
    modelObject.transform.rotation = Quaternion.Euler(0.0f, 
                                                      modelObject.transform.rotation.eulerAngles.y,
                                                      modelObject.transform.rotation.z);
    modelObject.transform.parent = anchor.transform;
    doPlace = false;
}

此外,我建议您观看Create ARFoundation application Udemy课程。