---
title: "Lab 1 - VR Personal Project Basics"
content_type: tutorial
url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/tutorial/lab-1-vr-personal-project-basics-3?language=en"
language: en
container_type: pathway
container_title: "VR Development"
container_url: "https://learn.unity.com/pathway/vr-development.md?language=en"
unit_title: "VR Basics"
unit_url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics?language=en"
standalone_markdown_url: "https://learn.unity.com/tutorial/lab-1-vr-personal-project-basics-3.md?language=en"
previous_title: "The VR software landscape"
previous_url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/tutorial/the-vr-software-landscape-1?language=en"
previous_markdown_url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/tutorial/the-vr-software-landscape-1.md?language=en"
next_title: "Mission 1 Quiz 1 - VR Basics"
next_url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/quiz/mission-1-quiz-vr-basics?language=en"
next_markdown_url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/quiz/mission-1-quiz-vr-basics.md?language=en"
difficulty: beginner
duration_minutes: 130
unity_version:
  - "2021.3"
  - "2022.3"
  - "6.0"
  - "6.1"
  - "6.2"
  - "6.3"
supported_unity_versions:
  - name: "2021.3"
    url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/tutorial/lab-1-vr-personal-project-basics-3.md?language=en&version=2021.3"
  - name: "2022.3"
    url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/tutorial/lab-1-vr-personal-project-basics-3.md?language=en&version=2022.3"
  - name: "6.0"
    url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/tutorial/lab-1-vr-personal-project-basics-3.md?language=en&version=6.0"
  - name: "6.1"
    url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/tutorial/lab-1-vr-personal-project-basics-3.md?language=en&version=6.1"
  - name: "6.2"
    url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/tutorial/lab-1-vr-personal-project-basics-3.md?language=en&version=6.2"
  - name: "6.3"
    url: "https://learn.unity.com/pathway/vr-development/unit/vr-basics/tutorial/lab-1-vr-personal-project-basics-3.md?language=en&version=6.3"
last_updated: "2026-08-04T14:22:50.000Z"
---

# Lab 1 - VR Personal Project Basics

Plan your VR concept in a design document and build a basic VR scene using primitives, locomotion, grabbable objects, and sockets.

In this first lab, you'll fill out a design document to lay out your concept, and then set up a basic VR scene using simple primitive shapes.

This lab will draw on skills learned in the following lessons:

