有没有办法让HoloLens 2进行滚动交互?

问题描述 投票:1回答:1

我正在尝试使用Unity制作HoloLens 2应用程序。我要实现的下一件事是可滚动列表。我想像大家都知道的那样滚动文本太大,无法容纳html之类的框。

我知道如何移动对象,但是如果它们太不适当,我希望它们隐藏起来,因此我可以获得一个可滚动的列表。

有什么办法吗?我没有任何教程可以做到这一点。

unity3d scroll hololens
1个回答
0
投票

我曾经实现了一个虚拟现实的“虚拟OS”,其中包括带有3D对象的可滚动列表as you can see here。如果这是显示的目标,那么要达到此目的,请在游戏对象非常不在滚动视图中时在游戏对象上使用SetActive(false),并在确切的时刻离开滚动区域-需要将它们放在只是部分被剪切了-您可以通过一个不可见的遮罩立方体剪切它们。

这是该剪切对象(不是我的)的着色器:

Shader "Masked/Mask" {
     SubShader {
        // Render the mask after regular geometry, but before masked geometry and
        // transparent things.

        Tags {"Queue" = "Geometry+10" }

        // Don't draw in the RGBA channels; just the depth buffer

        ColorMask 0
        ZWrite On

        // Do nothing specific in the pass:

        Pass {}
    }
}

滚动事件本身是通过指尖中的碰撞器对屏幕中的碰撞器作出反应而触发的。 OnTrigger,您需要测量速度并将其转换为滚动功能。就我而言,我使用的是OS-> App->页面(包括标签)->小部件的类结构。这使您可以继承SomeSpecificWidget(例如ImageButton或TextArea)并自动使它正确滚动,而无需担心滚动条的细节。

© www.soinside.com 2019 - 2024. All rights reserved.