hololens自带例程

HoloToolkit-Unity-v1.5.7.0自带了一系列例程HoloToolkit-Unity-Tests-v1.5.7.0。 
作者刚开始的时候没有注意到,使用网上低版本的教程学了半天,到新版本又是一头懵逼。 
因此总结一下这些例程。 
学会使用这些例程对入门有帮助的多,也免得网络上四处寻找资料。 
HoloToolkit例程分为 
1)Input 
2)Sharing 
3)SpatialMapping 
4)SpatialSound 
5)Utilities 
总共五个类型,本文只介绍Input和SpatialMapping中的TapToPlace,因为作者目前也只用到这两类。顺带介绍Utilities里面的一些文件。 
第一部分:Input 
1、BasicCursor:实现一个简单的鼠标效果。也是最基础的项目。 
图1.1.1 
图1.1.1 
2、Cursor:实现凝视对象跟没有凝视对象的时候不同的鼠标效果。 
凝视对象的时候,效果如图1.1.1,没有凝视的时候,效果如图1.2.1: 
图1.2.1 
图1.2.1 
3、CursorWithFeedback:在识别到手的时候,鼠标显示为“手”状 
图1.3.1 
图1.3.1 
4、FocusedObjectKeywords:语音控制目标放大缩小 
5、GazeEvents凝视左球时,右边的球消失,凝视右边的球时,光线变暗。 
这里写图片描述
图1.5.1 
6、InputManagerTest设置了凝视与一些UI效果的交互 
这里写图片描述
图1.6.1 
左侧窗口为弹窗示例,点击圆柱体,则会弹出四个按钮,点击空白后消失。 
这里写图片描述 
图1.6.2 
中间窗口分为三个部分,wait按钮点击后,会呈现一个进度显示 
这里写图片描述 
图1.6.3 
wait右边三个按钮在鼠标经过的时候会变大。 
下面的Popup按钮点击后会出现一个弹窗,同时在弹窗出现期间,其他功能不可用。 
这里写图片描述 
图1.6.4 
右边面板展示鼠标在三维物体表面时,会跟随表面曲面投影。如图,鼠标在斜面上也随之斜角。 
这里写图片描述 
图1.6.5 
下边面板的sphere与cube可以拖动。\ 
7、InputTapTest展示了凝视与非凝视状态不同鼠标效果,以及点击后目标变大的效果。 
这里写图片描述 
图1.7.1 
8、InteractiveMeshCursor展示了鼠标的不同状态,针对不同状态,显示三种不同的鼠标,点状、圆环状、放大圆环状。 
这里写图片描述 
图1.8.1 
鼠标的状态包括:

       public enum CursorStateEnum
        {
            /// <summary>
            /// Useful for releasing external override.
            /// See <c>CursorStateEnum.Contextual</c>
            /// </summary>
            None = -1,
            /// <summary>
            /// Not IsHandVisible
            /// </summary>
            Observe,
            /// <summary>
            /// Not IsHandVisible AND not IsInputSourceDown AND TargetedObject exists
            /// </summary>
            ObserveHover,
            /// <summary>
            /// IsHandVisible AND not IsInputSourceDown AND TargetedObject is NULL
            /// </summary>
            Interact,
            /// <summary>
            /// IsHandVisible AND not IsInputSourceDown AND TargetedObject exists
            /// </summary>
            InteractHover,
            /// <summary>
            /// IsHandVisible AND IsInputSourceDown
            /// </summary>
            Select,
            /// <summary>
            /// Available for use by classes that extend Cursor.
            /// No logic for setting Release state exists in the base Cursor class.
            /// </summary>
            Release,
            /// <summary>
            /// Allows for external override
            /// </summary>
            Contextual
        }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37

9、KeywordManager在按键R、G、B或者语音说Red、Green、Blue的时候回改变球体成为对应颜色。 
这里写图片描述 
图1.9.1 
10、ManualCameraControl展示了手势别鼠标,在识别到手的时候,鼠标会变成手状 
11、MicrophoneStream由立方体发出立体声,通过wasQ四个键控制声音的停止播放、开始录制、保存、开始播放。 
12、OverrideFocusedObjectTest初始显示HelloWorld,在凝视点击后变成Air tap worked and OverrideFocusedObject is null. 
这里写图片描述 
图1.12.1 
13、SelectedObjectKeywords开局自动产生指定数量的物体,如本例为3*3网格布置的物体,物体在语音给出指令的时候改变状态,分别为 
Clear Selection,取消选择状态 
Make Bigger,物体变大 
Select Object,选择物体,物体变成指定颜色,本例为红色 
Make Smaller,物体变小。 
这里写图片描述 
图1.13.1 
14、SpeechInputSource通过语音Red、Green、Blue控制凝视对象颜色。 
这里写图片描述
第二部分 
1、TapToPlace,实现空间识别,并且通过点击手动放置cube在空间合适的平面位置。

猜你喜欢

转载自blog.csdn.net/alone_ws/article/details/82258951
今日推荐