unity开发Hololens 制作滑动框

一定要做到最后一步,才会有效果

1、创建空物体 ,并添加组件

创建空物体 命名ScrollingObjectCollection,
添加组件如下图
在这里插入图片描述
下面是各个组件展开的内容
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、在ScrollingObjectCollection 下面创建两个空物体,分别命名Container、Clipping Bounds

Clipping Bounds添加组件在这里插入图片描述

3、在Container空物体下面创建空物体,命名GridObjectCollection,然后在下面创建滑动框内要显示的内容,以我的为例,显示文字 以及按钮

GridObjectCollection需要挂载脚本
在这里插入图片描述
显示内容的结构,按钮是hololens自带的按钮,,然后多复制几个Prerfab
在这里插入图片描述

4、布局滑动框里的内容

找到GridObjectCollection物体,点击CridObjectCollection脚本中的UpdateCollection
CellWidth和CellHeight 单元格的宽高,可以使用默认的就行
在这里插入图片描述

5、设置滑动框的大小,以及每页显示的内容数量

先把元素摆放到合适的位置,以及调整合适的大小
在这里插入图片描述
然后调整Collider
在这里插入图片描述
在这里插入图片描述

6、设置遮罩效果

找到Clipping Bounds物体,把所有元素里包含MeshRenderer的物体都拖入到这里
在这里插入图片描述
由于太多,我使用了代码自动添加,在ClippingBox脚本的最后添加上这些代码,就可以了

   void OnValidate()
   {
       ConfigureRenderers();
   }
   void ConfigureRenderers()
   {
       List<Renderer> renderer = new List<Renderer>();
       GetRenderers(transform.parent, renderer);
       renderers = renderer;
   }

   void GetRenderers(Transform parent, List<Renderer> renderers)
   {
       foreach (Transform child in parent)
       {
           Renderer renderer = child.GetComponent<Renderer>();
           if (renderer != null)
           {
               renderers.Add(renderer);
           }
           GetRenderers(child, renderers);
       }
   }

在这里插入图片描述
这个时候才算是真正的做完,

创建蓝色背景板

创建空物体Backplate,下面再创建一个空物体Quad,并添加组件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7、ClippingBox脚本的Renderers一定要把所有MeshRenderer元素添加到列表中,否则没有遮罩效果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值