这是老版本的教程,为了不耽误大家的时间,请直接看原文,本文仅供参考哦!

原文链接https://developer.microsoft.com/EN-US/WINDOWS/HOLOGRAPHIC/holograms_220

空间声音可以赋予你的全息对象生命,使它们在我们的世界中像真实存在一样。 全息对象由光和声音组成,如果你碰巧找不到你的全息对象,空间声音可以帮助你找到它们。 空间声音不像你在收音机上听到的典型声音,它是位于3D空间的声音。 有了空间声音,你可以使全息对象听起来像他们在你身后,旁边,或甚至在你的头上! 在本课程中,您将:

  • 将您的开发环境配置为使用Microsoft Spatial Sound。
  • 了解如何在现实世界中对全息对象加入空间声音。
  • 使用音频找到您的全息对象。
  • 当您与全息对象进行交互时,使用声音提供触觉反馈。
  • 在全息世界中使用空间声音作为手势被识别的反馈。
  • 使用户沉浸在音乐中。

项目文件:

  • 下载项目文件 files 将它保存在您的电脑中.

章节1 Unity设置

为了实现效果,在Unity中需要将Unity的声音配置改为Microsoft Spatial Sound。

步骤:

  • 下载的项目文件名称为 Spatial Sound.
  • 打开 Unity.
  • 选择 Open.
  • 定位到你刚下载的项目文件 Spatial Sound 文件夹.
  • 点击选中 Starting 文件夹然后点击 Select Folder 按钮.
  • 等待 Unity加载项目资源.
  • Hierarchy 面板中, 选中 Main Camera.
  • Inspector 面板里, 设置摄像机位置为  0, 0, 0.
  • 在Unity's 顶部工具栏, 点击 Edit > Project Settings > Audio.
  • 找到 Spatializer Plugin 的下拉选项然后选择 MS HRTF Spatializer.
  • Hierarchy 面板中点击 Create > Create Empty.
  • 右击 GameObject 对象,将它重新命名为 “SpatialSound”.
  • 选中此SpatialSound 对象, 然后在Inspector 面板中, 点击 Add Component, 选择 Audio > Audio Source
  • Inspector 面板中添加了 Audio Source 组件后.
  • 点击 AudioClip 属性右边的小圆圈.
  • 在新弹出的窗口找到并选中 Riff audio clip ,然后关闭此窗口。
  • 回到 Inspector 面板中, 勾选 Spatialize .
  • 勾选 Loop .
  • 拖拽 Spatial Blend 滑轮到 3D, 或者直接在编辑框中输入 1 .
  • 开启 Unity 的预览模式.
  • Hierarchy 面板中, 找到并选中 Main Camera 对象.
  • Inspector 面板中,  将鼠标光标放在位置变量(XYZ)上 .
  • 你会看到鼠标光标左右会出现一个小箭头, 这时点击拖拽你的鼠标就会改变摄像机的位置.
  • 当摄像机位置改变时,声音的大小也会随之变化.
  • 点击 Play 按钮可以退出预览模式.

章节2 测试全息对象空间声音与普通立体声的对比

步骤:

  • Project 面板中, 打开 Scenes 文件夹。
  • 双击Grounding 场景文件.
  • 打开新场景后,在 Hierarchy 面板中, 选择 AudioEmitter 对象.
  • Inspector 面板中, 找到 Toggle Emitter 组件.
  • 双击切换发射器脚本用VS打开 Toggle Emitter .
using UnityEngine;
using HoloToolkit.Unity; public class ToggleEmitter : MonoBehaviour
{
private int timesSelected = ; private void OnSelected()
{
this.timesSelected++;
if (this.timesSelected == )
{
//Call "PlayEvent" on the UAudioManager using the "SimpleSound" event on this GameObject
UAudioManager.Instance.PlayEvent("SimpleSound", this.gameObject);
}
else if (this.timesSelected == )
{
//Call "StopEvent" on the UAudioManager using the "SimpleSound" event on this GameObject
UAudioManager.Instance.StopEvent("SimpleSound", this.gameObject);
//Call "PlayEvent" on the UAudioManager using the "SpatialSound" event on this GameObject
UAudioManager.Instance.PlayEvent("SpatialSound", this.gameObject);
}
else
{
this.timesSelected = ;
//Call "StopEvent" on the UAudioManager using the "SpatialSound" event on this GameObject
UAudioManager.Instance.StopEvent("SpatialSound", this.gameObject);
}
}
}

