Nell Truong - Portfolio

Need4Fish

The project

Need4Fish is a (not so) fast paced 3D race against the clock game.

In Need4Fish, you play as a juvenile mosasaur that was abandoned by their mother with one only goal: vengeance. To do that, you'll need to climb the food chain and become the new apex predator.

This projects is divided in two parts:
  • Fish Engine (our rendering engine)
  • Need4Fish (the actual game)

Fish Engine

Fish Engine is our homemade rendering engine. It runs on DirectX11 and is a static library used by our game Need4Fish.

Need4Fish

Gameplay

In Need4Fish, you eat various fishes to grow your way to being the apex predator, but you need to hurry !

Being a small creature means you're vulnerable to bigger fishes, and natural disasters (oops, spoilers!)

Status effect

Some fish give you temporary status effect, like the pufferfish that changes your vision.

Ennemy AI

In game have a very simplistic artificial intelligence, they move in a semi-random way when roaming around and start fleeing when the player gets too close.

Apocalypse

To give the player a sense of urgency, if they do not finish their run in less than 3-4 minutes, the apocalyse starts. It represents the extinctions of dinosaurs and forces the player to act.

During this event, the sun position changes, the sun's color starts fading to red, the apex mosasaur starts hunting the player and meteors start falling from the sky.

Rendering

To make our world and experience feel immersive, we've implemented a few rendering techniques, here are a few examples:

Fog & Bert-Lambert attenuation.

Fog & Bert-Lambert attenuation.

Physics

Our game uses Jolt Physics, we've used Jolt to handle collisions and simulate water physics.

You can interact with a few items in the scene, like rocks which sink and coconuts that float.

Architecture

There are a few intersting things with our architecture.

First of all, Fish Engine (our Rendering engine) is a static library that used by Need4Fish for its rendering needs.

Secondly, our game is built using a custom built ECS (Entity Component System) which makes use of a lot of templates, traits and concepts, making it easy to use components and to add new ones.

Want to try the game ?

Need4Fish has been released on Github , so you can download the game and try it for yourself !

It's as easy as downloading the .zip file, extracting it and running Need4Fish.exe. We put a lot of love and effort into this game, so we would love it if your tried it out :D.

Credits

This project was made in collaboration with: Sylvain Brunet, Alexandre Gagnon and Thierry Demers-Landry as part of our master's degree in game development. You can try the game for free and learn more on our Github repository.

Huge kudos to all the artists making free assets which we've used for our game ! You can find the complete list in the project's read me file.

Tools used