This instructable is about creating a VR game in Unreal Enige 4 to recreate what life will look like on Mars..
The Mars VR Experience we created is a single player VR simulator experience. Land on Earth’s sister planet, walk the surface of Mars in your living room and collect resources to survive the harsh environment. Explore the landscape and travel into the future to get a glimpse of what the red planet will look like when humans have colonized it.
The goal of this project was to create a realistic simulation of what it would feel like to live on Mars and what type of work would need to be done in order to colonize the planet.
Nowadays, creating an environment to simulate martian life is very difficult, time consuming and resource heavy due to the fact that everything must be built in the real world. However, with VR, many of the activities that will be done on the planet can exist in a virtual world that is not only cheaper , but more accessible to people who will want to go to Mars or see what it would look like there without needing to travel to expensive facilities and train like astronauts.
Step 1: Tools, Getting Started
The programs that were installed and used for this project were:
- Autodesk Maya 2014
- Unreal Engine 4
The first step in the making of a game is creating the assets that will be interacted with in the VR world. Initially, a martian landscape was purchased from the Unreal Engine 4 online store for 20$ and then placed into the VR template of the program. The objects and structures found in the landscape, such as: the rocket, the greenhouses, the solar panels, the ice cubes and the rover were created in Autodesk Maya 2017. The ice cubes were textured in Photoshop and Unreal Engine 4 where a UV layer was used to allow lighting to reflect more realisticaly on certain items.
Step 2: Importing Models and Sound
The files exported from Maya to Unreal had to be moved in .fbx or .obj format to be usable in the 3D world. Some items such as the rocket, the homes and the solar panels were kept as default static objects in the world, as they did not need to be interactable. However, objects like the ice cubes or the electric board needed to have physics activated in the blueprints of the Unreal Engine. All models were scaled based on the size of the player in VR and some research was done to find out the approximate size of a real life rocket if it neede to reach the red planet and the size of the martian homes based on what NASA currently has planed for colonization.
All the information used to scale everything can be found here on the Mars One mission site :
For sound, two files were used to create an atmosphere in the game. One for ambient sounds someone would hear on the Mars surface and in their space suit and one sound file of ambient music placed on a loop to not only experience the game visualy and physically, but also auditively. These files were imported as WAV files for Unreal to use and were put on an infinite loop. This file conversion can easily be done on windows media player from mp3 to .wav.
Step 3: Applying Physics to Models
For the final part, the physics applied on the interactable items in the game were done by using the cubes from the VR template in the engine and replacing the cube model with our own from Autodesk Maya 2017. This however, modified the hitbox of the item by creating one that engulfed the entire object in a square. The hitboxes had to be modified in the blueprints of the object to follow the geometry of the model.
The most important instance where this problem occured was for the container the cubes needed to go in. The default hitbox for that object sealed it off at the top making the cubes float just over the opening of the container when dropped in. The hitbox was modified by creating a 5 sided box with the empty side facing upwards.
Step 4: Creating a Goal
Once everything was imported into the world the purpose of the game thad to be created. To do so, text widgets were made to float in certain areas of the map in a manner that would make the player progress in a linear manner. The first task is to pick up a satellite dish and bring it to the rover to allow for communication with earth. Once the player has reached that point, a new text prompt would tell him to collect ice and melt it into water. This way of giving tasks allows the user to never feel lost or unsure of what to do next as the text prompts appear immediately after reaching a goal.
The text widgets were made in engine and simply float above each task that must be done in the game. Initially, the task of installing the satelite dish appears just below the title screen when the player starts the game. For the task of finding ice, some markers were placed in the general area of where they could be collected because searching the entire map would be too long. The markers use can be found here:
Step 5: Conclusion
The entirety of the project was created in a timespan of 6 weeks to a point where a minimum of playability was achieved. The mechanics for movement and interacting with objects functionned as desired and the addition of music and physics created an interesting atmosphere.
Many problems were encountered throughout the project in every aspect of the game. Initially, the VR template of the Unreal Engine did not work because teleportation was not functional, preventing the character from moving in any direction. This was rezolved by creating an invisible surface on top of the martian landscape that the game needed to understand that the player is allowed to move across certain areas. The serious lack of tutorial videos for implimenting certain mechanics was also a big hurdle but was worked around by simply letting the player progress by reading the text prompts after each goal or explorig as they please. The addition of textures to models was also attempted for some of the more complex geometry but ended up being a failure due to a lack of understanding of how it worked. Instead only the ice cubes were focused on since they were the main object the player interacted with.
In the future, many aspects of the game can be improved by first adding textures to the models, giving it a more realistic look and introducing some sound effects for when items are dropped. There are many more tasks to add before the game can truly be a martian life experience and there will need to be more research done on implimenting effects and progression to the game. Now that the barebones of the project are finished, the content of the experience can be improved upon to achieve an expansive and detailed example of what colonizing Mars will be like.