TINA HA

Rat Race

Rat Race - splash art

Generalist Programmer

Gameplay Programmer

Shaders

UI Programmer

Overview

Rat Race is an arcade game made during a 10-week long university course. It’s a 2-players co-op 3D game, where as rats the players have to use a broken down car and get as far as they can from evil scientists. Together, they have to communicate whilst driving the vehicle, dodging obstacles and navigating through various adversities on the road to escape their clutches! The arcade booth consisted of car instrument panel with 2 monitors installed, together with a car wheel, pedals and dashboard buttons.

click to see more...

Overview

Rat Race is an arcade game made during a 10-week long university course. It’s a 2-players co-op 3D game, where as rats the players have to use a broken down car and get as far as they can from evil scientists. Together, they have to communicate whilst driving the vehicle, dodging obstacles and navigating through various adversities on the road to escape their clutches! The arcade booth consisted of car instrument panel with 2 monitors installed, together with a car wheel, pedals and dashboard buttons.

Details

Time:

March-June, 2024

Team Size:

8

Platform:

Windows, PC

Engine:

Unity 2022

Check out the game!

Contribution

As a programmer, during the production of Rat Race I was responsible for:

programming procedural generation of an endless runner-based map using hexagonal tiles,

creating a cross-hatching shader,

building a persistent data highscore system

implementing the basic mechanics based on physical inputs and other game elements.

Highlights

Cross-hatch shader

Hex tile map gen

Cross-hatch shader

This cross-hatching shader has been made using Unity URP. The idea was to get that hand-drawn, sketchy look.

The shader checks how each surface is angled compared to the main light source, and based on how “in shadow” it is, it layers different hatching textures on top. Brighter areas stay pretty clean, while darker areas get more and more dense lines, kind of like how you’d shade with pen on paper.

Paired with an outline shader that me and a teammate worked on, it all comes together into a drawn, almost comic-style look. The outlines give everything a clear shape, and the hatching adds depth in a way that feels more hand-crafted than digital.

Cross-hatch shader

Hex tile map gen

Cross-hatch shader

This cross-hatching shader has been made using Unity URP. The idea was to get that hand-drawn, sketchy look.

The shader checks how each surface is angled compared to the main light source, and based on how “in shadow” it is, it layers different hatching textures on top. Brighter areas stay pretty clean, while darker areas get more and more dense lines, kind of like how you’d shade with pen on paper.

Paired with an outline shader that me and a teammate worked on, it all comes together into a drawn, almost comic-style look. The outlines give everything a clear shape, and the hatching adds depth in a way that feels more hand-crafted than digital.

Cross-hatch shader

Hex tile map gen

Cross-hatch shader

This cross-hatching shader has been made using Unity URP. The idea was to get that hand-drawn, sketchy look.

The shader checks how each surface is angled compared to the main light source, and based on how “in shadow” it is, it layers different hatching textures on top. Brighter areas stay pretty clean, while darker areas get more and more dense lines, kind of like how you’d shade with pen on paper.

Paired with an outline shader that me and a teammate worked on, it all comes together into a drawn, almost comic-style look. The outlines give everything a clear shape, and the hatching adds depth in a way that feels more hand-crafted than digital.

Takeaways

Having limited experience with Unity prior to the project, Rat Race left me a much better game designer and programmer as a result. Whilst working on it, I have learnt especially a lot about procedural map generation and data persistence in Unity. I was also able to delve into Unity’s Universal Render Pipeline (URP) and Shader Graphs.

All in all, Rat Race was a great opportunity to learn more about Unity and expand my knowledge. Given the course’s duration, which was 10 weeks, there are a few things I’d like to improve like e.g. general architecture of the code and better division into classes, so I’m looking forward to improving it in the future!

Overview

Dawn of the Witch is a single-player, narrative puzzle game developed as a vertical slice within a 10-weeks-long university course. Exploring the thematic of witch hunts in the Middle Ages, the game follows the story of Eleonore, a humble farmer that one day learns that her close friend has gone missing. As Eleonore, investigate the monastery, use magic and solve puzzles to discover the truth behind the mysterious disappearance of your friend and save her. The game has been presented during Gotland Game Conference 2025 and received the honour of winning the Public Vote Award.

click to see more...

Details

Time:

March-June, 2025

Team Size:

8

Platform:

Windows, PC

Engine:

Unreal Engine 5

Hello!

Welcome to my portoflio website!

I'm still working on improving the its mobile version, so for the best viewing experience please visit it on your desktop (full view)!

Otherwise, if you want to see more, keep scrolling:)

Hello!

Welcome to my portoflio website!

I'm still working on improving the its mobile version, so for the best viewing experience please visit it on your desktop (full view)!

Otherwise, if you want to see more, keep scrolling:)

Tina Ha | Portfolio

Email

thuytienha05@gmail.com

Current CV

Tina Ha | Portfolio

Email

thuytienha05@gmail.com

Current CV

Tina Ha | Portfolio

Email

thuytienha05@gmail.com

Current CV

Tina Ha | Portfolio

Email

thuytienha05@gmail.com

Current CV

Create a free website with Framer, the website builder loved by startups, designers and agencies.