Hololens2 利用 MRTK 在 Unity 实现基本交互

最近在折腾Hololens,要实现在Hololens中读入三维图像,并进行手势交互,及模拟三维图像的某种运动,这里拿立方体做个展示,具体操作如下:

参考资料:https://docs.microsoft.com/zh-cn/windows/mixed-reality/mrtk-101

1、首先要新建一个项目,打开unity,新建一个project;

Hololens2 利用 MRTK 在 Unity 实现基本交互_第1张图片

2、导入MRTK包(下载链接:https://github.com/Microsoft/MixedRealityToolkit-Unity/releases),Assets->Import Package->Custom Package

Hololens2 利用 MRTK 在 Unity 实现基本交互_第2张图片

Hololens2 利用 MRTK 在 Unity 实现基本交互_第3张图片

 

3、Mixed Reality Toolkit->Add to scene and Configure,加入后“Hierarchy”层次结构会出现如下红框中所示:

Hololens2 利用 MRTK 在 Unity 实现基本交互_第4张图片

4、在当前场景(此处是GettingStarted)中右键GameObject->3D Object->Cube

Hololens2 利用 MRTK 在 Unity 实现基本交互_第5张图片

5、 手动交互实现:

(1)平移交互实现:

要在哪个物体上做这个处理,就在哪个物体上挂脚本,这里就在Cube上挂ManipulationHandler.cs和NearInteractionGrabble.cs脚本,这两个脚本是在MRTK的Examples里自带的,所以直接Add Component就好(注意,在做这些交互处理前必须要Add Component:Box Collider.cs

Hololens2 利用 MRTK 在 Unity 实现基本交互_第6张图片

关键参数设置:

Hololens2 利用 MRTK 在 Unity 实现基本交互_第7张图片

(2)缩放,旋转交互实现:

在Cube上挂BoundingBox.cs脚本

关键参数设置:

Hololens2 利用 MRTK 在 Unity 实现基本交互_第8张图片

结果展示:

附加:

设置Cube的透明度:

先要新建材质球,界面下方:Assets右键Create,再material,具体操作如下:

 

然后将材质球拖入Cube中,设置Shader属性,具体见下图:

Hololens2 利用 MRTK 在 Unity 实现基本交互_第9张图片

再将“Main Color”中的透明度设为100:

运行就可以看到立方体变成透明的了

注意:

绝对坐标系和相对坐标系,如果一个物体在另一个物体的子目录,即另一个物体是它的父目录,那么它的Position就是相对于父目录而言的,即如果父目录的Position在(0,0,3),子目录的Position也在(0,0,3),那么它们是不会重合的。(如下图:Cube是父目录,Sphere是子目录)

Hololens2 利用 MRTK 在 Unity 实现基本交互_第10张图片

 

 

 

你可能感兴趣的:(混合现实,unity,hololens)