Hololens开发学习笔记-4

25 篇文章 4 订阅
16 篇文章 1 订阅

3D对象交互

下载资源包:MRTK.HoloLens2.Unity.Tutorials.Assets.GettingStarted.2.3.0.3.unitypackage

按照之前教程中的方法把资源包导入项目;

项目中对象可以在Hierarchy面板中,对象的前面有个小眼睛,点击一下会隐藏

创建对象集合

1、在Hierarchy中创建一个空对象,命名为3DObjectCollection,坐标设置为x=0,y=-0.2,z=2;

2、在Assets中,Assets>MRTK.Tutorials.GettingStarted>Prefabs;

3、会看到有Cheese、CoffeeCup、EarthCore、Octa、Platonic、TheModule六个预制体,全选,然后拖到3DObjectCollection中,设置为3DObjectCollection的子集;

4、在Hierarchy中创建三个Cube,尺寸全部修改为0.15;

5、为3DObjectCollection添加GridObjectCollection脚本,并将SortType修改为ChildOrder,然后点击UpdateCollection更新集合;

6、为上面创建的三个Cube添加不同颜色的材质球,资源包中的材质球位置为:Assets>MixedRealityToolkit.SDK>StandardAssets>Materials,选中材质球拖到Cube上即可;

7、官方文档中给出的的材质球为:MRTK_Standard_GlowingCyan,MRTK_Standard_GlowingOrange,MRTK_Standard_Green。材质球可自行选择。

添加操作脚本

1、全选3DObjectCollection下的子对象,在Inspector中点击AddComponent,搜索ManipulationHandler,添加此脚本;

2、Cube对象不做处理;

3、选中Cube1对象,将TwoHandedManipulation改为Scale,此操作为更改用对象大小;

4、选中Cube2对象,将Constrains下的ConstraintOnMovement修改为FixDistanceFromHead,此操作为移动对象时与用户保持相同距离;

5、Cheese、CoffeCup、EarthCore对象不做处理;

6、选中Octa对象,取消勾选AllowFarManipulation,此操作为取消远程操作,用户不可以通过辅助线来操作该对象;

7、选中Platonic对象,把OneHandRotationModeNear和OneHandRotationModeFar都修改为RotateAboutObjectCenter,此操作为旋转对象时,对象围绕自身中心旋转;

8、选中TheModule对象,在Inspector中添加RegidBody脚本,然后取消勾选重力引擎UseGravity;此操作为为对象添加物理引擎(刚体),但是取消掉重力引擎;

9、选中EarthCore对象,在Inspector中添加BoundingBox脚本,此操作为为对象添加一个边界框,用来操作该对象;

10、运行,查看效果;

添加触摸效果

1、选中Octa对象,在Inspector中添加AudioSource脚本,把SpatialBlend修改为1,用来启用空间音频;

2、继续为Octa对象添加NearInteractiontouchable脚本,然后点击FixBounds和FixCenter,用来修正触摸边界属性,此脚本为近距离可触摸脚本;

3、继续为Octa添加一个HandInteractionTouch脚本,此脚本为手动交互触摸脚本;

4、在HandInteractionTouch脚本的OnTouchStarted地方,点击“+”号新建一个事件,将Octa对象拖入此事件中;

5、继续在这个地方的后面的下拉选项中,选择AudioSource>PlayOneShot(AudioClip),然后再下面选择声音资源;

6、官方资源包的音频资源位置为:Assets>MixedRealityToolkit.SDK>StandardAssets>Audio,官方文档选择的是MRTK_Gem音频;

7、运行查看效果,远程触碰无效,需要触手触碰到八面体的时候才会播放音乐并且出现变色效果;

本节结束

官方链接:https://docs.microsoft.com/zh-cn/windows/mixed-reality/mrlearning-base-ch4

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值