万本电子书0元读

万本电子书0元读

顶部广告

Microsoft HoloLens Developer’s Guide电子书

售       价:¥

8人正在读 | 0人评论 6.2

作       者:Dennis Vroegop

出  版  社:Packt Publishing

出版时间:2017-07-21

字       数:49.4万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Transform the ways you communicate, create, collaborate, and explore using Microsoft HoloLens About This Book ? Create immersive augmented reality apps for Microsoft HoloLens from scratch ? Leverage the powerful HoloLens sensors to interact with real-world motions and gestures and make your app life-like ? Explore the powerful Unity 5 SDK along with the Windows Unified platform to get the most out of your HoloLens app Who This Book Is For If you are a developer who wants to create augmented reality apps for the Microsoft HoloLens platform, then this is the book for you. Coding experience with C# is assumed. What You Will Learn ? Design an app for HoloLens that is feasible and attractive to use ? Add gestures and interact with them ? Create sounds in the app and place them in a 3D space ? Use voice generation and voice recognition to make your apps more lifelike ? Interact with the physical environment to place holograms on top of physical objects ? Compare HoloLens with the other products and know how to use its strengths ? Use assets from third parties to enrich our app In Detail HoloLens, Microsoft’s innovative augmented reality headset, overlaps holograms into a user’s vision of their environment. Your ideas are closer to becoming real when you can create and work with holograms in relation to the world around you. If you are dreaming beyond virtual worlds, beyond screens, beyond pixels, and want to take a big leap in the world of augmented reality, then this is the book you want. Starting off with brainstorming and the design process, you will take your first steps in creating your application for HoloLens. You will learn to add gestures and write an app that responds to verbal commands before gradually moving on creating sounds in the app and placing them in a 3D space. You will then communicate between devices in the boundaries of the UWP model. Style and approach This book takes a step-by-step, practical, tutorial-style approach where you will dive deep into HoloLens app development. You will work with the API and write your own complex *s that would interact with the powerful HoloLens sensors and with realistic examples, you will be able to create immersive 3D apps for HoloLens.
目录展开

Title Page

Copyright

Microsoft HoloLens Developer's Guide

Credits

About the Author

Acknowledgments

About the Reviewer

www.PacktPub.com

Why subscribe?

Customer Feedback

Preface

What this book covers

What you need for this book

Who this book is for

Conventions

Reader feedback

Customer support

Downloading the example code

Downloading the color images of this book

Errata

Piracy

Questions

Lets Begin!

Welcome to the HoloLens!

The device

A wearable computer

The sensors

Cameras

Microphones

Holographic lenses

Spatial speakers

Processors

The device in a nutshell

Displaying 3D images

Wearing the device

Turning the device on for the first time

Learning the gestures

Calibrating the device

The device portal

Overview of the portal

The different menus in the portal

The Views menu in the portal

Writing your first holographic application

The tools we need to write software

Your very first application

Deploying your first app to the emulator

How to use the emulator

Deploying the app to the device

Deploying through Wi-Fi

Deploying through USB

Let's have a look at the code

The structure of the project

Inside the AppView class

Using Unity3D to create great holographic apps

Our first HoloApp in Unity3D

Fixing the camera

Changing the position

Changing the background color

Adding holographic objects

Create a sample script

Building the project

Continuing in Visual Studio after Unity

The structure of a Unity HoloLens UWP app solution

Build configurations with Unity

Building and running your HoloLens Unity app

Summary

Designing Your App

Unique features of the device

Thinking in three dimensions

Making sure objects are in a logical place

Making sure objects can be reached

Making sure objects can be found

Pointers

Sounds

Dealing with limited input methods

Gestures

Audio

People do not expect sudden changes

The social aspect in collaborative situations

Give your user superpowers!

Forming a design team

Big projects need big teams

Small projects need small teams

Using your experience

Where holographic apps are "just another app"

Where do holographic apps differ?

The workflow to identify your features

Writing down your mission statement

Brainstorming all ideas

Removing ideas that don't support the mission statement

Separating must-haves from nice-to-haves

Prioritizing must-haves

Implementing your app

Introducing the RockOn app

What do we want to achieve?

How do we get there?

Decision time - tooling

Developing with DirectX

Developing with Unity3D

Creating a new project

Getting started with Unity3D

The role of Visual Studio in developing for the HoloLens

Adding assets to the scene

Building the project

Deploying the project

Using the emulator

Using the device

Making some small adjustments

Summary

Gestures and Events

Working with gestures

Some UX considerations

A brief history of user interfaces

Command-line interface

Graphical user interface globally

Natural user interface

Feedback

Types of feedback in the HoloLens world

Getting to grips with gaze

Gaze in DirectX

The bare HoloCursor class

A word about shaders

The processing pipeline

Programming shaders

Adding shaders to our project

Additional data

Defining images in three dimensions.

Our square cursor

Rendering and updating

The Render() method

Updating after changes

Using our new class

Positioning

Rotating

Next steps

Gaze in Unity

The cursor

Creating the assets

Editing the script in Visual Studio

Using the script in Unity

