This project started from an existing game template, and the video shows the original template next to the modified version.

I implemented proper tennis rules, improved the ball physics so shots went where the player aimed, and made the hit response much more precise instead of letting the ball fly unpredictably.

I gave the opponent more depth, added a few new animations and VFX, sped up the game loop, fixed various bugs, and added a timing circle to show when the player should swing as the ball gets closest - which also affected shot power.

Like with the rest of the template games, I improved runtime performance so the game felt smoother inside the app.
And also reduced the build size from over 30 MB to 8 MB, cutting it by more than 73%. That helped keep the game loading in under 5 seconds.