For the prototype game, Project Saber, the cafeteria for the scifi submarine setting was modelled for a University assignment
Autodesk Maya LT, Unreal Engine
Substance 3D Painter, Trello
This team-based university project focused on creating a prototype survival rougelike game with each team member assuming a specific developer role. The primary focus of this project was on asset modelling for the game's immersive submarine interior. Additionally, there were some coding elements to design using blueprints in Unreal Engine to add interactive mechanics to the game. The game revolves around a survival roguelike adventure where players find themselves in a world where they must navigate from island to island, gathering essential resources to repair their submarine, which had suffered a disastrous accident. As the game progresses, players repair elevators and other crucial ship components to unlock new levels, encounter enemies, uncover maps to unexplored locations, and acquire more efficient tools for resource collection. The project's core objective was to design models that contributed to the narrative and offered interactive elements, enhancing the player's immersion. Given the project's prototype nature, the main focus was creating assets to fill the submarine's cafeteria space. This included benches, cafeteria trays, and serving counters for storage facilities, as food resource collection plays a vital role in the game's mechanics, adding to the survival aspect.
Unreal Engine is a powerful and versatile game development tool excelling in creating vast, immersive game worlds. One of Unreal Engine's most remarkable advantages is its ability to handle large maps seamlessly. The engine's advanced level streaming and culling techniques ensure smooth gameplay experiences, even in sprawling environments. Unreal Engine's blueprint coding system is a visual scripting system that allows designers and artists to delve into game mechanics, logic, and interactions without extensive coding knowledge. Unreal Engine's instanced materials feature is a standout advantage compared to Unity. Employing instanced materials makes achieving optimised performance and memory usage possible, especially when dealing with large numbers of objects with the same material properties. The engine's advanced global illumination and real-time lighting systems enable realistic atmospheres, from dynamic day-night cycles to intricate lighting setups.
The project's design phase began with an analysis of the mood board curated by one of the other team members. The mood board aided in discerning the art style and design elements that would best encapsulate the essence of the cafeteria and submarine interior. The primary objective was to create a visually cohesive theme for the submarine, ensuring uniformity in materials, colours, and rounded edges across all models. To achieve this consistency, one idea was incorporating glowing light bars into each model, whether to subtly enhance a table's support beams or accentuate a cup's distinct features. These light bars added aesthetic appeal and contributed to a captivating narrative by evoking a sense of futuristic technology within the submarine's confines. To elevate the authenticity of the environment, meticulous attention was given to location-specific details. Elements such as carefully stamping the submarine's name, SABER, onto objects like cutlery, shakers, or bowls further reinforced the storytelling and heightened the scene's realism.
To streamline team collaboration and ensure a shared understanding of the project's vision, Trello was employed as an effective project management tool. In addition to organising the project, Trello housed crucial information about the game, including the comprehensive Game Design Document (GDD) and user stories. The GDD encompassed detailed information about the game's theme, story, gameplay mechanics, enemy AI, level design, scoring, missions, music, and even included captivating concept art. This collaborative approach fostered a unified vision, aligning all team members with a clear purpose and direction. With a comprehensive list of models meticulously planned and logged on Trello, the project's estimated completion hours, including texturing details, could be allocated. This thoughtful planning allowed for efficient time management and the creation of a well-structured timeline.
As the vision for the final product began to emerge, the cafeteria scene was conceptualised and encapsulated within a single blueprint prefab in Unreal Engine. This strategic decision enabled seamless editing, additions, or removal of the cafeteria environment from the overarching submarine setting. The inclusion of all models within a separate sub-scene in Unreal Engine offered quick loading times for editing. It ensured a smoother workflow when collaborating through the cloud-based tool Git. While the ultimate goal was to create a fully functional cafeteria that could store players' food supplies, it was adapted to accommodate the prototype nature of the project. The focus shifted to achieving a visually compelling scene, providing players a glimpse of what the fully developed cafeteria could be like. The scaling of each object was vital to preserve a sense of proportion and realism, ensuring that players felt entirely immersed in the environment, whether they were exploring the surroundings or standing atop a table.
Developing the cafeteria scene began with creating 3D models within Maya. Every design choice was thoughtfully considered, aligning with predetermined aesthetic principles such as incorporating luminous light bars and a consistent material selection. One of the initial models was the console unit envisioned for the submarine's control room. As such, the unit demanded a multi-faceted design featuring a primary view screen for information display, interactive controls including buttons, switches, a joystick, and a readout display with its distinct set of controls. However, an early misstep occurred during the console unit's modelling, as using edge loops to enhance details like buttons and switches resulted in excessive topology, leading to an inefficient, high-poly model. Rectifying this, the model's topology was restructured, which proved time-consuming but indispensable in reducing the model's performance.
The next step was modelling the table and chair, designed as a cohesive ensemble with an efficient design. Drawing inspiration from the Bauhaus principles, the design adhered to the "form follows function" doctrine, where placing the chairs together transformed them into a singular entity. The cutlery models were rooted in real-world counterparts and photographed to achieve precise top and side views. This visual reference proved invaluable in shaping edges, handles, blades, and spoon depths. To streamline efficiency, the initial cutlery handle was the foundation for other pieces, allowing consistency and reducing duplication efforts. Similarly, the salt and pepper shakers were approached with the same efficiency, allowing the salt shaker to lay the foundation with the pepper shaker created by subtracting holes. Notably, the depth of the engraved "S" and "P" letters was managed through a normal displacement texture map, enhancing performance optimisation without compromising aesthetics.
Texture development followed, with consistency and visual clarity prioritised. Shared metal and plastic-like materials were employed across objects such as tables, serving counters, tray bins, and the console unit. A unique challenge emerged with the chalk menu board. If the game were to be fully developed, the board's content would dynamically update based on in-game events and player progress. As such, the board would have a chalk-based font and a system for dynamically updating the writing on the board within Unreal Engine, circumventing the need for the manual creation of multiple textures. Transparent materials used in the serving counter and water cooler bottle, were exclusively developed within Unreal Engine. Transparency in materials can be engine-specific, leading to creating those elements directly within the engine for a consistent and accurate visual representation.
Each model was first visualised within Substance Painter, the software used to design all the materials and textures. This was the initial preview of their appearance, irrespective of the final rendering software. Efficient texturing began with assigning materials to the models using the polygon fill tool, ensuring precision and rapid progress. These textured models were then showcased via images posted on Trello, offering a preview of the final design for other team members. Notably, the serving counter and water cooler bottle deviated from this approach, necessitating images taken within Unreal Engine due to their transparent material properties. This dynamic approach accurately represented the materials' effects and visual attributes.
In reflection, the design of the cafeteria environment resulted in a cohesive and well-filled space. While this project's scope was limited, if it were to be developed further there is potential for more intricate details to accompany the air vents, including functional water drainage systems, cables, pipes, and embellishments traditionally paired with the submarine's aesthetics. The console unit, although refined, encountered challenges during the cleanup phase, resulting in excessive n-poles and topological complexities. A more strategic approach to topology management, featuring isolated edge loops from the outset, could prevent such issues, fostering smoother development.
Contemplating future improvements, the interactive potential of the console unit could be further utilised. A refined approach would involve implementing an animated rig and a state machine, allowing for individual manipulation of buttons and switches, elevating the player's engagement. Expanding the project's depth could involve embracing the narrative of the water-damaged submarine, infusing textures with wear and tear to evoke a sense of authenticity. This adaptation could transform the cafeteria's layout in various stages of disrepair to echo the ravages of time and adversity, adding layers of complexity and immersion. To optimise workflow efficiency and consistency, a strategy to consider in future would be to develop individual materials independently from the models. This modular approach would enable streamlined adjustments, eliminating the need to manually texture each model individually. Furthermore, this approach would allow for a global change to a material applied uniformly across all relevant models, facilitating seamless alterations. Overall, future projects can explore more model and scene intricacy, storytelling, and interactivity.