Unity virtual reality projects learn virtual reality by developing more than 10 engaging projects with unity 2018
Explore the latest features of Unity 2018 to create immersive VR projects for Oculus Rift, HTC Vive, Daydream and Gear VR About This Book A project-based guide to teach you how to develop immersive and fun VR applications using Unity 3D Build experiences with interactable objects, physics, UI, anima...
Otros Autores: | |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Birmingham ; Mumbai :
Packt Publishing
2018.
|
Edición: | Second edition |
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009631756006719 |
Tabla de Contenidos:
- Cover
- Copyright and Credits
- Dedication
- Packt Upsell
- Contributors
- Table of Contents
- Preface
- Chapter 1: Virtually Everything for Everyone
- What is virtual reality to you?
- Types of head-mounted displays
- Desktop VR
- Mobile VR
- The difference between virtual reality and augmented reality
- Applications versus games
- How virtual reality really works
- Stereoscopic 3D viewing
- Head tracking
- Types of VR experiences
- Technical skills that are important to VR
- What this book covers
- Who are you?
- Summary
- Chapter 2: Content, Objects, and Scale
- Getting started with Unity
- Creating a new Unity project
- The Unity editor
- The default world space
- Creating a simple diorama
- Adding a cube
- Adding a plane
- Adding a sphere and some material
- Changing the scene view
- Adding a photo
- Coloring the ground plane
- Measurement tools
- Keeping a unit cube handy
- Using a Grid Projector
- Measuring the Ethan character
- Using third-party content
- Creating 3D content with Blender
- An introduction to Blender
- A unit cube
- UV Texture image
- Importing into Unity
- A few observations
- Creating 3D content in VR
- Exporting and importing Tilt Brush models
- Publishing and importing using Google Poly
- Editing Unity in VR with EditorXR
- Setting up EditorXR
- Using EditorXR
- Summary
- Chapter 3: VR Build and Run
- Unity VR Support and Toolkits
- Unity's built-in VR support
- Device-specific toolkits
- Application toolkits
- Web and JavaScript-based VR
- 3D worlds
- Enabling Virtual Reality for your platform
- Setting your target platform
- Setting your XR SDK
- Installing your device toolkit
- Creating the MeMyselfEye player prefab
- Building for SteamVR
- Building for Oculus Rift
- Building for Windows Immersive MR
- Setting up Windows 10 Developer mode.
- Installing UWP support in Visual Studio
- UWP build
- Setting up for Android devices
- Installing the Java Development Kit (JDK)
- Installing Android SDK
- Via Command Line Tools
- About your Android SDK root path location
- Installing USB device debugging and connection
- Configuring the Unity External Tools
- Configuring Unity Player Settings for Android
- Building for GearVR and Oculus Go
- Building for Google VR
- Google Daydream
- Google Cardboard
- Google VR Play Mode
- Setting up for iOS devices
- Have an Apple ID
- Install Xcode
- Configuring the Unity Player Settings for iOS
- Build And Run
- Summary
- Chapter 4: Gaze-Based Control
- Ethan, the walker
- Artificially intelligent Ethan
- The NavMesh bakery
- A random walker in the town
- The RandomPosition script
- Zombie-ize" Ethan!
- Go where I'm looking
- The LookMoveTo script
- Adding a feedback cursor
- Observing through obstacles
- If looks could kill
- The KillTarget script
- Adding particle effects
- Cleaning up
- Short intro to Unity C# programming
- Summary
- Chapter 5: Handy Interactables
- Setting up the scene
- Creating a balloon
- Making it a prefab
- Basic button input
- Using the Fire1 button
- OpenVR trigger button
- Daydream controller clicks
- Polling for clicks
- Our own button interface functions
- Creating and releasing balloons
- Inflating a balloon while pressed
- Using scriptable objects for input
- Creating the scriptable object
- Populating the input action object
- Accessing the input action object
- Simulation testing with scriptable objects
- Using Unity events for input
- Invoking our input action events
- Subscribing to input events
- Really using your hands
- Parenting balloons to your hand
- Popping balloons
- Interactable items
- Interactables using SteamVR Interaction System.
- Interactables using Daydream VR Elements
- Summary
- Chapter 6: World Space UI
- Studying VR design principles
- A reusable default canvas
- Visor HUD
- The reticle cursor
- The windshield HUD
- The game element UI
- Using TextMeshPro
- Info bubble
- An in-game dashboard with input events
- Creating a dashboard with buttons
- Linking the water hose to the buttons
- Activating buttons from the script
- Look to highlight a button
- Looking and then clicking to select
- Looking and starting to select
- Pointing and clicking with VR components
- Using Unity UI and SteamVR
- Using Unity UI and Daydream
- Building a wrist-based menu palette
- Summary
- Chapter 7: Locomotion and Comfort
- Understanding Unity characters
- Unity components
- The Camera component
- The Rigidbody component
- The Character Controller component
- Unity Standard Assets
- ThirdPersonController
- AIThirdPersonController
- First-person FPSController
- RigidBodyFPSController
- Using glide locomotion
- Move in the direction you're looking
- Keep your feet on the ground
- Don't pass through solid objects
- Don't fall off the edge of the world
- Stepping over small objects and handling uneven terrain
- Starting and stopping movement
- Adding comfort mode locomotion
- Other locomotion considerations
- Techniques for teleportation
- Looking to teleport
- Teleporting between surfaces
- Teleport spawn points
- Other teleport considerations
- Teleportation toolkits
- Teleporting with SteamVR Interaction System
- Teleporting with Daydream Elements
- Resetting center and position
- Supporting room scale teleportation
- Managing VR motion sickness
- Summary
- Chapter 8: Playing with Physics and Fire
- Unity physics
- Bouncy balls
- Managing game objects
- Destroying fallen objects
- Setting a limited lifetime.
- Implementing an object pool
- Headshot game
- Paddle ball game
- Deflector versus paddle
- Shooter ball game
- Juicing the scene
- Great balls of fire
- Skull environment
- Audio synchronization
- Summary
- Chapter 9: Exploring Interactive Spaces
- Level design with Blender
- Defining the walls
- Adding a ceiling
- Assembling the scene in Unity
- The gallery room level
- The artwork rig
- The exhibition plan
- Adding pictures to the gallery
- Managing art info data
- Using lists
- Using data structures
- Using scriptable objects
- Displaying the art info
- Creating the title plaque
- Interactive info details
- Adjusting for image aspect ratio
- Moving around the gallery
- Teleporting between pictures
- Teleporting with SteamVR Interaction System
- Teleporting with Daydream Elements
- Room-scale considerations
- Animating a ride-through
- Summary
- Chapter 10: Using All 360 Degrees
- 360-degree media
- Equirectangular projections
- VR is hacking your field of view
- 180-degree media
- Stereo 360-degree media
- Fun with photo globes
- Crystal balls
- Globes
- Rendering photospheres
- Writing a custom Inward shader
- Magic orbs
- Photospheres
- Playing 360-degree videos
- Using Unity skyboxes
- Six-sided or cubemap skyboxes
- Spherical panoramic skyboxes
- 360 video skyboxes
- 3D stereo skyboxes
- Capturing 360-degrees in Unity
- Capturing cubemaps and reflection probes
- Using a third-party package for 360 image capture
- Unity built-in stereo 360 image and video capture
- Summary
- Chapter 11: Animation and VR Storytelling
- Composing our story
- Gathering the assets
- Creating the initial scene
- Timelines and Audio tracks
- Using a Timeline to activate objects
- Recording an Animation Track
- A growing tree
- A growing bird
- Using the Animation editor
- A wafting nest.
- Animating other properties
- Animating lights
- Animating a scripted component property
- Controlling particle systems
- Using Animation clips
- Shaking an egg
- Using Animator Controllers
- Definitions for Animation and Animator
- ThirdPersonController Animator
- Living Birds Animator
- Learning to fly
- Hacking the birds
- Fly away!
- Making the story interactive
- Look to play
- Resetting the initial scene setup
- More interactivity ideas
- Summary
- Chapter 12: Social VR Metaverse
- Multiplayer networking
- Networking services
- The network architecture
- Local versus server
- The Unity networking system
- Setting up a simple scene
- Creating a scene environment
- Creating an Avatar head
- Adding multiplayer networking
- Network Manager and HUD
- Network Identity and sync Transform
- Running as a host
- Adding spawn positions
- Running two instances of the game
- Associating Avatar with the first-person character
- Adding a matchmaking lobby
- Syncing objects and properties
- Setting up the headshot ball game
- Spawning the ball over the network
- Synchronizing the ball transform
- State variable synchronization
- Advanced networking topics
- Options for voice chat
- Using Oculus platform and avatars
- Oculus platform entitlement check
- Adding a local avatar
- Adding remote avatars
- Building and sharing custom VRChat rooms
- Preparing and building the world
- Summary
- Chapter 13: Optimizing for Performance and Comfort
- Using the Unity Profiler and Stats
- The Stats window
- Overview of the Profiler
- Optimizing your art
- Setting up the scene
- Decimating models
- Transparent materials
- Levels of detail
- Optimizing your scene with static objects
- Setting up the scene
- Lighting and baking
- Occlusion culling
- Optimizing your code
- Understanding the Unity life cycle.
- Writing efficient code.