无法使用Unity VR在我的混合Daydream + Cardboard应用程序中通过Google Daydream Appstore的资格

时间:2017-10-11 00:59:50

标签: unity3d virtual-reality google-cardboard daydream

我遇到了问题:该应用程序未正确使用Daydream控制器 该应用程序允许用户使用头部注视定位光标并与菜单UI" Play"按钮。

这是我的类,它将GvrPointerInputModule.Pointer设置为使用GVRLaserPointer(用于白日梦)或GvrReticlePointer(用于纸板):

public class InputModuleSelector : MonoBehaviour {
    bool DaydreamControllerConntected = false;
    public GvrBasePointer DayDreamController;
    public GvrBasePointer CardboardController;

    private void Start() {
        refreshControllers();
    }

    public static bool IsDayDreamMode() {
        return VRSettings.loadedDeviceName != "cardboard";
    }

    private void refreshControllers() {
        DaydreamControllerConntected = IsDayDreamMode();
        DayDreamController.gameObject.SetActive(DaydreamControllerConntected);
        CardboardController.gameObject.SetActive(!DaydreamControllerConntected);

        GvrPointerInputModule.Pointer = DaydreamControllerConntected ? DayDreamController : CardboardController;
    }
}

如果我们使用白日梦,我们将使用激光,否则我们将使用光罩。

如何让我的应用程序通过?我们是否可以提交可用于白日梦和纸板的应用程序?如果您需要更多信息,请与我们联系。

我不确定是否应该添加链接...但我的应用在Play商店中有效:https://play.google.com/store/apps/details?id=com.fungamefuntime.warehouse

2 个答案:

答案 0 :(得分:0)

看起来好像是用头部凝视控制光标。除了菜单出现之外,头部凝视可以作为游戏玩法的所有元素中的控制器替代。

答案 1 :(得分:0)

我能够在Google支持的帮助下找出并纠正问题。主摄像机随着玩家的注视方向旋转。这意味着GvrControllerPointer依赖于主摄像头。这违反了要求,因为当你移动头部时你移动了激光。层次结构视图:

     Player
         Main Camera
             GvrReticlePointer
             GvrControllerPointer

当我切换到这个结构时,问题就解决了。 GvrControllerPointer现在独立于主摄像头和玩家的视线。

     Player
         GvrControllerPointer
         Main Camera
         GvrReticlePointer