Implementing the cursor code

Testing for touch

Events

Gestures in DirectX

The InteractionManager class

The SpatialGestureRecognizer

Gestures in Unity

Creating a prefab

Creating the creation code

Summary

Make Some Noise - Sounds

How our bodies work when it comes to sound

Head Related Transfer Function

Left and right

Front and back

Up and down

Head Related Transfer Functions

Moving our heads

Echo

Spatial sound in computer programs

Sound design

The design principles for spatial sound

The benefits of spatial sound

Grounding

User attention

Immersion

Interaction design

Best practices in sound design

Applying these principles

Licensing

Background music

DirectX

Getting the right NuGet packages

Loading and preparing the sound we want to play

Playing the sound

Actually play the sounds

Unity

Spatial sound

DirectX

The SpatialSound library

Using the library

Unity

Setting the audio settings in Unity3D

Adding spatial sound to GameObjects

Play the sound at the right time.

Some final thoughts on spatial sound

General concepts when it comes to sounds

What is next?

Summary

Be Heard - Voice Interactions

Let the HoloLens speak

General principles behind voice generation

Voice generation in DirectX

Creating the base of the VoicePlayer class

Initializing the sound system for streaming

Implementing IDispose the right way

Playing the sound

Synthesizing voice

Setting things up

Calling Play to hear the voice

Making the voice spatial

Voice generation in Unity3D

Creating the Unity app

Adding the helper script

Creating the scripts for the asset

Our SpatialVoicePlayer script

What is it about these #if statements?

Asynchronous stream generating

Creating the reusable asset

Adding voice to RockOn

Making things more lifelike

Introducing the SSML stream

Overview of the most important SSML tags

Listen up - voice commands

Default commands

Select

Hey, Cortana

App commands

Hologram manipulations

Dictation

Troubleshooting speech recognition

Building a VoiceRecognizer in DirectX

The VoiceRecognizer class

Building the VoiceRecognizer in Unity3D

What is next?

Summary

Take a Look around You - Spatial Mapping

VR, AR, and MR

Virtual reality

Augmented reality

Mixed reality

Usages of spatial mapping

Occlusion

Navigation

Placement

Visualization

Physics

Masquerading imperfection

Things to be aware of in spatial mapping

Errors in the spatial mapping

Holes

Fake surfaces

Misaligned surfaces

Causes for errors

The user's movements

The physical qualities of the surfaces

Lighting

Moving objects

App-specific requirements

Optimizing meshes

Spatial understanding in DirectX

Initial app

Spatial capabilities

Initial classes

Checking capabilities

Setting up device-dependent resources

Creating the SpatialSurfaceObserver

Getting the surface data

Getting the actual mesh data

Pruning the list

The SurfaceMesh class

Updating and rendering

Mesh updating and rendering

Cleaning up

Putting it all to work

Spatial understanding in Unity3D

Writing scripts for spatial mapping in Unity3D

Adding surface mapping

Capabilities

Spatial mapping in code

Handling changes in the surfaces

New and updated surfaces

Wireframe

The easy way

Occlusion

Summary

Lets Talk! Communications between Devices

The position of holograms

Local coordinate systems

Spatial mapping and coordinate systems

Spatial anchors

Using the spatial anchors in DirectX

Using SpatialAnchors in Unity3D

Changing GestureHandler.cs

Problems with anchors

Stationary frame of reference

Using the stationary frame of reference in DirectX

Using the stationary frame of reference in Unity3D

Spatial locator-attached frame of reference

Using the locator attached frame in DirectX

What this does?

Using the locator-attached frame in Unity3D

Sharing

Setting up networking

Sharing scenarios

Using a hub

Setting up the data

Setting up the TCP/IP layer

Creating the thread for handling data traffic

Handling connections

Sending data

Creating the mixed-reality client app

Setting up the connection

Consuming the connection

Connecting from Unity3D

Peer to peer

Introducing Bluetooth advertisements

Setting up the advertisement

Watching for other devices

Handling found devices

Connecting to the other HoloLens

Sharing world coordinates

Sharing spatial anchors in DirectX

Should you send one or multiple anchors?

Sharing world anchors in Unity3D

Sending the data from Unity3D

Receiving the data in Unity3D

Summary

Speed Up Your Development - Advanced Unity3D

Framework versions

Mono runtime

.NET in HoloLens

Script compiling in Unity3D

Compilation errors and how to fix them

Three possible solutions

Option 1 - do not go back and forth

Option 2 - sprinkle the code with #if/#endif statements

Option 3 - placeholder assemblies

Why does this work?

Performance in Unity3D

Remoting in Unity3D

Profiling in Unity3D

Unity3D performance tricks

QualitySettings

Polygon/vertex reduction

Static objects

Level of Detail

Lighting optimizations

Texture optimizations

Scripts optimizations

Threading

Garbage collections

Structs versus classes

Shader optimizations

Introducing the HoloToolkit

Where to get it

Importing the toolkit

Using the toolkit

Menu items

Assets

Shaders

Sharing service

And much more

Summary

累计评论(0条) 1个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部