Skip to content

Critical Making 2: Immersive Media Design

Critical Making 2: Immersive Media Design introduces designers to the tools and workflows used to build immersive virtual reality and augmented reality experiences.

This studio-based course explores the intersection of virtual reality (VR) and augmented reality (AR) tools and workflows, interaction design, multimedia production, and product innovation as possible tools for solving industry-based challenges.

Students will develop fundamental skills in 2D/3D asset creation, 3D game engines, simulation, animation, and rendering strategies used in the production of high-quality content for use in crafting immersive digital experiences. The course will utilize industry-standard tools such as Unity, Cinema 4D, Adobe Creative Cloud, and hardware platforms such as HTC VIVE for VR and ubiquitous mobile devices for AR. In addition, the course will cover concepts ranging from UI/UX design for immersive experiences, interaction design in VR, game mechanics, designing for human interaction, and scripting behaviors for digital objects and agents.

Day and Time:
Monday, 9:30 am - 12:00 pm
CMCI Studio (1301 Walnut St)

Location:
We have adopted a hybrid (remote/in-person) class structure this semester due to COVID-19. This means anyone can participate in person or virtually over Zoom anytime. The class schedule will indicate when class is to be held in person at the Studio or virtually over Zoom. The following Zoom link is to be used for all class sessions. The required password is provided in Slack.

>> Zoom Meeting (Password Required) <<

Instructor:
RJ Duran
rj.duran@colorado.edu
Slack: @rjduran. #cmstudio on cmcistudio.slack.com
Office hours by appointment. Feel free to reach out to me via slack or email.

Syllabus:
This website is a real-time version of the course syllabus. It is updated weekly throughout the semester. A static version can be downloaded here.

Slack:
Channel #cmstudio and user group @imd will be used for all course communication and notifications. Be sure to use the appropriate user group when necessary.


Course Themes

  • Designing Media for VR and AR
  • Building Mobile AR Experiences
  • Building VR Experiences
  • Digital Asset Creation
  • Interactivity
  • UX/UI of XR
  • Scripting / Programming

Course Workload

  • This is a 3 credit hour course. You should expect to dedicate at least 2-3 hours per credit hour. This translates into 6-9 hours per week outside of class. Consider 6 hours a minimum expectation for one studio course and plan accordingly with your other studio courses.
  • Assignments for this course consist of weekly blog posts demonstrating project-based and process oriented research and explorations in making. Assignment parameters will be based on the topic of the week and in-class discussions. Refer to the Course Deliverables section for more information.
  • The course is organized into weekly meetings consisting of instructor led project-driven topics organized as workshops and studio work sessions. It is expected that all students are active participants in each session.

Course Deliverables

This is a project based course and largely driven by student research and interests. As such, each deliverable is expected to vary based on the project parameters and requirements. The following outlines the general criteria for course deliverables throughout the semester.

Assignments

  • Assignments are given weekly and need to be submitted as a blog post published to your Critical Making blog. A minimum of 1 blog post per week is the expectation.
  • Medium is widely used in other studio classes but any blogging platform may be used.
  • Posts are to be submitted via slack #cmstudio by the specified due date each week.
  • It is recommended that a post includes a variety of media and content to support the subject matter. For example: text, images, video, graphics, photos, mockups, screen captures, tutorials, 3d model viewers (sketchfab), sketches, code, gifs, references, etc. Anything that is required to effectively communicate the details of a project, process, prototype, or idea.
  • The subject matter is in response to the topics of the week. Ideally, it falls in line with your interests, research area, project, creative process, etc. For example, you might consider doing a series of tutorials on a topic that interests you or a process/workflow you are currently exploring through the course.
  • Posts should be written to the best of your abilities and for a public audience. The post and any accompanying visual content (images, video) may be shared on social media.

Final Project

Technology

In this course you are free to use any kind of computer and operating system you wish as along as it can run the software listed. The course will primarily be taught using the macOS based version of each tool we encounter with the exception of SteamVR, which is Windows based.

