Project 1: VR CSE Simulator Game

Return to Home

Project Summary

This project involves the development of a Virtual Reality (VR) simulator for room 1695 in the BBB. It was designed to teach computer science concepts in an interactive way. Built using Unreal Engine 5, the project leverages Blueprints for game logic, Jira for project management, and Git for version control. The goal is to provide an immersive experience for what a simulation of room 1695 BBB could be like utilizing different Unreal Engine 5 feature.

Created by: Brian McNulty, Joshua Bisdorf and Randy Medendorp

Video Demonstrations

Resources

Unreal Engine 5 was a completely new experience for me, as this project marked my first time working in any game development environment. Despite the initial learning curve, Unreal Engine 5’s robust toolset made it possible to create an immersive VR simulation. Its advanced physics system and real-time rendering capabilities were particularly beneficial in making the project feel realistic. Learning how to navigate the engine, use its various asset tools, and optimize performance for VR was a rewarding challenge.

Blueprints served as the core method for implementing logic and interactivity in our project. As Unreal Engine’s visual scripting system, Blueprints allowed us to create complex game mechanics without needing extensive C++ coding. We used Blueprints to define how actors, meshes, materials, animations, and components behaved in the simulation. All interactive elements in our project—such as sound effects, an affordance system, NPC behavior, and material adjustments—were implemented using Blueprints. Even the infamous “Stranger Outside” (our Kool-Aid Man-inspired character) was brought to life through Blueprint scripting.

Jira was another tool I had never used before but proved essential for organizing our team’s workflow. We structured our development process into three sprints—Milestone, Alpha, and Gold—assigning tasks based on their weight to ensure an even distribution of work among our three team members. Jira helped us track progress, manage priorities, and maintain accountability. By the end of the project, we had a well-documented task history that provided a clear picture of how the project evolved over time.

Git (with GitLab) was a familiar tool to me, but using it in the context of game development introduced new challenges. Unlike typical software projects, game development with Unreal Engine creates large binary files and complex dependencies that can lead to messy and even destructive merges. We had to establish careful version control practices, such as branching strategies and frequent commits, to prevent conflicts and ensure that our work remained intact. Learning how to manage these issues effectively was a crucial part of keeping our project on track.

Credits