The goal of the project was to build a VR product that delivers a realistic game-like experience to the players. This app allows players to keep training without the necessity of leaving their homes, in particular training the reaction of hitting out the ball in different positions.
The purpose of this app is to train the tennis player’s reaction, and to achieve this the player’s brain has to believe in the reality of the training. Thus, the biggest challenge of this project was to simulate a realistic environment and ball/racket physics (including direction of the ball flight, collision of the ball and the racket, ball angles, etc.)
After the initial analysis phase we’ve got an understanding that there are two main goals to achieve to make this project successful: a photorealistic environment and realistic physics
The first one is more straightforward: working in close collaboration with a 3D artist, creating photorealistic textures and keeping in mind restrictions of our target platform Oculus Quest 1/2 delivers the expected result.
Platform choice: among all benefits of Oculus Quest platform the most valuable is that it doesn’t need a cable – a really important thing when you are playing tennis.
The second one was trickier. Our experiments with the prebuilt Unity physics engine using Nvidia Physx System Software revealed that the outcome it gives is rather arcade than realistic. After in-depth study of other physics engines we still were unhappy with the result and decided to create a custom one that fits our purposes.
That means that we have to calculate many parameters just with the help of mathematical formulas and understanding of physics. To strengthen our team we invited a university physics lecturer for this project who helped us to correctly reflect in our engine all parameters and variables including side wind, racket strings tension, rolling of the ball after the collision and many others.
The user will appear in a VR tennis environment with the near real-life experience of the court and tennis rocket.
The major task is to simulate mechanic and conditions of the ball speed and trajectory. To make it all happens we bear in mind the set of factors: the ball density, the speed of the side wind, the tennis court surface, the air density, etc.
The user is playing tennis, honing the needed cognitive and physical skills by game-like experience.
Where it can be used
Unity Job System
Team and duration
– Two 3D technical artist
– One VFX’s artist
– One sound designer and level designer
– Three C#/Unity developers
– One UI designer
– One QA
– One project manager
To build the initial version of the product