- [VR Project Setup](https://learn.unity.com/tutorial/vr-project-setup)
- [VR locomotion](https://learn.unity.com/tutorial/vr-locomotion)
- [Grabbable objects](https://learn.unity.com/tutorial/grabbable-objects)
- [Sockets](https://learn.unity.com/tutorial/sockets-g)

This lab is part of the [Create with VR course](https://learn.unity.com/course/create-with-vr).

Overview: [Video](https://storage.googleapis.com/learn-platform-bucket-production/tutorial/6e5577b7-ac06-424c-98f1-6c8b42f32cb1/versions%5B_key==%22e3d1d78e6cc9%22%5D.overviewVideo/befe6123-47e2-4b59-9073-9826ddb89070_1_6_lab_1__0_intro_v3_20260714_221633.mp4) ([Transcript (en)](https://storage.googleapis.com/learn-platform-bucket-production/tutorial/6e5577b7-ac06-424c-98f1-6c8b42f32cb1/versions%5B_key==%22e3d1d78e6cc9%22%5D.subtitles/lab_1_0_intro_v3_20260714_223624.srt))

## Materials

- [Project Design Doc - VR [WORD].docx](<https://unity-connect-prd.storage.googleapis.com/20210212/c8a63efb-f45e-4b3c-bfad-c42f351d2dfc/Project Design Doc - VR [WORD].docx>)
- [Project Design Doc - VR [PDF].pdf](<https://unity-connect-prd.storage.googleapis.com/20210212/00cd91a4-a6aa-4c93-abaa-004949d72618/Project Design Doc - VR [PDF].pdf>)
- [Project Design Doc - VR [GDOC]](https://docs.google.com/document/d/18zUYaiwvXaOpKAUaUxqwVbzzO1qCrkLt2goQDZsEjnE/copy)

## 1. Fill out your design document

Before you get working on your project, you need a plan for what you’re actually going to create. The best way to do that is with a Design Document.

[Video](https://connect-mediagw.unity.com/h1/20220608/videos/504550d8-8658-4fad-a5ff-1b42373f7a8e_1_6_lab_1_1_v2.mp4) ([Transcript (en)](https://connect-mediagw.unity.com/h1/20220608/490619d8-233d-4751-be13-5c97c4a9cb21_lab_1_1_v2.vtt))

**1.  Get a blank copy of the VR Project design document:**

- Click[ here to create a copy of a Google Doc](https://docs.google.com/document/d/18zUYaiwvXaOpKAUaUxqwVbzzO1qCrkLt2goQDZsEjnE/copy)
- Click[ here to download as a Word document](https://connect-prd-cdn.unity.com/20210212/c8a63efb-f45e-4b3c-bfad-c42f351d2dfc/Project%20Design%20Doc%20-%20VR%20[WORD].docx?_ga=2.111809031.209333272.1612709644-59568313.1601905412)
- Click[ here to download as a PDF](https://connect-prd-cdn.unity.com/20210212/00cd91a4-a6aa-4c93-abaa-004949d72618/Project%20Design%20Doc%20-%20VR%20[PDF].pdf?_ga=2.111809031.209333272.1612709644-59568313.1601905412)

**2.  Fill out Section 1 (App Info) of the document:**

- Give your app a tentative title.
- Place a checkmark (using copy and paste) next to the one or two categories that best describe your app.

**3.  Fill out Section 2 (Pitch) of the document:**

- Describe the goal of the app.
- Describe why it will be especially effective in VR.
- Describe what users will do during the app, at a high level.
- Specify whether your app will target devices with 3 or 6 degrees of freedom.

**4.  Fill out Section 3 (Basics) of the document:**

- Describe where the app will take place and how users will get around the environment.
- List the types of GameObjects users will be able to grab and any socket interactors you will likely use.

You should now have the first three sections of your design document complete, providing enough direction to complete the rest of this lab.

## 2. Open and run a new VR project

Just like you did at the start of the VR Room project, the first thing you have to do for your personal projects is create a new Unity project configured for VR.

[Video](https://connect-mediagw.unity.com/h1/20220609/videos/80e4d7d4-1c48-4fbd-a236-49bd5c9947ed_1_6_lab_1_2_v2_edited.mp4) ([Transcript (en)](https://connect-mediagw.unity.com/h1/20220628/eb6e73ba-0624-479f-9137-7d6fb3c327da_1_6_lab_1_2_v3_2021.CF.vtt))

**1.  Create a new Unity project for your personal project:**

- Follow the instructions in the[ **VR Project Setup** tutorial](https://learn.unity.com/tutorial/1-1-vr-project-setup).
- Move the extracted folder to the same directory as your VR Room project.
- Instead of naming your project “VR Room - \[Your Name\]” - name it “VR Personal Project - \[Your Name\]”.

**2.  Import the VR Course Library into your project:**

- Follow the instructions in the[ **VR Project Setup** tutorial](https://learn.unity.com/tutorial/vr-project-setup).

**3.  Configure your project to run on your specific device:**

- Follow the instructions in the[ **VR Project Setup** tutorial](https://learn.unity.com/tutorial/vr-project-setup).

**4.  Make sure you’re ready to start developing your personal project:**

- Rename and open the **starter** scene.
- Make sure you can successfully run your project on your VR device or with the **XR** **Interaction** **Simulator** GameObject.

**5.  If you don’t want the Challenges in your project:**

- In the **Project** window, right-click the **Challenges** folder and select **Delete**.

You should now have a new project open to a starter scene and be able to test it in VR or with the **XR** **Interaction** **Simulator** GameObject.

## 3. Set up the basic scene with primitives

Rather than using assets from the course library, you can develop this basic scene using primitives and simple colored materials:

[Video](https://connect-mediagw.unity.com/h1/20220608/videos/ff4ded23-dd28-495c-88e4-5381daa417ca_1_6_lab_1_3_v2.mp4) ([Transcript (en)](https://connect-mediagw.unity.com/h1/20220608/b0d26195-948d-4cb1-b725-579dc59bfa61_lab_1_3_v2.vtt))

**1.  Create the ground:**

- In the **Hierarchy** window, select the **Plane** GameObject.
- Reset the **Plane** GameObject’s**Transform** component’s **Position** property values to **X** = **0**, **Y** = **0**, and **Z** = **0** in the **Inspector** window.
- Rename it “Ground”.

**2.  Keep your materials organized:**

- Create a new “Materials” folder inside the **Assets** directory.

**3.  Create a material for the Ground GameObject:**

- Right-click in the **Materials** folder and select **Create** > **Material**.
- Rename the new material “Ground”.
- Edit the **Base** **Map** color in the **Inspector** window.
- Drag the material onto your **Ground** GameObject.

**4.  Block out the rest of your basic scene:**

- Continue creating and scaling additional primitive GameObjects (cubes, spheres, planes, capsules, etc.) and applying simple colored materials.
- Don’t create grabbable GameObjects yet - only critical environmental things like a room, a table, etc.

**Note:** If you have GameObjects that will be reused throughout the scene, you should create a “Prefabs” folder and drag those GameObjects into it to make them prefabs.

You should now have your basic scene blocked out with primitives at an appropriate scale.

## 4. Set up basic locomotion

Now that you have the basic scene blocked out, you need some way of getting around it.

[Video](https://connect-mediagw.unity.com/h1/20220608/videos/7bb40b6b-9cc4-40d6-82c6-30889d3b6147_1_6_lab_1_4_v2.mp4) ([Transcript (en)](https://connect-mediagw.unity.com/h1/20220608/a99e5960-2d32-403d-8a01-1d14000b785b_lab_1_4_v2.vtt))

**1.  Allow the user to move around the scene:**

- Follow the instructions in the[ **VR Locomotion** tutorial](https://learn.unity.com/tutorial/1-2-vr-locomotion) to set up **Teleportation** **Areas**.
- It might be helpful to temporarily make your entire **Ground** GameObject a **Teleportation** **Area** for testing and development purposes.
- Alternatively, it might be helpful to use continuous movement for testing and development purposes.

**2.  Allow the user to teleport to important locations in the scene:**

- Follow the instructions in the[ **VR Locomotion** tutorial](https://learn.unity.com/tutorial/1-2-vr-locomotion) to set up **Teleportation** **Anchors**.
- Instead of using the mats like you did in your room, create **1** x **0.1** x **1** cubes named “Teleportation Anchor”.
- Remember to set the **Match** **Orientation** property to match the anchor’s forward direction.

You should now be able to move around your basic scene.

## 5. Set up basic grabbable GameObjects

The last thing you’ll do is create any grabbable GameObject prefabs you expect the user to interact with.

[Video](https://connect-mediagw.unity.com/h1/20220608/videos/e7b20d53-cbe2-4f62-9a1a-24f9352163d0_1_6_lab_1_5_v2.mp4) ([Transcript (en)](https://connect-mediagw.unity.com/h1/20220608/3274418e-3e81-4daf-8ea9-f2812976c51d_lab_1_5_v2.vtt))

**1.  To make more complex GameObjects with primitives:**

- Create an empty GameObject.
- Rename the GameObject.
- Create primitive child GameObjects to represent the mesh of the form of the GameObject.

**2.  To make your GameObjects grabbable:**

- Follow the instructions in the [**Grabbable Objects** tutorial](https://learn.unity.com/tutorial/1-3-grabbable-gameobjects).
- Add components on the empty parent GameObject, not the primitive child GameObjects.

**3.  To add sockets to your scene:**

- Follow the instructions in the[ **Sockets** tutorial](https://learn.unity.com/tutorial/1-4-sockets).

**4.  To make your interactable GameObjects into prefabs:**

- Drag each new interactable GameObject into the **Prefabs** folder.

You should now have basic functioning prefabs for the main grabbable GameObjects in your scene.

## 6. Organize your Hierarchy

Before your **Hierarchy** window gets too crowded, you should take a moment to re-organize it.

[Video](https://connect-mediagw.unity.com/h1/20220608/videos/9b7b0901-bcb9-40aa-a24b-0cc1a7ae7701_1_6_lab_1_6_v2.mp4) ([Transcript (en)](https://connect-mediagw.unity.com/h1/20220608/179310ef-1889-4b48-91f5-8a66967a43e3_lab_1_6_v2.vtt))

**1.  To make organizer GameObjects in your Hierarchy window:**

- In the **Hierarchy** window, create new empty GameObjects named “XR”, “LIGHTING”, “STATIC”, and  “DYNAMIC”.
- Reset all of their **Transform** component’s **Position** property values to **X** = **0**, **Y** = **0**, and **Z** = **0**.

**2.  To organize your GameObjects into categories:**

- Drag GameObjects from your **Hierarchy** window either onto the organizer GameObjects (to make child GameObjects) or underneath the organizer GameObjects (to use the organizer GameObjects as headers)

Your **Hierarchy** window should now be organized by category.

## 7. Recap

[Video](https://connect-mediagw.unity.com/h1/20220608/videos/09b7cfd0-effc-4ab8-a26d-71c457407d9e_1_6_lab_1_recap_v1.mp4) ([Transcript (en)](https://connect-mediagw.unity.com/h1/20220608/958075fb-cf90-4f76-be27-26910a24f9db_lab_1_recap_v1.vtt))

**New functionality:**

- VR project set up
- Scene blocked out with primitives
- Locomotion around the scene
- Grabbable GameObjects
- Socket interactors

**New concepts and skills:**

- Applying VR basics, such as locomotion and grabbable GameObjects in your own VR app.

**Next lab:**

- Implement core functionality and interactions.

## 8. Share your work _(Optional)_

> **Submission required**: media

We would love to see what you've created with VR!

If you went above and beyond in your VR room, the challenge, or your personal project for this Unit, please take a screenshot of your project or do a screen-recording walking us through it, then post it here to share what you’ve made. You can take screenshots within the Unity Editor or try to capture footage directly from the device.

We highly recommend that you comment on at least one other creator's submission. What do you like about the project? What would be a cool new feature they might consider adding?


Additional resources on capturing footage directly from an Oculus device:

- [Screenshots and video capture on Oculus devices](https://developer.oculus.com/documentation/native/android/mobile-testing-capture/)
- [Transferring files to and from Oculus devices](https://support.oculus.com/2255729571307786/)


Note:

- Oculus devices cannot currently capture the microphone input during video recordings, but the app’s audio is recorded.
- Due to the variable refresh rate in videos, recorded audio will likely be out of sync from the video footage. To sync the audio and video perfectly, you may need to edit them in a video editing program.