Hardware

  • A recent Apple Macbook (2013 and newer) with macOS Catalina (10.15) or a Windows 10 based system.
  • At least 30 - 50 GB extra hard drive space to install software and work.
  • At least 1 TB external / portable hard drive to move files around and between computers as needed.
  • (Optional) A recent mobile device supporting AR Kit 3 or 4 (devices with A12+ chip running iOS 13) or ARCore (devices running Android 7.0) for mobile AR development. Learn more about AR supporting devices: ARKit Devices and ARCore Devices.

Software

In this class we will make use of various types of design and engineering software. Some tools are essential and required to complete a task such as getting a VR or AR experience working while other tools are based on personal preference and workflow. Access to the following software is recommended.

Required Software

Additional Software


Week 1: Overview / Unity

Jan 25 | Location: Zoom Meeting

Assignment 1: 3D Concepts & Unity Essentials

Part 1: Watch Videos on 3D Concepts

Watch all the videos in the Youtube Playlist below to understand key 3D concepts you will encounter throughout this course. We will be touching on most of these topics at some point.

Part 2: Unity Essentials

Before we meet next week, I would like you to work on the first mission, Foundations: Get started with Unity from Unity Essentials. To get started, signup for a Unity account (Unity ID) at learn.unity.com. You will encounter the LEGO Microgame while working through the lessons.

Deliverable:

There is no required blog post for this week but you can document your progress with one if you like. I will assume you have worked through these resources and have an understanding of the content. You can share a link to your Microgame submission for others to play with via Slack. We will start class next week by checking out your Microgame projects.


Week 2: Unity / Intro to Scripting

Feb 1 | Location: Zoom Meeting

  • Week 2 Slides

Assignment 2: Roll-a-Ball

Work through and complete the Roll-a-Ball project in Unity before we meet next week.

Useful Resources

Deliverable:

There is no required blog post for this week but you can document your progress with one if you like. I will assume you have worked through this tutorial and have an understanding of the content. If you create a derivative work from the tutorial, I recommend documenting your work and sharing it with the group via Slack. We will start class next week by checking out any projects you make.


Week 3: Cinema 4D

Feb 8 | Location: Zoom Meeting

Cinema 4D Student License

  • Start here - Cinema4D for Students
  • Create an account and follow instructions to obtain 6 month educational license via Kivuto. There is a small ($3) processing fee to pay.
  • Once you place your order for a license, look for the PDF for further instructions via email. Note the Promo Code. You will use it when setting up your MAXON license.
  • Activating the license will take place under your MAXON account, which you sign into when first launching C4D.

Part 1: Tutorials

Work through Learning Cinema 4D S22 on LinkedIn Learning. It should take about 2 hrs to complete. It's a good introduction to the environment and common tools and workflows.

Additional Resources

Part 2: Animate the CMCI Studio Logo

Using the CMCI Studio Logo, create a stylized 3D animation using keyframes and render a short video. Experiment with some of the features available in Cinema 4D such as materials, cameras, lighting to give your render some style and personality.

Deliverable:

Document your process for Part 2 in a blog post.

Produce an animation and upload it to Youtube to embed in your blog post. Write a blog post that includes any details and reflections of your design process in Cinema 4D and other tools used to make your final animation.

Share a link to your post with user group @imd in Slack channel #cmstudio.

Due: Friday, Feb 12


Week 4: XR Asset Workflows

Feb 15 | Location: Zoom Meeting

  • Week 4 Slides

Assignment 4: Creating Assets for XR

Using Cinema 4D, create an animated asset that can be used in Adobe Aero or Unity.

Workflow: Animate asset, export FBX, Import FBX into Aero, Preview on Desktop and Mobile

To create your asset in Cinema:

To visualize the result using Adobe Aero:

  • Download and install the Desktop App: Adobe Aero Desktop Beta
  • Download the mobile app if you have a compatible iOS device. Android is coming sometime in the future. If you don't have a compatible device, don't worry, just share a link to your experience created in the desktop version.
  • Make sure to read through the Adobe Aero User Manual: Key 3d modeling conepts to get familiar with what works best for Aero. Go back to your design if something doesn't seem to import correctly or you have too many polygons on an object.
  • Remember you can use Autodesk FBX Review as a way to quickly preview FBX files.
  • Setup a scene, add FBX files, and setup triggers and behaviors in Aero.

