鉴于网上部分文章,缺少部分细节,本文旨在结合以往中英文博客,总结出在Hololens 中实现 Unity-UGUI, 尤其是ScrollView的方法,以及避开某些坑的注意事项。
前提:由于MRTK兵不成熟,因此本文依然采用 HoloToolkit-Unity-2017.4.3.0-Refresh.unitypackage 作为SDK(即MRTK 4.3.0)。
在纯净崭新工程中:
1.场景中创建UI==> ScrollView,此时应有Canvas及其子物体ScrollView,以及EventSystem。
2.删除场景原配Camera。从包中导入InputManager,HololensCamera,Cursor,并将Cursor绑定到InputManager的固定位置上。
3.在 BuildSettings 里选中 UWP平台,并且选中Virtual Reality Support设置,此时系统将会自动向工程导入一些脚本和组件。
关键的坑人步骤:
将Canvas组件下的Render Mode修改为World Space,此时系统弹出选择:是否采用UIRaycastCamera作为Canvas的对应相机——该相机是InputManager下EventSystem的子物体,对没错你的工程有两个EventSystem——你的选择会导致两个分支:
① 选择“否”——交互以手为主:
4 保留第一步创建的EventSystem,将HololensCamera作为Canvas在World