ToggleEmitter

发布测试:

具体发布流程见上两节课程,需要注意的是发布的时候记得添加当前场景到发布设置中。

当发布完成后,测试步骤如下来体验普通立体声与空间声音的区别:

  • 凝视一个盒子然后执行Air-Tap手势,会开启普通立体声。
  • 第二次执行手势会开启空间声音。
  • 第三次执行手势会关掉声音。

章节3 根据空间声音寻找全息对象

步骤:

  • 在Unity的 Project面板中,找到并打开 Scenes 文件夹.
  • 双击打开ObjectDiscovery 场景文件 .

发布测试:

  • 部署此项目到你的设备上,并测试.

    • 注意在 Build Settings 窗口, 将前一次发布的场景去掉 Scenes/Grounding.
    • 点击 Add Open Scene 来添加当前ObjectDiscovery 场景。
  • 项目运行后,说 "start" 使得宇航员开始说话.
  • 凝视宇航员做点击手势. 这个宇航员会消失不见,实际它移动到了其他位置.
  • 你可以根据宇航员发出的声音找到它.

章节4  音频触觉

这章主要通过给全息对象添加声音来代替物理对象的触觉反馈。

步骤:

  • 在Unity的 Project 面板下,打开 Scenes 文件夹.
  • 双击打开 AudioHaptics 场景文件.

发布测试:

同上发布部署到你的设备上,注意发布时设置为当前场景。

1.项目运行后,移动你的手在摄像机视角范围内,并竖起你的食指,感受你的手被追踪时系统播放的声音。这是第一个声音代替触觉反馈的事例。

2.将你的手移出追踪视线,你会发现声音也消失了。

3.凝视离你最近的立方体并手势选中它,听它发出的声音。

4.凝视离你最远的立方体并手势选中它,听它发出的声音,它的声音会更柔和。

5.当凝视点没有对焦任何全息对象时,手势点击,系统会播放另一种声音提示用户没有选择任何内容。这是音频触觉反馈另一个很好的例子。

章节5 沉浸感

步骤:

  • Project 面板下打开Scenes 文件夹。
  • 双击打开 Immersion 场景文件.

发布测试:

同上发布部署到你的设备上,注意发布时设置为当前场景。

1.说“start”开始播放具有立体声的音乐。 此时球体应该是蓝色的。
2.说“spatial”会改变音乐为使用空间声音。 此时球体应该是红色的。

-在此空间模式中,您可以通过点击球体来切换哪些球体发出声音。

-禁用的球体将是灰色的。

3 说“standard”,回到立体声音乐播放模式。
4.在房间里走动,在standard和spatial播放模式之间切换,比较它们。 立体声是无论你在哪里总是听起来相同,但是空间声音的效果可以让你感觉到每一个球体的位置,感觉像乐队一样。

原文链接:https://developer.microsoft.com/en-us/windows/holographic/holograms_220

本人根据自己的理解对原文稍作改动。如有不恰当的地方,请指正。谢谢哦

