We competed in and won Virtual Fantasy, the reference student competition in Europe in the field of Virtual Reality. We had 30 hours straight to imagine and develop a virtual reality game using the latest technologies. Partners included Unity and Oculus.
It was my first time using the Leap Motion, a high-end motion-tracking device. This controller enables very precise tracking of the hands and the fingers. And it was a great opportunity for me to experiment and explore the possibilities of this technology.
We won the competition as a team of 4 designers. My role was to lead the team, while defining the VR technology and the interactions as well as developing the prototype in Unity3D, using C#.
VR designers need a broad skillset
I believe that, besides his design skills, an extensive knowledge of coding is a must-have skill for an Interaction and VR Designer, as it allows to understand the workings of the technologies, and therefore, the possibilities they enable. For instance, in this project, my humble knowledge of the Unity3D engine and the C# programming language made me, amongst our team of 4, the best teammate suited to overseeing every part of the overall project, hence my leading role.
Our team deploying ideation skills to explore the concept
Justine working on the 3D environment
Even though we divided the tasks according to our respective skills, we all had some say over each step of the process. But if I had to define our roles, it would be something like this:
I led the team and was also in charge of the VR design, including defining the interactions and developing the prototype in Unity3D.
Maxime took part in defining the game concept and the art direction as well as in the Unity development.
Marion worked on the character design for the cute Gizmos. She also modeled and animated them and took part in the art direction.
Justine worked on designing and modeling the environment. She also took part in the art direction.
To be able to build a VR and motion tracking app in only 30 hours, we tried using the best possible workflow.
Unity3D (Game engine)
Unity3D provided me with a powerful development environment. It is the main Game Engine for VR applications, and it is my personal favorite. The large active community also makes it a better choice than the Unreal Engine when trying new things out and looking for some help.
A screenshot of my progress on the unity project during the contest
C# (Programming language)
C# is an object-oriented programming language which is derived from C++. In Unity3D, I usually go for C# over Javascript for two main reasons. The first one is that, as 80% of Unity programmers use C#, the documentation as well as the plugins library are broader in that language. Also, my experience working with engineers (as part of my double Master's degree in VR engineering research) taught me that most advanced users prefer C# over Unity's JS.
A code snippet from my Leap Motion hand-tracking scripts
Leap Motion SDK (C# documentation)
As it was my first time using the Leap Motion controller, I heavily relied on the SDK documentation in order to pin down the possibilities of the technology. Also, I believe that an extensive knowledge of coding is a very useful skill for an Interaction and VR Designer, as it allows to understand the workings of the devices. By exploring the Leap Motion SDK documentation, I was able to wrap my mind around the possbilities of the device. For instance, I was very surprised to see that the controller could track data as precise as the orientation of every single phalanx. This kind of tech insight helped us make the best out of the technology for our own app.
I spent most of my time iterating between programming and testing the interactions
In order to emphasize the special features of our VR technology (the Leap Motion), we built Gizmo as a multiplayer game with asymmetrical gameplay. The first player would use the Leap Motion controller at its fullest, while the second player would use the traditional computer mouse.
Summing up the game concept in a video
The rules of the competition
There were two main rules in this VR game competition. The first one was that everything had to be created by us from scratch: the assets, the characters, the gameplay and the code. The second rule was to include in our app an unusual object drawn at random: we drew the "fence".
Listing our tasks to share between the teammates
We had to create all the assets: 3D models and code
Guiding a herd of characters with your hand
The Gizmo is a fictional endangered species. The first player has to protect them from extinction. He controls them as a herd, and has to help them avoid the fences. But be careful, they roll all over the place ! And you better not loose them ! The second player has to prevent the Gizmos from reaching the finish line. He is the one placing fences across the road to stop the Gizmos and drive the herd off the cliff.
A herd of Gizmos
Marion working on the character design
Thanks for reading
Next project