2D, AR transitioning, 224
3D objects
dragging/dropping
3DoF (3 Degrees of Freedom), 40
6DoF (6 Degrees of Freedom), 40
180 video. See VR180 video
360 (spherical) video, 139–140, 151
acceleration, Daydream Controller, 56–57
Alien Shooter game, 193
core mechanic, building, 193–199, 200
analysis tools (LogCat), 331
anchors (ARCore), 229–230, 257–258
Android Exoplayer, 141
Android phones (Daydream-ready), 27–28
Android SDK, installing in Unity, 30–31
animation
cells
DoTween animation tweening library, 193
API (Application Programming Interface)
Daydream Controller API, 61
defined, 60
Poly API and Poly Toolkit, 271–272
App button (Daydream Controller), 55, 57
app system inputs, Daydream Controller, 64–65
apps
AR Shopping Catalogue app, 280–291
ARCore and Poly Toolkit, 271
licensing, 271
Poly Toolkit and ARCore, 271, 272–273
Poly Toolkit and Unity, 272–273
drawing apps, creating, 266–271
shopping apps, creating, 280–291
AR (Augmented Reality), 2–3, 220
2D transitioning to AR, 224
AR Shopping Catalogue app, 280–291
ARCore and Poly Toolkit, 271
experiences, 222
licensing, 271
Poly Toolkit and ARCore, 271, 272–273
Poly Toolkit and Unity, 272–273
AR Drawing app, creating, 266–271
AR Optional mode, 239
AR Required mode, 239
attaching objects to non-horizontal surfaces, 260
COM, 226
creating targets below the landing position of dragged objects, 253–257
customizing surface visualization, 260–261
dragging objects with physics weight, 243–250
environmental understanding, 226–227
frames, 230
games, 2D transitioning to AR, 295
games, room-scale AR games, 294
games, types of games, 293–294
games, world-scale AR games, 294
getting Y position of lowest plane, 259–260
hiding tracked surface visualization, 258–259
light estimation, 226, 227, 231
online resources, 220
oriented points, 227
pinching to scale GameObjects, 261–262
Poses, 231
raycasting, 226
selecting/dragging objects across a plane, 240–243
selecting/rotating objects, 251–253
sessions, 228
TrackedPlaneVisualizer, 231
design guidelines, 220
2D transitioning to AR, 295
room-scale AR games, 294
world-scale AR games, 294
indoor AR, 223
mobile AR design, best practices, 224
product excellence, 225
Tango, 14
tracking and user experience, 223
UI and, 223
user experience and AR tracking, 223
arm model
Daydream Controller, 59–60, 88–89
defined, 41
asynchronous loading, 335
asynchronous reprojection, 328
attaching objects to non-horizontal surfaces, ARCore, 260
audio
normal audio, 170
resonance audio, 162
spatial audio theory, 161
normal audio, setting, 170
resonance audio, installing/configuring, 162
spatial audio theory, 161
bake lighting, 336
best practices
mobile AR design, 224
performance, 329
VR, 329
binding GameObjects, 26
body models, defined, 41
bottlenecks
fixing, 329
isolating, 328
build times (slow), 145
buttons, adding to UI, 107–110
callback events and video, 159–161
cameras
chase cameras, setting up, 45–47
simulator sickness, 48
third-person cameras, setting up, 45–47
Canvas
UI builds, adding a Canvas in dmms, 101–103
cells (animated)
character/player builds, AR games, 306–309
chase cameras, setting up, 45–47
classes. See scripts (Unity)
click button (Daydream Controller), 57
code libraries, tweening libraries, 117
code optimization, 338
coin builds, AR games, 311
Colliders, 176
collisions, optimizing performance, 338
COM (Concurrent Odometry and Mapping), 226
Components (Unity), 24
compressing textures, 335
connectivity, Daydream Controller, 57
Console (Unity Editor), 23
Controller (Daydream), 53–54, 60, 83
API, 61
click button, 57
connectivity, 57
Controller Emulators, setting up, 36–37
customizing
manually changing Default Controller Mesh, 81–82
swapping GameObjects dynamically, 84–86
Default Controller Mesh, manually changing, 81–82
Event Systems (Input Systems), 60
GvrControllerMain, 39
GvrControllerPointer, 39
gyroscope, 56
handedness (left/right), 65–66
hardware inputs, 55
Home button, 55
interactivity, 66
dragging/dropping 3D objects (method 1), 70–72
dragging/dropping 3D objects (method 2), 72–73
dragging/dropping intersects, 75–76
selecting 3D objects, 66, 67–70, 73–75
touchpad interaction/controlling GameObjects, 77–78
orientation, 56
proprioception, defined, 79
setting up for development, 28
support for, 58
swapping GameObjects dynamically, 84–86
touchpad/touch position, 57
troubleshooting, 38
visualization, 58
laser visualization, 59
reticle visualization, 59
Volume buttons, 55
culling, 336
Frustum culling, 336
occlusion culling, 336
overdrawing, 336
customizing
Daydream Controller
manually changing Default Controller Mesh, 81–82
swapping GameObjects dynamically, 84–86
surface visualization, ARCore, 260–261
teleportation systems, 45
Daydream, 38
normal audio, 170
resonance audio, 162
spatial audio theory, 161
API, 61
click button, 57
connectivity, 57
customizing, laser pointer, 86–87
customizing, manually changing Default Controller Mesh, 81–82
customizing, reskinning Controller, 79–80
customizing, swapping GameObjects dynamically, 84–86
customizing, updating tooltips, 83–84
Event Systems (Input Systems), 60
GvrControllerMain, 39
GvrControllerPointer, 39
gyroscope, 56
handedness (left/right), 65–66
hardware inputs, 55
Home button, 55
interactivity, 66
interactivity, dragging/dropping 3D objects (method 1), 70–72
interactivity, dragging/dropping 3D objects (method 2), 72–73
interactivity, selecting 3D objects, 66, 67–70, 73–75
interactivity, teleportation (simple), 76–77
interactivity, touchpad interaction/controlling GameObjects, 77–78
intersects, dragging/dropping intersects, 75–76
laser visualization, 59
orientation, 56
proprioception, 79
reticle visualization, 59
setting up for development, 28
swapping GameObjects dynamically, 84–86
touchpad/touch position, 57
troubleshooting, 38
Volume buttons, 55
Controller Emulators, setting up, 36–37
installing, 34
UI builds, 125
GvrControllerMain, 39
GvrControllerPointer, 39
GvrEditorEmulator, 38
GvrEventSystem, 39
GvrPointerGraphicsRaycaster, 40
GvrPointerPhysicsRaycaster, 39–40
Home world, 92
Instant Preview, setting up, 35–36
LogCat analysis tool, 331
real-time monitoring tools, 329–330
Daydream Renderer Wizard, 332
Vertex Lighting window, 332–333
video, 141
360 (spherical) video, 151
building rectangular (flat) video, 145–148
creating versatile video players with playlists, 152–159
GvrVideoPlayerTexture script, 142–143
importing GvrVideoPlayer SDK, 145
Media App template, 144
rectangular (flat) video, 148–149
specifications, 142
spherical video players, 149–151
streaming 360 (spherical) video, 151
streaming rectangular (flat) video, 148–149
streaming VR180 video, 151–152
StreamingAssets special folder, 145
VideoStereoInside material, 143–144
VR
Developer Options, 37
headsets, inserting phones into headsets, 32
headsets, setting up for development, 28
Android phones (Daydream-ready), 27–28
Android SDK, installing in Unity, 30–31
chase cameras (third-person), setting up, 45–47
Controller, setting up for development, 28
Daydream VR headset, setting up for development, 28
first person VR players, building, 41–42
Google VR SDK
setting up for development, 28–29
Java JDK, installing in Unity, 30–31
motion sickness, troubleshooting, 48–50
Fade Vignette Controller script, 51–52
First Person Tunneling Locomotion script, 50–51
Tunneling Vignette script, 51
phones, inserting into Daydream Viewer headset, 32
setting up, 29
Android phones (Daydream-ready), 27–28
Android SDK, installing in Unity, 30–31
Controller, 28
Google VR SDK, installing in Unity, 31–32
Java JDK, installing in Unity, 30–31
teleportation systems
customizing, 45
development environment (Daydream). See SDK (Daydream)
dmm (distance-independent millimeter)
UI builds, adding a Canvas in dmms, 101–103
DoF (Degrees of Freedom), 40
DoTween animation tweening library, 193
dragging/dropping
3D objects
objects with ARCore
creating targets below the landing position of dragged objects, 253–257
dragging objects across a plane, 240–243
dragging objects with physics weight, 243–250
draw calls, 333
dynamic batching, 333
static batching, 333
Unity Profiler and, 334
drawing apps, creating, 266–271
dynamic batching (draw calls), 333
editing scripts (Unity), 25
Console, 23
Hierarchy window, 22
Learn tab, 20
Project window, 21
Projects tab, 20
Scene view, 21
toolbar, 22
ChaseCamPlayer, setting up chase cameras (third-person), 45–47
installing, 34
TeleportController
creating teleportation systems, 43–45
customizing teleportation systems, 45
emulators, Controller Emulators (Daydream), setting up, 36–37
enemy builds, AR games, 309–311
ergonomics, UI design, 94
Event Systems (Input Systems), Daydream Controller, 60
event triggers, 67
Daydream Controller, interactivity, selecting 3D objects, 67–70
defined, 67
events (Unity), Alien Shooter game, 199–200
Exoplayer (Android), 141
experience (user), UI design, 93–94
explosion builds, AR games, 311
Fade Vignette Controller script, 51–52
First Person Tunneling Locomotion script, 50–51
first person VR players, building, 41–42
FixedUpdate, 177
flat video. See rectangular video
flipping pancakes game, 179–186
frame rates, optimizing, 333
frames, ARCore, 230
Frustum culling, 336
full screen passes, 337
ARCore
pinching to scale GameObjects, 261–262
retrieving GameObjects attached to anchors, 257–258
retrieving GameObjects attached to trackables, 258
binding, 26
creating, 24
Daydream Controller, touchpad interaction/controlling GameObjects, 77–78
draw calls, 333
dynamic batching, 333
static batching, 333
Unity Profiler and, 334
local space, 55
prefabs, 24
scaling GameObjects by pinching, 261–262
tags, 304
variables, accessing, 26
world space, 55
2D transitioning to AR, 295
game play builds, AR games, 317–322
coin builds, 311
particle explosion builds, 311
player/character builds, 306–309
wiring everything together, 323–324
room-scale AR games, 294
world-scale AR games, 294
Alien Shooter game, 193
building core mechanic, 193–199, 200
pancake-flipping game, 179–186
pop gun mechanics, 186, 187–188
Unity physics engine, 174
Colliders, 176
FixedUpdate, 177
Voxel, 187
Google VR SDK
Daydream components, 38
GvrControllerMain, 39
GvrControllerPointer, 39
GvrEditorEmulator, 38
GvrEventSystem, 39
GvrPointerGraphicsRaycaster, 40
GvrPointerPhysicsRaycaster, 39–40
setting up for development, 28–29
grenade mechanics (physics games), 188–191
grid layouts, UI layouts, 133–135
GvrControllerMain, 39
GvrControllerPointer, 39
GvrEditorEmulator, 38
GvrEventSystem, 39
GvrPointerGraphicsRaycaster, 40, 100
GvrPointerPhysicsRaycaster, 39–40
GvrVideoPlayer SDK, importing, 145
GvrVideoPlayerTexture, 142–143
gyroscope (Daydream Controller), 56
handedness (left/right), Daydream Controller, 65–66
headsets
inserting phones into headsets, Daydream SDK, 32
setting up for development, 28
inside-out tracking, defined, 3
Lenovo Mirage Solo headset, 13
hiding tracked surface visualization, ARCore, 258–259
Hierarchy window (Unity Editor), 22
HLS (HTTP Live Streaming), 141
Home button (Daydream Controller), 55
Home screen (Unity Editor), 19–20
Home world (Daydream), 92
horizontal layouts, UI layouts, 129–131
hover effect, animated cells, 120–124
indoor AR (Augmented Reality), 223
input, Daydream Controller
handedness (left/right), 65–66
Input Systems (Event Systems), Daydream Controller, 60
inside-out tracking, defined, 3
Inspector window (Unity Editor), 22–23, 26
installing
Elements (Daydream), 34
Google VR SDK, in Unity, 31–32
troubleshooting Unity-related installations, 32–33
Instant Preview (Daydream), setting up, 35–36
interactivity, Daydream Controller, 66
dragging/dropping
selecting 3D objects, 66, 67–70, 73–75
touchpad interaction/controlling GameObjects, 77–78
interfaces, defined, 67
intersects, dragging/dropping (Daydream Controller), 75–76
Java JDK, installing in Unity, 30–31
JSON files, creating versatile video players with playlists, 152–159
landing position of dragged objects, creating targets below, 253–257
laser pointer (Daydream Controller), customizing, 86–87
laser visualization, Daydream Controller, 59
layouts
grid layouts (UI layouts), 133–135
horizontal layouts (UI layouts), 129–131
multipanel scrolling layouts (UI layouts), 135–136
nested layouts (UI layouts), 131–133
scrolling layouts (multipanel), UI layouts, 135–136
UI layouts
animated cells, creating, 117–120
animated cells, hover effect, 120–124
animated cells, masking effects, 125–129
animated cells, tilt effect, 120–124
multipanel scrolling layouts, 135–136
scrolling layouts (multipanel), 135–136
Learn tab (Unity Editor), 20
left/right handedness, Daydream Controller, 65–66
Lenovo Mirage Solo headset, 13
level scenes (AR tabletop games), building, 305–306
coin builds, 311
enemy builds, 309–311, 312–317
particle explosion builds, 311
player/character builds, 306–309
wiring everything together, 323–324
libraries (tweening), 117, 193
licensing, AR apps, 271
light boxes, 337
light estimation, ARCore, 227, 231
lighting
bake lighting, 336
light probes, 336
optimizing performance, 336
loader scenes (AR tabletop games), building, 297–304
local space (GameObjects), 55
local URL (Uniform Resource Locators), 147–148
LOD (Level of Detail), 337
LogCat analysis tool, 331
lowest plane, getting Y position with, 259–260
masking effects, animated cells, 125–129
Material Design, UI design, 95
materials
Unity, surface rendering, 143
VideoStereoInside material, 143–144
Media App template, Daydream video, 144
menus, game menus, adding to UI, 110–117
Mip mapping, 335
mobile AR design, best practices, 224
monitoring tools (Daydream), 329–330
Mono Develop, 19
MonoBehaviours, 25
Start function, 26
Update function, 26
monoscopic video, 138
motion sickness
Fade Vignette Controller script, 51–52
First Person Tunneling Locomotion script, 50–51
Tunneling Vignette script, 51
Fade Vignette Controller script, 51–52
First Person Tunneling Locomotion script, 50–51
Tunneling Vignette script, 51
motion tracking, ARCore, 225, 226
MPEG-DASH (Dynamic Adaptive Streaming over HTTP), 141
multipanel scrolling layouts, UI layouts, 135–136
namespaces, Unity scripts, 277
nested layouts, UI layouts, 131–133
non-horizontal surfaces, attaching objects to, 260
normal audio, setting, 170
object pooling, 337
occlusion culling, 336
online resources
ARcore, 220
Poly Toolkit, 272
optimizing performance, 327–328
asynchronous loading, 335
asynchronous reprojection, 328
bottlenecks
fixing, 329
isolating, 328
code optimization, 338
collisions, 338
Daydream
LogCat analysis tool, 331
draw calls, 333
dynamic batching, 333
static batching, 333
Unity Profiler and, 334
frame rates, 333
full screen passes, 337
light boxes, 337
lighting, 336
LOD, 337
Mip mapping, 335
object pooling, 337
polygon counts (geometry), 335
profiling, 329
render scale, 337
texture atlases, 335
texture compression, 335
VR, best practices, 329
orientation (Daydream Controller), 56
oriented points, ARCore, 227
outdoor AR (Augmented Reality), 222–223
overdrawing, 336
pancake-flipping game, 179–186
particle explosion builds, AR games, 311
performance, simulator sickness, 48
performance, optimizing, 327–328
asynchronous loading, 335
asynchronous reprojection, 328
bottlenecks
fixing, 329
isolating, 328
code optimization, 338
collisions, 338
Daydream
LogCat analysis tool, 331
draw calls, 333
dynamic batching, 333
static batching, 333
Unity Profiler and, 334
frame rates, 333
full screen passes, 337
light boxes, 337
lighting, 336
LOD, 337
Mip mapping, 335
object pooling, 337
polygon counts (geometry), 335
profiling, 329
render scale, 337
texture atlases, 335
texture compression, 335
VR, best practices, 329
Alien Shooter game, 193
building core mechanic, 193–199, 200
pancake-flipping game, 179–186
pop gun mechanics, 186, 187–188
Unity physics engine, 174
Colliders, 176
FixedUpdate, 177
Voxel, 187
physics weight, dragging objects with, 243–250
pinching to scale GameObjects, 261–262
planes
selecting/dragging objects across, 240–243
Y position of lowest plane, getting with ARCore, 259–260
player/character builds, AR games, 306–309
playlists, creating versatile video players with playlists, 152–159
Poly Toolkit
licensing and, 271
online resources, 272
polygon counts (geometry), optimizing, 335
pooling objects, 337
pop gun mechanics (physics games), 186, 187–188
Poses, ARCore, 231
prefabs, 24
ChaseCamPlayer, setting up chase cameras (third-person), 45–47
GvrControllerMain, 39
GvrControllerPointer, 39
GvrEditorEmulator, 38
GvrEventSystem, 39
TeleportController
creating teleportation systems, 43–45
customizing teleportation systems, 45
previewing, Instant Preview (Daydream), 35–36
product excellence
AR and, 225
software development, 225
Profiler (Unity), 177–178, 334
profiling, 329
Project window (Unity Editor), 21
Projects tab (Unity Editor), 20
proprioception, defined, 79
raycasting, ARCore, 226
Rect Transforms, UI design, 99
rectangular (flat) video, 138–139
Daydream Renderer Wizard, 332
Vertex Lighting window, 332–333
rendering
render scale, 337
shadows, 336
surfaces, Unity shaders/materials, 143
resonance audio, installing/configuring, 162
reticle
defined, 58
visualization, Daydream Controller, 59
right/left handedness, Daydream Controller, 65–66
Rigidbody component
FixedUpdate, 177
room-scale AR games, 294
rotating objects
3D objects with Daydream Controller, 73–75
ARCore, selecting/rotating objects, 251–253
scaling GameObjects, pinching with ARCore, 261–262
Scene view (Unity Editor), 21
Fade Vignette Controller script, 51–52
First Person Tunneling Locomotion script, 50–51
GvrPointerGraphicsRaycaster, 40
GvrPointerPhysicsRaycaster, 39–40
GvrVideoPlayerTexture, 142–143
Tunneling Vignette script, 51
creating, 25
editing, 25
namespaces, 277
scrolling layouts (multipanel), 135–136
Android SDK, installing in Unity, 30–31
Android phones (Daydream-ready), 27–28
Android SDK, installing in Unity, 30–31
chase cameras (third-person), setting up, 45–47
Controller, setting up for development, 28
Daydream VR headset, setting up for development, 28
first person VR players, building, 41–42
Java JDK, installing in Unity, 30–31
motion sickness, troubleshooting, 48–52
phones, inserting into Daydream Viewer headset, 32
Google VR SDK
setting up for development, 28–29
GvrVideoPlayer SDK, importing, 145
selecting objects
dragging objects across a plane, 240–243
sensor input, Daydream Controller, 63–64
shaders, surface rendering, 143
shadows, rendering, 336
shopping, AR Shopping Catalogue app, 280–291
simulator sickness, 48
Sketch, UI design, 96
slow build times, 145
software development, product excellence, 225
sound effects, AR games, 322–323
spatial audio theory, 161
spatialized audio, installing/configuring, 162–168
spherical video players, building, 149–151
spherical video. See 360 (spherical) video
Start function, MonoBehaviours, 26
static batching (draw calls), 333
stereoptics, history of VR/AR, 4–6
stereoscopic video, 138
streaming video, 141
360 (spherical) video, 151
HLS, 141
large video assets, 151
MPEG-DASH, 141
rectangular (flat) video, 148–149
StreamingAssets special folder, 145
surface rendering
attaching objects to non-horizontal surfaces, ARCore, 260
customizing surface visualization, ARCore, 260–261
hiding tracked surface visualization, ARCore, 258–259
Unity shaders/materials, 143
level scenes, building, 305–306
coin builds, 311
particle explosion builds, 311
player/character builds, 306–309
wiring everything together, 323–324
loader scenes, building, 297–304
tags, GameObjects tags, 304
Tango, 14
targets, creating below the landing position of dragged objects, ARCore, 253–257
teleportation
Daydream Controller, simple teleportation, 76–77
teleportation systems
customizing, 45
template scenes, building with ARCore, 234–239
templates (Media App), Daydream video, 144
text
protecting, 106
texture atlases, 335
texture compression, 335
third-person cameras, setting up, 45–47
tilt effect, animated cells, 120–124
toolbars, Unity Editor toolbar, 22
tooltips, Daydream Controller, 58–59, 83–84
touchpad/touch position (Daydream Controller), 57, 77–78
trackables (ARCore), 227, 228–229, 258
tracked surface visualization, hiding, ARCore, 258–259
TrackedPlaneVisualizer, ARCore, 231
tracking
AR tracking state, ARCore, 262–264
inside-out tracking, defined, 3
motion tracking, ARCore, 225, 226
troubleshooting. See also optimizing performance
bottlenecks
fixing, 329
isolating, 328
build times, 145
Controller (Daydream), 38
Fade Vignette Controller script, 51–52
First Person Tunneling Locomotion script, 50–51
Tunneling Vignette script, 51
Unity-related installations, 32–33
tunneling
Fade Vignette Controller script, 51–52
First Person Tunneling Locomotion script, 50–51
motion sickness, troubleshooting, 48–50
Fade Vignette Controller script, 51–52
First Person Tunneling Locomotion script, 50–51
Tunneling Vignette script, 51
Tunneling Vignette script, 51
UI (User Interfaces)
AR and, 223
adding a Canvas in dmms, 101–103
Daydream Elements, 125
Daydream Home world, 92
ergonomics, 94
GvrPointerGraphicsRaycaster, 100
Material Design, 95
Rect Transforms, 99
Sketch, 96
layouts, 117
animated cells, creating, 117–120
animated cells, hover effect, 120–124
animated cells, masking effects, 125–129
animated cells, tilt effect, 120–124
multipanel scrolling layouts, 135–136
scrolling layouts (multipanel), 135–136
uncanny valley, defined, 11
Android SDK, installing in Unity, 30–31
anchors, retrieving GameObjects attached to anchors, 257–258
AR Optional mode, 239
AR Required mode, 239
attaching objects to non-horizontal surfaces, 260
creating targets below the landing position of dragged objects, 253–257
customizing surface visualization, 260–261
dragging objects with physics weight, 243–250
frames, 230
getting Y position of lowest plane, 259–260
hiding tracked surface visualization, 258–259
light estimation, 231
pinching to scale GameObjects, 261–262
Poses, 231
selecting/dragging objects across a plane, 240–243
selecting/rotating objects, 251–253
sessions, 228
trackables, retrieving GameObjects attached to trackables, 258
TrackedPlaneVisualizer, 231
classes. See scripts
Components, 24
draw calls, 333
dynamic batching, 333
static batching, 333
Unity Profiler and, 334
Editor, Inspector window, accessing variables, 26
accessing variables, 26
binding, 26
creating, 24
prefabs, 24
tags, 304
Google VR SDK, installing in Unity, 31–32
installing
troubleshooting installations, 32–33
Java JDK, installing in Unity, 30–31
materials, surface rendering, 143
Mono Develop, 19
MonoBehaviours, 25
Start function, 26
Update function, 26
Alien Shooter game, 193
Alien Shooter game, building, 200–210, 217
Alien Shooter game, building core mechanic, 193–199, 200
Alien Shooter game, Unity Events, 199–200
Colliders, 176
FixedUpdate, 177
pancake-flipping game, 179–186
pop gun mechanics, 186, 187–188
Voxel, 187
Poly Toolkit
licensing and, 271
online resources, 272
prefabs, 24
creating, 25
editing, 25
namespaces, 277
shaders, surface rendering, 143
Rect Transforms, 99
Console, 23
Hierarchy window, 22
Learn tab, 20
Project window, 21
Projects tab, 20
Scene view, 21
toolbar, 22
Unity Events, Alien Shooter game, 199–200
variables, accessing via Inspector, 26
Update function, MonoBehaviours, 26
updating, Daydream Controller 83–84
URL (Uniform Resource Locators), local URL, 147–148
user experience, UI design, 93–94
user input, Daydream Controller, 61–63
valley (uncanny), defined, 11
variables (Unity), accessing via Inspector, 26
versatile video players with playlists, creating, 152–159
Vertex Lighting window (Daydream Renderer), 332–333
video
180 video. See VR180 video
360 (spherical) video, 139–140, 151
Android Exoplayer, 141
Daydream video, 141
building rectangular (flat) video, 145–148
creating versatile video players with playlists, 152–159
GvrVideoPlayerTexture, 142–143
importing GvrVideoPlayer SDK, 145
large video assets, 151
Media App template, 144
specifications, 142
spherical video players, 149–151
streaming 360 (spherical) video, 151
streaming rectangular (flat) video, 148–149
VideoStereoInside material, 143–144
flat video. See rectangular video
HLS, 141
large video assets, streaming, 151
Media App template, 144
MPEG-DASH, 141
rectangular (flat) video, 138–139
spherical video players, building, 149–151
spherical video. See 360 (spherical) video
streaming video, 141
360 (spherical) video, 151
HLS, 141
large video assets, 151
MPEG-DASH, 141
rectangular (flat) video, 148–149
StreamingAssets special folder, 145
versatile video players with playlists, creating, 152–159
VideoStereoInside material, 143–144
VR and video, 138
360 (spherical) video, 139–140
HLS, 141
monoscopic video, 138
MPEG-DASH, 141
rectangular (flat) video, 138–139
stereoscopic video, 138
streaming video, 141
visualization
customizing surface visualization, ARCore, 260–261
Daydream Controller visualization, 58
laser visualization, 59
reticle visualization, 59
hiding tracked surface visualization, ARCore, 258–259
laser visualization, 59
reticle visualization, 59
Volume buttons (Daydream Controller), 55
Voxel (Volumetric Pixels), 187
defined, 3
performance, best practices, 329
twentieth century VR, history of VR/AR, 10–11
adding a Canvas in dmms, 101–103
Daydream Elements, 125
Daydream Home world, 92
ergonomics, 94
GvrPointerGraphicsRaycaster, 100
Material Design, 95
Rect Transforms, 99
Sketch, 96
UI layouts, 117
animated cells, creating, 117–120
animated cells, hover effect, 120–124
animated cells, masking effects, 125–129
animated cells, tilt effect, 120–124
multipanel scrolling layouts, 135–136
scrolling layouts (multipanel), 135–136
video, 138
360 (spherical) video, 139–140
HLS, 141
monoscopic video, 138
MPEG-DASH, 141
rectangular (flat) video, 138–139
stereoscopic video, 138
streaming video, 141
VR Developer Options (Daydream), 37
VR players, building first person, 41–42
weapon selector (physics games), 192–193
web resources
ARcore, 220
Poly Toolkit, 272
weight, dragging objects with, 243–250
world space (GameObjects), 55
world-scale AR games, 294
WorldSense and headsets, 13–14
wrist model, defined, 41
18.217.144.32