微软Hololens学院教程-Hologram 220-空间声音(Spatial sound )【本文是老版本,与最新的微软教程有出入】的更多相关文章

  1. 微软Hololens学院教程-Hologram 230-空间场景建模(Spatial mapping )【微软教程已经更新,本文是老版本】

    这是老版本的教程,为了不耽误大家的时间,请直接看原文,本文仅供参考哦!原文链接:https://developer.microsoft.com/EN-US/WINDOWS/HOLOGRAPHIC/ho ...

  2. 微软Hololens学院教程-Hologram 210 Gaze(凝视)【微软教程已经更新,本文是老版本】

    这是老版本的教程,为了不耽误大家的时间,请直接看原文,本文仅供参考哦!原文链接:https://developer.microsoft.com/EN-US/WINDOWS/HOLOGRAPHIC/ho ...

  3. 微软Hololens学院教程-Hologram 212-Voice(语音)【微软教程已经更新,本文是老版本】

    这是老版本的教程,为了不耽误大家的时间,请直接看原文,本文仅供参考哦!原文链接:https://developer.microsoft.com/EN-US/WINDOWS/HOLOGRAPHIC/ho ...

  4. 微软Hololens学院教程-Hologram 211-Gestures(手势)【微软教程已经更新,本文是老版本】

    这是老版本的教程,为了不耽误大家的时间,请直接看原文,本文仅供参考哦!原文链接:https://developer.microsoft.com/EN-US/WINDOWS/HOLOGRAPHIC/ho ...

  5. 微软Hololens学院教程- Holograms 101: Introduction with Device【微软教程已经更新,本文是老版本】

    这是老版本的教程,为了不耽误大家的时间,请直接看原文,本文仅供参考哦!原文链接:https://developer.microsoft.com/EN-US/WINDOWS/HOLOGRAPHIC/ho ...

  6. 微软Hololens学院教程- Holograms 100: Getting Started with Unity【微软教程已经更新,本文是老版本】

    这是老版本的教程,为了不耽误大家的时间,请直接看原文,本文仅供参考哦!原文链接:https://developer.microsoft.com/EN-US/WINDOWS/HOLOGRAPHIC/ho ...

  7. 2021最新WordPress安装教程(三):安装WordPress详细步骤

    前面已经通过< 2021最新WordPress安装教程(一):Centos7安装Apache>和< 2021最新WordPress安装教程(二):配置PHP和MySQL>两篇文 ...

  8. 2021最新WordPress安装教程(二):安装PHP和MySQL

    这是 2021最新WordPress安装教程系列的第二篇文章,前一篇文章< 2021最新WordPress安装教程(一):Centos7安装Apache>已经完整的介绍了如何在Centos ...

  9. HoloLens开发手记 - Unity之Spatial Sounds 空间声音

    本文主要讲述如何在项目中使用空间声音特性.我们主要讲述必须的插件组件和Unity声音组件和属性的设置来确保空间声音的实现. Enabling Spatial Sound in Unity 在Unity ...

随机推荐

  1. vim与shell的切换

    方法1: vim->shell: ctrl-z (挂起vim进程,相当于图形界面中的最小化) shell->vim: fg (foreground)   方法2: vim->shel ...

  2. RECT 数据结构

    数据结构RECT定义了一个矩形的左上角和右下角的坐标 ? 1 2 3 4 5 6 7 8 typedef struct _RECT{         LONG left;         LONG t ...

  3. 软件工程 speedsnail 冲刺4

    2015-5-8 完成任务:学习了黑马android教学视频7.8.9集,对布局和计划做了调整: 遇到问题: 问题1 异常 Warning: Activity not started, its cur ...

  4. IOS 支付功能的实现

    支付宝是第三方支付平台,简单来说就是协调客户,商户,银行三者关系的方便平台 使用支付宝进行一个完整的支付功能,大致有以下步骤: a 与支付宝进行签约,获得商户ID(partner)和账号ID(sell ...

  5. Apache开启Proxy代理,实现域名端口转发

    今天帮客户迁移网站,客户一个是ASPX的一个是PHP的网站,这时候有2个域名,可是php网站是Apache下的伪静态,必须要用到Apache,但是ASPX网站还必要到IIS+Mssql 然后到了这个时 ...

  6. apache2下部署node.js应用程序

    版本:apache2.2+node.js(v.10.25) 系统环境:ubuntu 12.04(LTS) 32位 因为有些模块并没有开启 所以需要使用以下命令开启该模块 windows下则直接在htt ...

  7. Remoting,OData Snippet Compiler等

    http://www.sliver.com/dotnet/SnippetCompiler/ [ASP.NET Web API教程]ASP.NET Web API系列教程目录 张逸 .Net Remot ...

  8. Mayan游戏 (codevs 1136)题解

    [问题描述] Mayan puzzle是最近流行起来的一个游戏.游戏界面是一个7行5列的棋盘,上面堆放着一些方块,方块不能悬空堆放,即方块必须放在最下面一行,或者放在其他方块之上.游戏通关是指在规定的 ...

  9. 全排列 (codevs 1294)题解

    [题目描述] 给出一个n, 请输出n的所有全排列(按字典序输出). [样例输入] 3 [样例输出] 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 [解题思路] 听说C++有作 ...

  10. 光迁PING值延迟计算!以及到中国最快的美国机房是哪个机房?

    美国圣安娜KT机房/美国KT机房/美国KT服务器 KT机房是美国直达大陆最快的机房,ping值一般为195MS,是做web服务器的首选机房,深受中小站长的欢迎! 我们平时测试美国服务器的速度,都是通过 ...