Nanodegree key: nd017
Version: 2.0.0
Locale: en-us
Virtual Reality is the future of creative content. Job opportunities are skyrocketing, making this the perfect time to launch your career.
Content
Part 01 : Welcome to the VR Developer Nanodegree
VR-related job openings are up 800% year-over-year, and there is a lack of skilled VR developers and designers. Hence, the goal of the VR Developer Nanodegree program is to educate thousands of people in VR software development and design.
You are going to learn the principles of virtual reality, some programming and design, a bit of science, a little math, and a whole lot about how to create good VR from scratch.
Make sure you join the Udacity VR Developer Slack community to meet other VR enthusiasts.
-
Module 01: Welcome to the VR Developer Nanodegree
-
Lesson 01: Welcome to the VR Developer Nanodegree
Learn about the VR Developer Nanodegree, the course outline, your support options, and how to get the most out of your Nanodegree journey.
-
-
Module 02: Career: Orientation
-
Lesson 01: Career Services Available to You
The Careers team at Udacity is here to help you land your dream job - whether it's a new role or growing at your current company. Learn more about how we'll support you in your career growth.
-
Part 02 : Introduction to Virtual Reality
Learn about the principles of VR technology including optics, displays, stereopsis, tracking, and major hardware platforms.
You will also get your development environment set up with the software and SDKs you need, learn some basics about Unity, and find out how to deploy your Unity project to iOS or Android.
By the end of this course, you will have created and deployed a fully functional VR app to your mobile device.
-
Module 01: Introduction to Virtual Reality
-
Lesson 01: Before You Get Started
In this lesson, you will find important course information such as how to download the associated course assets and which software versions to use.
-
Lesson 02: What Is VR?
Welcome to your new reality! In this lesson, we take a brief look at the history of Virtual Reality and introduce the core components that make VR possible.
- Concept 01: Principles of VR
- Concept 02: Optics
- Concept 03: Quiz: Why Do VR Headsets Have Lenses?
- Concept 04: Displays
- Concept 05: Quiz: Why Do VR Displays Use Low Persistence?
- Concept 06: Tracking
- Concept 07: Challenges
- Concept 08: Short History of VR
- Concept 09: Quiz: What Do You Think Is Next for the VR Industry?
- Concept 10: Lesson Review
-
Lesson 03: Platforms & Paradigms
There are so many options for Virtual Reality hardware, how can you choose between them? In this lesson, we break down the key differences between each type of VR headset.
- Concept 01: Major VR Platforms
- Concept 02: 3-DOF vs 6-DOF
- Concept 03: How IMUs Enable 3-DOF Tracking
- Concept 04: Quiz: How Does an IMU Work?
- Concept 05: Intro to 6-DOF Tracking
- Concept 06: Major 6-DOF Tracking Systems
- Concept 07: Quiz: What Is Used for Positional Tracking?
- Concept 08: Key Differences Between Mobile & Desktop VR
- Concept 09: VR Development Platforms
- Concept 10: Lesson Review
-
Lesson 04: Hello World
In this lesson, we will start diving into the VR trenches. You will be introduced to the Unity game engine and get your computer set up with all the software you need to begin developing VR.
- Concept 01: Introducing the Unity Game Engine
- Concept 02: Unity Account
- Concept 03: Navigating the Unity Interface
- Concept 04: Quiz: The Unity Interface
- Concept 05: Quiz: Why Use a Game Engine?
- Concept 06: Opening an Existing Unity Project
- Concept 07: Customizing the Udacity Carnival Project
- Concept 08: Building to Device
- Concept 09: Deploying to Android
- Concept 10: Deploying to iOS
- Concept 11: Sit Back and Enjoy
- Concept 12: Lesson Review
-
Lesson 05: Section Review
Let's review key concepts and skills that we've learned so far.
-
-
Module 02: Udacity Carnival
-
Lesson 01: Udacity Carnival
For this project, you will customize and personalize a Unity project, deploy it to your mobile phone, and view the VR app in your Cardboard viewer.
-
Part 03 : VR Scenes & Objects
Learn the fundamentals of using the Unity game engine to build beautiful and performant VR scenes.
Starting from basic game objects, you will learn about transforms and materials, so that you can position objects and make them look realistic.
Next, you will experiment with animations and cameras in order to make our scenes more engaging in VR. And finally, you will add some complex lighting to your scene to make your experience really stand out.
-
Module 01: VR Scenes & Objects
-
Lesson 01: Before You Get Started
In this lesson, you will find important course information such as how to download the associated course assets and which software versions to use.
-
Lesson 02: Game Objects
We can’t build our new realities without objects - in this lesson we learn how to create virtual objects and add them to our scenes, as well as how to edit and move those objects around. By the end of the lesson, you will feel comfortable with the Unity interface, too!
- Concept 01: What We're Going to Build
- Concept 02: What Are Meshes?
- Concept 03: Quiz: Why Are 3D Scenes Made of Triangles?
- Concept 04: What Are Primitives?
- Concept 05: Make a Cube
- Concept 06: Quiz: How Do You Create a Cube in Unity?
- Concept 07: Complex Models
- Concept 08: Models
- Concept 09: Quiz: How Do You Create Models in Unity?
- Concept 10: Unity Transforms
- Concept 11: Quiz: Which Statements About Transforms Are True?
- Concept 12: Transform Hierarchies
- Concept 13: Unity Transform Hierarchies
- Concept 14: Quiz: How Are Transformations Performed Internally?
- Concept 15: Lesson Review
-
Lesson 03: Materials
Once you have your objects created, what affects how they actually look? How do we know your wooden table is actually made of wood? Materials and textures are the answer, and by the end of this lesson, you’ll know all about it!
- Concept 01: What Are Materials?
- Concept 02: Assigning Materials
- Concept 03: Quiz: What Are Materials in Unity?
- Concept 04: What Are Textures?
- Concept 05: Assigning Textures
- Concept 06: Quiz: Who Invented Texture Mapping?
- Concept 07: Creating Shaders
- Concept 08: Physically-Based Rendering
- Concept 09: Using Simple Shaders
- Concept 10: Models Recap
- Concept 11: Lesson Review
-
Lesson 04: Animations
Now that we have spent time looking at Materials and setting up a scene, we can now take a look at making things move. For that, we need to talk about Unity’s built-in animation system called Mecanim.
- Concept 01: Bringing Our Scenes to Life
- Concept 02: Making Your First Animation
- Concept 03: Quiz: Why Don't We Have to Keyframe Everything?
- Concept 04: Controlling Our Interpolation
- Concept 05: Creating Another Animation Clip
- Concept 06: Quiz: Animation vs Animator?
- Concept 07: Mecanim State Machine
- Concept 08: Animation Parameters
- Concept 09: Switch Between Animations
- Concept 10: Animations Conclusion
- Concept 11: Lesson Review
-
Lesson 05: Cameras
Cameras play a crucial role in allowing our users to see something on their display. In this lesson, we will break them down and by the end build our own simple VR Camera. We will also spend some time contrasting that with Google VR’s viewer and seeing what they do to make it better.
- Concept 01: The Beauty of Virtual Cameras
- Concept 02: Camera Clear Flags and Skyboxes
- Concept 03: Layers and the Culling Mask
- Concept 04: Quiz: Depth or No Depth? That Is the Question
- Concept 05: Final Camera Properties
- Concept 06: The Magic Behind VR
- Concept 07: Quiz: Measuring Our Lens Separation Distance (LSD)
- Concept 08: Building Our First VR Camera
- Concept 09: Implementing Head Rotation
- Concept 10: Now What Is Missing from Our VR Camera?
- Concept 11: Quiz: Which Sensors Are Used for Head Tracking?
- Concept 12: Implementing Google VR SDK for Unity
- Concept 13: Cameras Recap
- Concept 14: Lesson Review
-
Lesson 06: Lights
To make our scenes look really beautiful, we need to understand lighting. Lighting requires complex algorithm, but Unity enables us to use it in a way that is both beautiful but also performant.
- Concept 01: Introduction to Lights
- Concept 02: The Four Unity Lights
- Concept 03: Generic Light Properties
- Concept 04: Quiz: What Exactly Is Baking?
- Concept 05: How Can We Cheat?
- Concept 06: Lighting Modes
- Concept 07: Introducing the Lighting Panel
- Concept 08: Lighting from the Sky
- Concept 09: Global Illumination
- Concept 10: Mastering Baking
- Concept 11: Bringing It Home with Some Quality
- Concept 12: Lesson Review
-
Lesson 07: Build an Apartment
Build a new apartment scene with nice lighting and custom animation. Then, deploy it to your your Cardboard headset.
-
Part 04 : VR Software Development
Learn how to make your VR experience more dynamic and responsive to your users.
You will be exposed to C# programming and practice using it within the Unity interface.
Upon completing this course, you will have learned basic programming constructs such as methods, loops, variables, and events and how to apply them in a VR environment.
-
Module 01: VR Software Development
-
Lesson 01: Before You Get Started
In this lesson, you will find important course information such as how to download the associated course assets and which software versions to use.
-
Lesson 02: Creating Scripts
Get started with programming VR by writing your first scripts. In this lesson we start linking 3D models to source code. We’ll start small by moving cubes around and then work our way up to bigger, more elaborate interactions.
- Concept 01: What We Are Going to Build
- Concept 02: Major Elements of a Script
- Concept 03: Quiz: What Are Methods?
- Concept 04: Animating Objects Using Scripts
- Concept 05: Quiz: What Does Translate() Do?
- Concept 06: Smooth Animation Over Time
- Concept 07: Quiz: What Is Time.deltaTime?
- Concept 08: If Statements
- Concept 09: Lesson Review
-
Lesson 03: Controlling Objects Using Code
Now that you’ve made some code, we’ll explore the Unity documentation system. This is essential for discovering the commands available to you. Then, we’ll learn several more ways to control objects with code, including creating brand new objects.
- Concept 01: The Importance of Documentation
- Concept 02: Navigating the Documentation
- Concept 03: Quiz: UnityEngine vs UnityEditor
- Concept 04: Creating References
- Concept 05: Quiz: What Are References?
- Concept 06: Creating Objects Using References
- Concept 07: Quiz: What Are Quaternions?
- Concept 08: For Loops
- Concept 09: Quiz: Identify the Correct For Loop
- Concept 10: Prefabs
- Concept 11: Quiz: What Are Prefabs?
- Concept 12: Controlling Components Using Code
- Concept 13: Lesson Review
-
Lesson 04: VR Interaction
In this lesson, we take a look at the programming paradigms used in Unity’s new GUI system. This lets you make 3D buttons that float in space and react to your gaze. It’s really powerful. By the time you finish this lesson, you’ll have built a 3D button that takes you on vacation.
- Concept 01: Introduction
- Concept 02: Basic UI in Unity
- Concept 03: Quiz: Increasing Font Sharpness
- Concept 04: Event System and Inputs
- Concept 05: Methods and Debugging
- Concept 06: Quiz: Identify the Method
- Concept 07: Changing Scene via Script
- Concept 08: The Power of Variables
- Concept 09: Conclusion
- Concept 10: Lesson Review
-
Lesson 05: Programming Animations
Back in the VR Scenes & Objects course, we used the Animator and a pre-made script to control our animations. Now that we have a basic understanding of scripting let’s use code to create animations.
- Concept 01: Revisiting Animations
- Concept 02: Scripting a Simple Rotation
- Concept 03: Quiz: What Is Lerp vs Slerp?
- Concept 04: Scripting Slerp
- Concept 05: What Are Variables?
- Concept 06: Quiz: What Are Valid Variable Types?
- Concept 07: Scripting with Unity's Animator
- Concept 08: Wrapping Up
- Concept 09: Lesson Review
-
Lesson 06: Physics & Audio
In this lesson, we’ll make code that responds to events from the Unity physics system. We’ll dive deeper in how collisions work and how to interact with them. Lastly, we’ll look at immersive audio programming.
- Concept 01: What Have We Not Used in Unity?
- Concept 02: Unity Physics
- Concept 03: Quiz: Why Use Physics in VR?
- Concept 04: Playing with Rays
- Concept 05: Quiz: Adding an Open Chest Animation
- Concept 06: Using Audio in VR
- Concept 07: What Is an Array?
- Concept 08: Creating an Array
- Concept 09: Picking a Song
- Concept 10: Wrapping Up
- Concept 11: Lesson Review
-
Lesson 07: Advanced VR Scripting
For our final lesson in this course, we’ll examine some larger scripts. First, we’ll tease out the elements of a flocking algorithm written in C#. Then, we’ll break down how to control an ocean shader written in HLSL.
-
Lesson 08: A Maze
Built a VR application using Unity and the Google VR SDK where the user explores a maze environment to demonstrate working knowledge of 2D and 3D UI, waypoint based navigation, procedural animation, interactive objects, spatial audio, particle effects and persistent storage of session data.
-
Part 05 : VR Design
Learn the fundamentals of VR design including ergonomics, user testing, interface design, and more.
This course focuses heavily on testing, iteration, and documentation - the 'secret sauce' which has the power to make any VR project great.
By the end of this course, you will have a solid foundation and be able to approach any VR design task.
-
Module 01: VR Design
-
Lesson 01: Intro to VR Design
In this lesson, we'll be introducing some of the basics of VR design.
-
Lesson 02: Design Foundations, Ergonomics, and the Puzzler Project
In this lesson, we'll be setting up a solid design foundation for our course project. We'll also be learning about some ergonomic considerations for VR. Lastly, we'll be trying our hand at sketching to draft our experience.
- Concept 01: Intro
- Concept 02: It's All About the People
- Concept 03: Who Will Be Using Your Puzzler Project?
- Concept 04: Personas
- Concept 05: Quiz: Create a Persona for Puzzler
- Concept 06: Building a Foundation: Statement of Purpose
- Concept 07: Which statement of purpose is best?
- Concept 08: Ergonomics for VR
- Concept 09: Viewing Angles
- Concept 10: Which Zone Would You Use for a Back Button?
- Concept 11: Distance
- Concept 12: Where Do You Think the Personal Bubble in VR Starts?
- Concept 13: Text
- Concept 14: What Makes Displaying Text in VR so Difficult?
- Concept 15: Movement
- Concept 16: Starting Low-Fi with Sketches
- Concept 17: Quiz: Sketch
- Concept 18: Wrapping Up
- Concept 19: Lesson Review
-
Lesson 03: Setting the Scene and Your First User Test
In this lesson, you'll learn about scale and scene setting. You will also be creating the environment for your puzzle experience, and putting it in front of other people to iterate and improve on it.
- Concept 01: Intro
- Concept 02: Why Is Scale so Important?
- Concept 03: Establishing Scale
- Concept 04: Building the Scene
- Concept 05: Placing Our Game Orbs
- Concept 06: Scene Setting, Mood, and Lighting
- Concept 07: Have You Saved Screenshots of Your Scene?
- Concept 08: Intro to User Testing
- Concept 09: Asking Questions
- Concept 10: Getting User Testing Information
- Concept 11: Your First Test!
- Concept 12: Do You Have Your User Testing Notes and Pictures Saved?
- Concept 13: Interpreting Feedback, and Using It to Iterate
- Concept 14: Write Your Findings from Your User Testing
- Concept 15: Wrapup and Documentation
- Concept 16: Lesson Review
-
Lesson 04: Graphical User Interfaces
In this lesson we'll be going over some of the basics of creating a graphical user interface for our experience as well as learning about feedback.
- Concept 01: Intro
- Concept 02: Sketching
- Concept 03: Sketching - You Try!
- Concept 04: Creating Graphical User Interfaces in Unity
- Concept 05: Hooking It Up!
- Concept 06: Feedback and Feedforward
- Concept 07: User Testing Your Interface
- Concept 08: User Test!
- Concept 09: Responding to UI Feedback
- Concept 10: Document
- Concept 11: Lesson Review
-
Lesson 05: Movement Mechanics
In this lesson, you will be doing a dive into motion mechanics for mobile VR. You will also be learning about simulator sickness, its causes, and how to design around it.
- Concept 01: Intro
- Concept 02: What Is Simulator Sickness?
- Concept 03: If You Get Simulator Sickness You Should...
- Concept 04: Simulator Sickness and You
- Concept 05: A Deeper Dive into Simulator Sickness from Oculus
- Concept 06: Which of the Following Are Causes of Simulator Sickness?
- Concept 07: Mobile VR Has Movement Limitations
- Concept 08: Let's Explore Some Mobile Movement Mechanics
- Concept 09: Which Movement Mechanic Is Best?
- Concept 10: Let's Get Ready to Move
- Concept 11: Let's Get Moving!
- Concept 12: Special Considerations When User Testing Movement
- Concept 13: User Testing Movement
- Concept 14: Conduct Your Test
- Concept 15: Iterate, Implement, and Document
- Concept 16: Closing Out
- Concept 17: Lesson Review
-
Lesson 06: Audio Goodness, Game Mechanics, and Feedback
In this lesson, you will be adding audio and game mechanics to the puzzler project, as well as learning about how to use feedback to your advantage.
- Concept 01: Intro
- Concept 02: Setting the Mood with Audio
- Concept 03: What Is Spatial Audio?
- Concept 04: Implementing Audio
- Concept 05: Implementing the Game Mechanic
- Concept 06: Audio and Visual Feedback
- Concept 07: A Little More Feedback!
- Concept 08: Final User Test and Iteration
- Concept 09: Closing out
- Concept 10: Lesson Review
-
Lesson 07: Presenting the Work
In this lesson, you will create an online writeup of your puzzler project complete with process documentation and media of your final work. This writeup will be graded as your course project.
- Concept 01: The Importance of Documentation
- Concept 02: Who Is Your Audience?
- Concept 03: Write Three Goals
- Concept 04: Creating a High-Level Outline
- Concept 05: Creating Final Documentation Media
- Concept 06: Have You Created All Your Finished Product Documentation?
- Concept 07: Using Your Outline to Write
- Concept 08: Have You Completed Your First Draft?
- Concept 09: Get Your Draft Reviewed
- Concept 10: What Was the Biggest Change After Review?
- Concept 11: Posting online
- Concept 12: Make It Live!
- Concept 13: Thanks for Taking the Course - Now Repeat!
- Concept 14: Lesson Review
-
Lesson 08: VR Design Review
We've learned a lot in this portion of the course. Let's review our new VR design skills.
-
Lesson 09: Puzzler
There isn't a lot of preparation to do here other than double checking that your writeup has been created to your satisfaction!
-
Part 06 : VR Platforms & Applications
Develop an understanding of what is happening in the VR industry and why it is so exciting to many people.
This will allow you to choose what hardware and platform you are interested in developing for when moving into the Specializations part of the Nanodegree.
By the end of this course, you will have a solid understanding of the impact potential of VR and be equipped to research any area of VR that interest you.
-
Module 01: VR Platforms & Applications
-
Lesson 01: Platforms & Specializations
This lesson, we will go over some of the many VR headsets in the industry and get the conversation started on which concentration you want to do moving forward with the Nanodegree.
- Concept 01: Where Are We Headed?
- Concept 02: What Are Your Favorite VR Experiences?
- Concept 03: High End Mobile VR - The GearVR
- Concept 04: Come Aboard the 360 Media Train!
- Concept 05: High End Mobile VR - Daydream VR
- Concept 06: Why Learn Cardboard?
- Concept 07: High Immersion VR
- Concept 08: Which Platform Is Right for YOU?
-
Lesson 02: The Horizon
In this lesson, we look towards the future and see what can affect your current or future VR projects.
- Concept 01: Let’s Take a Look At the Forecast
- Concept 02: The Current State of AR
- Concept 03: The AR Headsets of the Future
- Concept 04: Experimenting with FOV
- Concept 05: Lightfield Technologies
- Concept 06: Foveated Rendering
- Concept 07: Haptics
- Concept 08: How Does the Future Affect Our Case Study?
-
Lesson 03: Major Industries
To wrap up this course, we look at the major industries that VR will impact to give you a taste of what areas of VR you can contribute to.
-
Lesson 04: Night at the Museum
You will be doing research on a VR company/technology, or an industry that could be impacted by VR. After conducting your research, you will be creating a mobile virtual reality experience with 'information booths' which include both visual and audio feedback for users. These booths should showcase your findings - the goal here is to inform other people about the topic at hand in a fun and creative way through a series of (at least five) display points. Users should be able to travel back and forth between display areas inside the space. This is not a VR slideshow, it is a VR space which contains the information about your research. Some potential outputs of this project are creating a scene in a museum, science fair, or gallery-like space which showcases your findings.
-
Part 07 : Choose Your Specialization
Time to transform from VR generalist to in-demand specialist!
Choose where you want to hone your VR developer skills. You can either develop a skill set in mobile performance and 360 media or learn about high immersion on the Unity platform:
- PART 8: Mobile Performance & 360 Media Specializations
- PART 9: High-Immersion Unity Specializations
Once you have completed one of the Specializations, you can proceed to the final part:
- PART 10: Capstone
-
Module 01: Choose Your Specialization
-
Lesson 01: Choose Your Specialization
Choose where you want to hone your VR developer skills. You can either develop a skill set in mobile performance and 360 media or learn about high immersion on the Unity platform.
-
Part 08 : Mobile Performance & 360 Media Specialization
In Mobile Performance, you will learn the tips and tricks necessary to squeeze the most amount of performance out of your VR application.
This section will cover everything from simply checking some setting in Unity to more complex optimizations in the graphics pipeline of your device.
In 360 Media, you will learn all of the post-production aspects of 360 media. How to stitch your footage together, edit both video and audio, stylize your footage, and add in VR titles.
Finally, the course will wrap up with interactivity and how to use Unity to add compelling interactions, effects, and controls to your 360 videos.
-
Module 01: Mobile Performance
-
Lesson 01: Why Is Performance so Important?
In this lesson, you will learn how to fight the crime of low-performing VR apps. You will be equipped with the tools you need to locate clues that lead to low framerate and poor user experience.
- Concept 01: Downloads
- Concept 02: Intro
- Concept 03: Why Is Poor Performance Such an Issue?
- Concept 04: Reflection on Poor Performance
- Concept 05: The FPS Display - Your first crime solving tool
- Concept 06: The Ideal FPS for Mobile VR
- Concept 07: Headroom and Horsepower
- Concept 08: Power Management
- Concept 09: Which App Do You Think Consumes More Power and Why?
- Concept 10: Heat Management
- Concept 11: In Closing
-
Lesson 02: Graphics Pipeline
This lesson is designed to help teach you about how the actual hardware in your mobile device runs the VR apps you create. What is a GPU and what does it do? What is a CPU and what does it do?
- Concept 01: Intro
- Concept 02: Hardware?
- Concept 03: Describe the Difference Between the CPU and the GPU
- Concept 04: Framing the Problem
- Concept 05: What Is a Draw Call?
- Concept 06: FPS, Device Performance, and Geometry
- Concept 07: Editor vs Mobile
- Concept 08: SetPass Calls
- Concept 09: Draw Call vs SetPass Call
- Concept 10: In Closing
-
Lesson 03: The Profiler
In this lesson, you will be introduced to your partner in the fight against low performance - the profiler!
- Concept 01: Intro
- Concept 02: Gumshoe, Meet Profiler
- Concept 03: How to Communicate with Your Sidekick
- Concept 04: Profiler Optimization
- Concept 05: Digging into Problems with the Profiler
- Concept 06: Remote Profiling - Your Friend in the Field
- Concept 07: Remote Profiling Scenario
- Concept 08: Now Go Forth and SOLVE CRIME
-
Lesson 04: Script Performance
In this lesson, we will be going over a handful of common scripting issues which can lead to poor performance.
- Concept 01: Intro
- Concept 02: Lay of the Land
- Concept 03: Issues in Scripts
- Concept 04: Loops
- Concept 05: Infinite Loops
- Concept 06: Referencing Objects
- Concept 07: GameObject.Find
- Concept 08: Physics and FixedUpdate
- Concept 09: Update vs FixedUpdate
- Concept 10: Method to the Madness
- Concept 11: In Closing
-
Lesson 05: Optimizations
In this lesson, we will be learning about the optimization details around object pooling, shaders, physics, art/model complexity, lighting, and audio.
-
-
Module 02: Suggested Electives
-
Lesson 01: Suggested Electives
Explore the concept of immersive media and learn how to plan a 360 video shoot, write scripts, develop storyboards, and what cameras, microphones, and lighting to choose.
-
-
Module 03: 360 Media Production
-
Lesson 01: Spatial Audio with Dysonics
- Concept 01: Meet the CTO of Dysonics
- Concept 02: Recording Process
- Concept 03: Platforms
- Concept 04: Ambisonics
- Concept 05: Motion Tracked Binaural
- Concept 06: Digital Audio Workstation
- Concept 07: Head-Related Transfer Functions
- Concept 08: Individual Difference in Spatialized Audio
- Concept 09: How to Get Started
-
Lesson 02: Stitching
Learn the basics of 360 video stitching using Autopano Video Pro. Learn about blending, weighting, synchronization and stabilization as you stitch your footage together.
- Concept 01: Introduction
- Concept 02: The Post-Production Pipeline
- Concept 03: Why should you clap?
- Concept 04: Getting Started with Autopano Video
- Concept 05: Synchronizing Your Footage
- Concept 06: Stitching Your Footage
- Concept 07: Stab?!?
- Concept 08: Color Harmonization
- Concept 09: Equirectangular what?
- Concept 10: Blending
- Concept 11: Render
- Concept 12: Metadata
- Concept 13: Stitching Conclusion
-
Lesson 03: Advanced Stitching
In this lesson, you will learn how to use Autopano Giga to edit and refine stitching using control points and masks, and gain a deeper understanding of how blending works, and which type is appropriate for each situation.
- Concept 01: Giga Powered
- Concept 02: Getting Started with Autopano Giga
- Concept 03: Am I Projecting?
- Concept 04: Control Issues
- Concept 05: Who is that masked man?
- Concept 06: If it wasn't for those meddling kids!
- Concept 07: Color with a K?
- Concept 08: A little Vignette
- Concept 09: Level with me
- Concept 10: Just light the fuse already
- Concept 11: Home on the Dynamic Range
- Concept 12: Throw it all in the blender
-
Lesson 04: Editing Basics
In this lesson you will learn the basics of using Adobe Premiere to edit 360 film, as well as learning about the kind of transitions you can use with 360 video.
-
Lesson 05: Advanced Editing
Adobe Premiere gives you lots of options for improving 360 video footage. In this lesson, you'll learn how to color-correct 360 footage, add titles, and add points of interest using GoPro's plugin.
- Concept 01: Introduction
- Concept 02: How to control color when shooting
- Concept 03: Post Processing
- Concept 04: Hue, Saturation & Luminosity
- Concept 05: Hue Are You?
- Concept 06: Color Correction
- Concept 07: Transitions over time
- Concept 08: Contrast and Saturation
- Concept 09: Color Wrap up
- Concept 10: Advanced Editing Conclusion
-
Lesson 06: Spatial Audio
Spatialized audio is critical to immersive media. Learn how to cut spatialized audio, place sound in 3D space using Google audio spatializer, and industry best-practices from the CTO of Dysonics.
-
Lesson 07: Interactivity with Unity
In this lesson, you'll learn how to create an interactive 360 experience using Unity's video player. You'll create player controls and branching storylines using a custom 360 video player.
- Concept 01: Introduction
- Concept 02: Interactive thoughts
- Concept 03: Adding Video to Unity
- Concept 04: Inside Out
- Concept 05: Flip those normals!
- Concept 06: Put it all together
- Concept 07: Control Freak
- Concept 08: Make Better Controls
- Concept 09: Audio and Particles
- Concept 10: Branching Stories
- Concept 11: All done!
-
Lesson 08: The Storyteller's Revenge
In this project, stitch together you own footage (or footage provided). Then, correct the color and edit the raw footage it into a story. Finally, build a custom 360 video player in Unity to share!
-
Part 09 : High Immersion Unity Specialization
Learn the fundamentals of developing for the Vive and Rift, and their 6 degrees of freedom hand controllers.
First, you will learn about the benefits and constraints of these headsets, and explore design concepts with these strengths and weaknesses in mind.
Then you will learn how to use SteamVR to give your user locomotion, hand physics, and menu systems, and how to accomplish this functionality with the Oculus SDK and cross-platform development.
Finally, you will learn how to maximize your performance for desktop VR apps, and gain an overview of possible distribution channels.
-
Module 01: High Immersion
-
Lesson 01: Desktop VR Benefits & Constraints
Learn the benefits and constraints of the Vive and Oculus Rift, learn the different “modes” of high immersion development, and study design techniques of existing VR experiences.
-
Lesson 02: High-Immersion Engineering
Learn everything you'll need to start developing with the Rift and Vive. Learn how to import SteamVR and use it for input handling, create several locomotion mechanics, create hand interaction via grabbing and throwing of objects, and create a swipeable object spawning menu.
- Concept 01: Intro
- Concept 02: Setting up SteamVR
- Concept 03: Using the SteamVR SDK
- Concept 04: Why use SteamVR?
- Concept 05: Input Handling + Teleportation
- Concept 06: Input Handling Quiz
- Concept 07: Dash and Artificial Walking
- Concept 08: Motion Sickness Review
- Concept 09: Grabbing and Throwing
- Concept 10: Hand Physics and Colliders
- Concept 11: Menu Systems and Input Axis I
- Concept 12: Menu Systems and Input Axis II
- Concept 13: Menu Types Quiz
- Concept 14: SteamVR Level Loading
- Concept 15: Conclusion
-
Lesson 03: Cross-Platform Development
Now that you've implemented the core mechanics of VR it’s time to get them working across multiple platforms. In this lesson you'll learn how to use the Oculus SDK, translate our SteamVR functionality to use the Oculus SDK, and learn how to manage two separate SDKs in one project for a cross-platform VR experience.
-
Lesson 04: Rube Goldberg Game
Create your first High Immersion VR game! In this project you'll apply everything you've learned so far in this course to create a Rube Goldberg Challenge game.
-
-
Module 02: Performance & Publishing
-
Lesson 01: Desktop VR Optimization
In this lesson you'll learn Unity's most common performance bottlenecks, as well as how to identify and fix them with Unity's performance tools.
- Concept 01: Intro
- Concept 02: Downloads
- Concept 03: Unity’s 3 Main Performance Tools
- Concept 04: Common Performance Bottlenecks: Draw Calls
- Concept 05: Draw Calls
- Concept 06: Common Performance Bottlenecks: Batching
- Concept 07: Common Performance Bottlenecks: Geometry
- Concept 08: 3D Art Meshes
- Concept 09: Common Performance Bottlenecks: Overdraw
- Concept 10: Common Performance Bottlenecks: Physics
- Concept 11: Create a Physics test scene
- Concept 12: Code Optimization
- Concept 13: Garbage Collector Optimization
- Concept 14: Fast Code
- Concept 15: Identifying Performance Issues 1
- Concept 16: Identifying Performance Issues 2
- Concept 17: Diagnosing Performance
- Concept 18: Advanced Performance Tools
- Concept 19: Built-in Performance Buffers
-
Lesson 02: Advanced Lighting
Dive deeper into Unity's lighting system, with a focus on performance for VR. You'll learn the pros and cons of Forward vs Deferred Rendering, balance real time and baked lighting for optimal performance, play with shadow settings, and learn lightprobes.
-
Lesson 03: Publishing for Desktop VR
Learn how to host your app on Steam, Viveport, and the Oculus Store, then overview some possible marketing and funding channels for your VR app.
-
Lesson 04: Performance Bounceback
Take all your newly learned optimization skills and apply them to making an VR game performant.
-
Part 10 : Capstone
For the final part of the VR Developer Nanodegree, your challenge is to earn points by completing a series of VR achievements.
You can create any VR experience that targets hardware related to your Specialization, but you must complete a specific combination of achievements.
You will have a wide range of achievements to choose from, such as, for example, App Store achievement, Speech Recognition achievement, Mixed Reality Video achievement, etc. Each achievement wins you points, and you need to earn a certain amount of points for your project to meet specifications.
This is your chance to put all your VR skills to the test in a final challenge!
-
Module 01: Capstone
-
Lesson 01: Capstone
Create any VR project of your choosing that targets hardware related to your Specialization. This is your chance to put all your VR skills to the test in a final challenge.
-
Part 11 (Elective): 360 Media Pre-Production
This course is designed to teach you everything you need to know to get started shooting your own 360 immersive films. You will learn about ways to direct attention in 360, and problems to avoid by analyzing some of the best 360 content out there. You will learn to write scripts for 360, and then how to break down those scripts into storyboards.
In the second half of the course, you will learn the right way to approach planning a 360 film shoot, how 360 cameras work, and which one is the best fit for your project and your budget. You will learn all about different microphones and audio capture options for 360, and how to put all of these elements together with fantastic lighting to shoot a great 360 video.
-
Module 01: 360 Media Pre-Production
-
Lesson 01: Introduction to Immersive Media
In this lesson, the concept of immersive media will be introduced and explored, including showing the basic workflow of creating 360 Media, and discussing metadata.
-
Lesson 02: Developing a Critical Eye
In this lesson, you will look at a variety of existing 360 video content, and learn how to analyze footage for the various techniques, tips and tricks other film makers may use to direct attention or tell a story in 360.
- Concept 01: Learning from other people
- Concept 02: How do you view Film?
- Concept 03: Cuts and Color
- Concept 04: How does Pearl make their cuts comfortable?
- Concept 05: Thinking inside the frame
- Concept 06: Through whose eyes?
- Concept 07: Animation
- Concept 08: Evolutionary Adaptations
- Concept 09: Social Cues
- Concept 10: Cameras are people too!
- Concept 11: To Cut or not To Cut?
- Concept 12: A Stitch Line in Time
- Concept 13: Rain or Shine?
- Concept 14: Wrap Up
- Concept 15: [Camera] Architecture
-
Lesson 03: Scripting and Planning
Students will learn how to script for 360 content, and how to plan a 360 shoot, as well as adjust their scripts to equipment and budget.
- Concept 01: Plan to Fail if you Fail to Plan!
- Concept 02: VR Scripts
- Concept 03: Start Creating your Story
- Concept 04: Thinking about Lighting
- Concept 05: Low Budget Leaders
- Concept 06: Location Location LOCATION!
- Concept 07: Where?
- Concept 08: Logistics
- Concept 09: Next Up
- Concept 10: What if you can't plan?
- Concept 11: Last thoughts
- Concept 12: [Camera] Location Scouting
-
Lesson 04: 360 Storyboarding
In this lesson, a variety of different methods for storyboarding in 360 is covered, including using pencil and paper, a 360 camera, Unity, or VR tools like Tiltbrush.
- Concept 01: Why Storyboard?
- Concept 02: Pencil and Paper
- Concept 03: Pencils at the ready!
- Concept 04: Cardboard Camera
- Concept 05: Storyboarding Two Ways
- Concept 06: Unity!
- Concept 07: Another Storyboard
- Concept 08: VR Storyboards
- Concept 09: Tips and Tricks
- Concept 10: Applying Storyboarding to games and apps
- Concept 11: [Camera] 360 storyboard
-
Lesson 05: 360 Cameras
This lesson is an exploration of existing 360 cameras, a discussion about stereoscopy, and how to place cameras appropriately for 360 imaging.
-
Lesson 06: Microphones and Lighting
This lesson is a comprehensive exploration of different equipment and techniques to be used for audio capture and lighting techniques for 360 video.
- Concept 01: Introduction to Audio
- Concept 02: Ambisonic Sound
- Concept 03: Ambisonics
- Concept 04: Capturing Audio
- Concept 05: Microphone Arrays
- Concept 06: What Now?
- Concept 07: Ambisonic B Format
- Concept 08: Lighting
- Concept 09: Practical Lighting
- Concept 10: ND Filter
- Concept 11: Shooting Outdoors
- Concept 12: Fake it Til you Make it!
- Concept 13: Lighting Wrap Up
- Concept 14: Wrap Up
- Concept 15: [Camera] Playing with Perception
-
Part 12 (Career): Career: Networking
Networking is a very important component to a successful job search. In the following lesson, you will learn how tell your unique story to recruiters in a succinct and professional but relatable way.
-
Module 01: Develop Your Personal Brand
-
Lesson 01: Develop Your Personal Brand
In this lesson, learn how to tell your unique story in a succinct and professional way. Communicate to employers that you know how to solve problems, overcome challenges, and achieve results.
-
Lesson 02: LinkedIn Review
Optimize your LinkedIn profile to show up in recruiter searches, build your network, and attract employers. Learn to read your LinkedIn profile through the lens of a recruiter or hiring manager.
-
Lesson 03: Udacity Professional Profile
Update and personalize your Udacity Professional Profile as you complete your Nanodegree program, and make your Profile visible to Udacity hiring partners when you’re ready to start your job search.
-
Lesson 04: VR Portfolio Review
In the VR world, having a portfolio website is essentially to getting noticed and earning credibility as a VR developer. Whether you use a website-building platform or code yours from scratch, this lesson and project can help you refine your portfolio for VR jobs.
-
-
Module 02: GitHub Profile Review
-
Lesson 01: GitHub Review
Review how your GitHub profile, projects, and code represent you as a potential job candidate. Learn to assess your GitHub profile through the eyes of a recruiter or hiring manager.
- Concept 01: Introduction
- Concept 02: GitHub profile important items
- Concept 03: Good GitHub repository
- Concept 04: Interview with Art - Part 1
- Concept 05: Identify fixes for example “bad” profile
- Concept 06: Quick Fixes #1
- Concept 07: Quick Fixes #2
- Concept 08: Writing READMEs with Walter
- Concept 09: Interview with Art - Part 2
- Concept 10: Commit messages best practices
- Concept 11: Reflect on your commit messages
- Concept 12: Participating in open source projects
- Concept 13: Interview with Art - Part 3
- Concept 14: Participating in open source projects 2
- Concept 15: Starring interesting repositories
- Concept 16: Outro
- Concept 17: Resources in Your Career Portal
-
Part 13 (Career): Career: Job Search Strategies
Opportunity can come when you least expect it, so when your dream job comes along, you want to be ready.
-
Module 01: Conduct a Job Search
-
Lesson 01: Conduct a Job Search
Learn how to search for jobs effectively through industry research, and targeting your application to a specific role.
-
-
Module 02: Refine Your Resume
-
Lesson 01: Refine Your Entry-Level Resume
Receive a personalized review of your resume. This resume review is best suited for applicants who have 0-3 years of work experience in any industry.
-
Lesson 02: Refine Your Career Change Resume
Receive a personalized review of your resume. This resume review is best suited for applicants who have 3+ years of work experience in an unrelated field.
-
Lesson 03: Refine Your Prior Industry Experience Resume
Receive a personalized review of your resume. This resume review is best suited for applicants who have 3+ years of work experience in a related field.
Project Description - Resume Review Project (Prior Industry Experience)
Project Rubric - Resume Review Project (Prior Industry Experience)
- Concept 01: Convey Your Skills Concisely
- Concept 02: Effective Resume Components
- Concept 03: Resume Structure
- Concept 04: Describe Your Work Experiences
- Concept 05: Resume Reflection
- Concept 06: Resume Review
- Concept 07: Resume Review (Prior Industry Experience)
- Concept 08: Resources in Your Career Portal
-
-
Module 03: Write an Effective Cover Letter
-
Lesson 01: Craft Your Cover Letter
Get a personalized review of your cover letter. A successful cover letter will convey your enthusiasm, specific technical qualifications, and communication skills applicable to the position.
-
Part 14 (Career): Career: VR Interview Practice
This lesson introduces you to common types of questions you’ll encounter during an in-person interview. Develop a healthier, more confident mindset around your qualifications as a candidate, and learn how you can best represent your unique skills, knowledge, and interests--even if you don’t know the answer to every question.
-
Module 01: Interview Practice (VR)
-
Lesson 01: Ace Your Interview
Learn strategies to prepare yourself for an interview.
-
Lesson 02: Practice Behavioral Questions
Practice answering behavioral questions and evaluate sample responses.
- Concept 01: Introduction
- Concept 02: Self-Practice: Behavioral Questions
- Concept 03: Analyzing Behavioral Answers
- Concept 04: Time When You Showed Initiative?
- Concept 05: What Motivates You at the Workplace?
- Concept 06: A Problem and How You Dealt With It?
- Concept 07: What Do You Know About the Company?
- Concept 08: Time When You Dealt With Failure?
-
Lesson 03: Interview Fails
Some real-life examples of interviews that didn't go as expected - it happens all the time!
-
Lesson 04: Land a Job Offer
You've practiced a lot for the interview by now. Continue practicing, and you'll ace the interview!
-
Lesson 05: Interview Practice
Watch a sample interview for a VR Developer position and analyze the candidate's responses.
- Concept 01: VR Interview
- Concept 02: Mindset and Skills
- Concept 03: Q1: Experience
- Concept 04: Q2: 3D Graphics
- Concept 05: Q3: Computer Science Fundamentals and Programming
- Concept 06: Q4: Proficiency with a Game Engine
- Concept 07: Q5: Collaboration with Artists & Designers
- Concept 08: Q6: Software Engineering
- Concept 09: Conclusion
- Concept 10: Resources in Your Career Portal
-