Case Study: Developing the 3D Cooking Simulation Game "Idiot Sandwich"
Cultivating Skills and Creating Experiences with UI/UX and Game Design/Development.
Introduction
In the summer of 2019, I participated in a school team project to create a 3D cooking simulation game called "Idiot Sandwich." This project allowed me to showcase and refine my skills in 3D modeling and animation, game design using Unreal Engine, UI/UX prototyping, and collaboration within a team environment.
As the Game Design Director, I oversaw the majority of the game design elements, from game mechanics to art atmosphere, and gameplay. I conceptualized the idea of a cooking game with a nod to Gordon Ramsay’s TV shows, sketched the basic level design, and assigned model and animation tasks to other team members.
The Game Concept
The game, which was built in Unreal Engine, draws inspiration from the constrained movement mechanics of Resident Evil 4 and the time pressure elements of Overcooked. The player guides Chef Julie as she races to gather the right ingredients and follow the perfect recipe to impress Mr. Garden with her cheeseburger. The game also provides a recipe board to guide players through the cooking process.
The game is available to download for Windows : )
Designing the UI/UX: From Sketch to Prototype to Game
As part of my UI/UX Design role, I sketched the scene and transferred them into detailed designs in Figma for prototyping. In this phase, I let my creativity flow freely, allowing me to brainstorm various concepts and layouts for the game interface.
While sketching, I was simultaneously pondering over the game structure for development. I found it crucial to maintain a consistent naming convention across my sketches and Figma Layers. This practice not only kept my workspace organized but also streamlined the subsequent development process.
3D Modeling and Animation: Bringing Our Game to Life
Another significant aspect of the project was 3D modeling and animation. I used Maya to create the hand mesh for Julie, the game's main character, and designed the "checking the dish before serving" animation. These 3D elements were then imported into Unreal Engine and integrated into the game scene, enhancing the game's visual appeal and interactivity.
Harnessing Unreal Engine for Game Design and Development
Unreal Engine 4 served as the primary tool for the game's development. I used the Unreal Engine Blueprint system extensively, particularly for developing the game's user interface. Blueprint, a visual scripting system in Unreal Engine, allowed me to design and program various UI elements such as logos, buttons, and overlays.
In the development phase, I worked with the developer, integrated my design into Unreal Engine Blueprint and programmed the UI. A significant portion of my work involved designing subtle but essential UI animations within the Unreal Engine. Later on, I also helped building game scene and applying texture to the in-game models.
Sound Design: Adding Another Layer of Immersion
The game's immersive experience was further enhanced by the addition of sound effects. I curated suitable audio resources, listened to each file, and selected the best sounds to fit our game's context, including UI SFX, action SFX and background music. These sound files were then integrated into the game, adding another layer of realism and immersion.
Collaboration: Teamwork on Jira
The success of this project was also due to the excellent collaboration within our team. The developer and me used Perforce for UE development file version control. We used Jira to set goals and deadlines, assign tasks, and track progress. Communication was facilitated through Discord, enabling us to stay organized and aligned throughout the project.
Showcase Video
Reflections and Takeaways
Embracing New Technologies
The development of 'Idiot Sandwich' marked my first experience with Unreal Engine. Despite its initial complexity, I embraced the challenge and extensively utilized the UI Blueprint feature. With time, I honed my skills and managed to create an engaging user interface for the game, complete with subtle, yet essential animations. This experience underscored the importance of stepping out of my comfort zone to learn new technologies, a lesson that I will carry forward in future projects.
The Importance of Organization
The project underscored the vital role of organization in game development. Setting up a strict naming convention early in the project not only facilitated smoother collaboration among team members but also preempted potential issues with file synchronization. This practice proved particularly useful when working with Perforce, as it prevented the system from saving multiple versions of a file due to renaming or deletion.
The Power of References
One practice I found particularly beneficial was maintaining a text file with all file names and their sources. This served as a quick reference guide and made it easier to keep track of the resources used in the game. This was a particularly useful practice when I had to handle a large amount of audio files, ensuring a smooth and organized workflow.
Gamification and Game Design Document (GDD)
The project was a valuable learning experience in terms of gamification. While I attempted to write a GDD for 'Idiot Sandwich', it seemed a tad heavy for the project. The experience, however, highlighted the importance of a clear, concise game design direction that can guide the development process and keep the team aligned with the game's objectives.
Incorporating these lessons, I am excited to apply the skills and insights gained from 'Idiot Sandwich' to future projects. The game stands as a testament to the power of collaboration, the importance of organization, and the endless possibilities that come with embracing new technologies.
Conclusion
The development of "Idiot Sandwich" allowed me to leverage various software tools and skills, including Unreal Engine Blueprints, 3D modeling in Maya, UI/UX prototyping in Figma, and sound design. It showcased my ability to work collaboratively within a team and my dedication to creating engaging and immersive gaming experiences.