Deliverable:

Document your process in a blog post. Include video screen captures from your desktop and/or mobile device to show how you built your assets and visualized them.

Share a link to your post with user group @imd in Slack channel #cmstudio.

Due: Sunday, Feb 21


Week 5: VR / SteamVR

Feb 22 | Location: Zoom Meeting + In Person

  • Week 5 Slides

Assignment 5: Build a World

Based on your concept of a "world", construct one using existing assets from the Unity Asset Store and/or any assets you have created.

  • What is in your world?
  • What does it look like?
  • What does it sound like?
  • What does it feel like?
  • What inhabits your world?
  • How do you navigate the world?

FPS Controller

To navigate your world initially you can use the first person controller (Characters/FirstPersonCharacter/Prefabs/FPSController) from the Unity Standard Assets. Standard assets like these can be used to build functional prototypes to aid development of a game or experience and can be replaced with other assets in time. The first person controller simulates the functionality of the steam VR camera /controller rig and can be replaced when building for VR.

Steam VR (Windows Only)

SteamVR works best on Windows machines with graphics cards that are powerful enough to render immersive 3D worlds. To make your world VR compatible you need to plan for adding SteamVR functionality on the Windows machine running your Unity scene. The following tutorials walk through the basics of Steam, SteamVR, and adding the Player controller to a 3D scene to make it VR ready.

Deliverable:

Document your process in a blog post. Include video screenshots and/or screen captures to show how you constructed your world.

Share a link to your post with user group @imd in Slack channel #cmstudio.

Due: Sunday, Feb 28


Week 6: SteamVR / Work Session

Mar 1 | Location: Zoom Meeting + In Person

  • Week 6 Slides

Assignment 6: Build an Immersive VR World

Iterate on your existing world or design and build a new world in Unity that utilizes the SteamVR Player prefab, teleportation points and/or areas for locomotion, and basic interactivity to manipulate objects in yoru world.

To truly test your world in a VR system you will need to spend time in the studio getting familiar with running Unity from one of the Windows 10 laptops connected to the HTC VIVE and SteamVR.

If you’re feeling adventurous this week, look to use scripting to create game mechanics in your world. Hint: look at roll-a-ball for some basic game mechanics to start with. Things like object collection, score keeping, displaying text on screen, and collisions are all really useful mechanics that can be used in your worlds.

Steam VR (Windows Only)

SteamVR works best on Windows machines with graphics cards that are powerful enough to render immersive 3D worlds. To make your world VR compatible you need to add SteamVR functionality on the Windows machine running your Unity scene. The following tutorials walk through the basics of Steam, SteamVR, and adding the Player controller to a 3D scene to make it work for VR.

If you try to install and use SteamVR on Mac you will run into errors when trying to run in Unity. There isn't much of a work around at this time.

Deliverable:

Document your process in a blog post and upload your VR experience to the Studio File Server. Include video screenshots and/or screen captures to show how you constructed your world. Include a gameplay screen recording to document the experience. You can use OBS Studio for screen recording while running VR experiences on the Windows laptop.

Note: If you run into issues uploading a large file (~2 GB), you can try reducing the size of your Unity folder by deleting everything EXCEPT the Assets and ProjectSettings folders before making your zip archive.

Share a link to your post with user group @imd in Slack channel #cmstudio.

Due: Sunday, Mar 14


Week 7: SteamVR / Work Session

Mar 8 | Location: Zoom Meeting + In Person


Week 8: No Class

Mar 15 | Location: Zoom Meeting + In Person

Class canceled due to weather.


Week 9: Spark AR

Mar 22 | Location: Zoom Meeting


Week 10: Final Projects

Mar 29 | Location: Zoom Meeting + In Person


Week 11: Final Projects

Apr 5 | Location: Zoom Meeting + In Person


Week 12: Final Projects

Apr 12 | Location: Zoom Meeting + In Person


Week 13: Final Projects

Apr 19 | Location: Zoom Meeting + In Person


Week 14: Final Project Presentations

Apr 26 | Location: Zoom Meeting + In Person

  • Last Day of Class
  • Final Project Presentations
  • Apr 28 - Final Project Documentation Due

Final Project Documentation