I am a Game Programmer working at Mino Games.
I also worked at CERN
I am currently based in Montreal (Quebec, Canada)
I design and develop amazing software, middleware and videogames along with fantastic people
•
I am currently interested in learning about interesting opportunities
Let's chat! Send me a message at fantunes.dev@gmail.com
The first step in video games. A good game has to start with good Game Design, so player experience can be as good as possible
This was the main topic of my first studies.
Programming games is what I aim to do for my whole life. Designing and programming a game from scratch is my passion.
Releasing a game doesn't always mean it's the end for the project. Updating the game with new features and fixing any possible bugs that may occur is also part of my daily worklife.
• Gameplay Programming
• User Interface/Experience (UI/UX)
• Tools Programming
• Architecture and Optimisation (Memory/CPU)
• Unity (C#)
• Unreal Engine 4 (C++/Blueprint)
• Engine Programming
• C#, Lisp, C++, .Net, Javascript, Haxe
• Notions of HTML5, CSS and bootstrap
• Game Mechanics Design
• Game Design Documents redaction
• Level Design & Building
• Notions of Rational Game Design
• Balancing
• Story-Telling
• User Experience and Interfaces (UX/UI)
• Focus on Feedbacks and Player Interactions
• Progression Systems
• Passion for video games
• Teamwork and spreading positivity
• Collaboration and Communication
• Problem Solving
• Ability to Work Under Pressure
• Adaptibilty
• Creativity
• Proactivity
• Eagerness to Learn New Things
After working at C.E.R.N. I wanted to learn more about Game Engines. After only two years, I developped an entire 3D Game Engine with an editor from scratch
I studied Game Design at Bellecour Ecole during two years
I was Valedictorian for the whole second year
I was also introduced to Level Design and Programming there
Dimensionals is a video game we developed at Mino Games using Unity as our view for our C# code.
Brace yourself for the ultimate Saturday Morning Cartoon adventure!
Dimensionals is a roguelike turn-based RPG with dozens of heroes from different dimensions to collect and level up. You can fight the spectres in a party of three and combine hundreds of their unique skills to create insane combos.
Teleport yourself back to the glory days of the 90s with the Dimensionals radical story campaign, told through voice-acted, animated, comic-book style cutscenes.
Only once you have assembled the Dimensionals can you defeat Ragnarath!
Type: Video Game
Genre: 2D Rogue-like RPG
Platforms: PC, Mac, Steamdeck
Date: Jul 2022 - Now
Team: Mino Games
Store Link: Go to Steam!
On Dimensionals I worked as a generalist game programmer
I worked on :
• The prototype, initially by myself
• Most of the initial architecture ideas of the game
• Game content gameplay : mechanics, skills, battles
• Art Integration : Characters, Animations, VFX, UI
Cat Game transports you to a colorful world where you collect adorable cats, care for them, and build your dream cat Tower!
Full of imagination and humor, Cat Game lets you play with your friends or in solo across a variety of special events and contests to win unique prizes like the very rare Legendary cats!
The game features:
Type: Video Game
Genre: 2D Collector
Platforms: iPhone, Android
Date: Aug 2020 - Aug 2022
Team: Mino Games
App Store Link: App Store
Google Play Link: Google Play
On Cat Game I worked as a generalist game programmer
I worked on :
• Whiteboxing the game and engine to allow for an easier flow with Dog Game
• Integrating the art, animations and UI
• Adding and updating SDKs
• Improving the game's performance and storage management
• Maintaining and deploying game updates and live-content
• Creating new features
• Implementing analytics solutions
Dog Game is simple yet highly-addictive! To play, all you need to do is collect different kinds of cute and unique dogs and build a home for them. You can craft decorations and create lovely rooms in your Dog Tower and unlock cute new dogs every single day.
There are over 900 dogs you can collect!
The game highlights:
Type: Video Game
Genre: 2D Collector
Platforms: iPhone, Android
Date: Aug 2020 - Aug 2022
Team: Mino Games
App Store Link: App Store
Google Play Link: Google Play
On Dog Game I worked as a generalist game programmer
I worked on :
• Whiteboxing the game and engine to allow for an easier flow with Dog Game
• Overseeing the game's prototype from genesis to fruition
• Creating new features specific to this game
• Integrating the art, animations and UI
• Maintaining and deploying game updates and live-content
• Implementing analytics solutions
Picture's source : CERN
HEAL is a video game developed at the CERN Media Lab. Its aim is to introduce Hadron Therapy to the public. It was first shown during The Automnales, 10-19 November 2017.
It runs on LIT, a fully immersive and interactive platform made by the Media Lab for exhibitions and Science Centers.
Using Kinects, a screen wall and Projectors, the player can interact with our applications using real-life movements.
Alone or with one or two friends, the player can control the machines in order to operate the gantry using his hands as controllers, and cure a patient's tumor or cancerogenous cell.
Using CERN's particle accelerator technologies, Hadron Therapy is the safest way to cure dangerous tumors or radio-resistant cancers located in unaccessible (or dangerous) zones, such as the brain, the eyes, or the space behind it. Unlike radiotherapy, Hadron Therapy does nearly no damage to the rest of the brain cells, making it an extraordinary tool.
Type: Video Game
Genre: Serious Game
Platform: LIT (Large Interactive Tunnel)
Date: Oct - Nov 2017
(2 Months)
Team: CERN Media Lab
Programmers:
- J. Pequenão
- A. Vasilakopoulos
- F. Antunes
UI/UX Designer:
- C. Leon Aguilera
On HEAL I worked as a gameplay programmer
I worked on :
• The gantry's AI and part of the core features
• The stages progression, validations and endings
• Protons behaviours and animations for both the floor (see the accelerator on the floor) and the side screens (the ones with the brain and machines)
• Sound implementation
Picture's source : CERN
Proton Football is a video game developed at the CERN Media Lab. Its aim is to introduce Proton on Proton collisions to the public. It was first shown during The Automnales, 10-19 November 2017.
It runs on LIT, a fully immersive and interactive platform made by the Media Lab for exhibitions and Science Centers.
Using Kinects, a screen wall and Projectors, the player can interact with our applications using real-life movements.
Along with a friend, the players can shoot a proton - using their own feet - in the direction of the other proton. If both protons collide, matter turns into energy, and a lot of new particles are created, all having different colors for visualisation. Sometimes we can even see a Higgs Boson.
At CERN, a lot of interesting and very complex science occurs every day, multiple times per minute. The Large Hadron Collider, a 27km ring below Geneva, Switzerland, collides protons to look for new particles. Explaining why and how is sometimes complicated, and Proton Football is an easy and fun way to introduce the public to the biggest and most well known equation of the 20th century, E=MC2.
Type: Video Game
Genre: Serious Game
Platform: LIT (Large Interactive Tunnel)
Date: Mar-May 2018
(2 Months)
Team: CERN Media Lab
Programmers:
- J. Pequenão
- F. Antunes
UI/UX Designer:
- C. Leon Aguilera
On Proton Football I worked as a UI programmer
I worked on :
• Porting the game to a 16:9 version
• A complete overhaul of the in-game UI, for both the screens and the floor
• Creating a data visualizer for the proton energy
• presenting the game to stakeholders and the public
DISCOVERY WALL is a tool developed at the CERN Media Lab. At first, its purpose was to provide an ultra dynamic multipurpose presentation tool to be used at the Microcosm, the permanent public exhibition at the CERN site of Meyrin. Later, we thought it would be interesting to rework it to be not only used by us, but everyone who would like to.
At the Microcosm, you will be able to see the Discovery Wall, in the "Discoveries" zone. This Discovery Wall instance is an interactive Timeline, where you can learn about some of the most important CERN discoveries.
It runs on LIT, a fully immersive and interactive platform made by the Media Lab for exhibitions and Science Centers.
Using Kinects, a screen wall and Projectors, the player can interact with our applications using real-life movements.
Using hand swipe movements, you will be able to jump from one discovery to another, ordered by date.
To use it, you will first need to add your medias (pictures, texts, videos) to a folder on your hard drive, then you can configure them (sizes, positions, spawn times... and many other options) using a Json file. Everything gets read from these Json files, and your presentation is built upon them.
Type: Tool
Genre: Presentation
Platform: LIT (Large Interactive Tunnel) | PC
Date: Dec 2017 - Feb 2018
(2 Months)
Team: CERN Media Lab
Programmers:
- J. Pequenão
- F. Antunes
UI/UX Designer:
- C. Leon Aguilera
On the DISCOVERY WALL, I worked as a programmer.
I worked on :
• The category selection & animations
• The stations bar and navigation
• Visual feedbacks (such as the wheel spin)
• The language selection reading Json files
LHC Simulation Dashboard is a Video Game developed at the CERN Media Lab for the Microcosm. It can be played for free at the permanent public Microcosm since October 2017.
Do you know how the Large Hadron Collider (LHC) works ? Maybe you do, but what about challenging yourself to run it in this friendly simulation-based game ?
Go through all the preparation stages ! Starting with the RF cavities, you will be able to accelerate the protons, which will then be sent to the dipoles, where you will bend and correct the protons trajectory using big magnets, just before going to the quadrupoles, where you will squeeze them to keep them aligned and together.
The last stage, which is to aim the protons to the center of the detector will be comming soon.
Type: Tool
Genre: Presentation
Date: Dec 2017 - Feb 2018
(2 Months)
Platform: Touch Screen PC
Team: CERN Media Lab
Programmers:
- J. Pequenão
- A. Vasilakopoulos
- F. Antunes
UI/UX Designer:
- C. Leon Aguilera
On LHC Simulation Dashboard I worked as a programmer. I joined the 3 years old project in the last 2 months.
I worked on :
• A system for Inactivity detection to be used with all applications from the MediaLab
• A Method to send an E-Mail with various stats from the game, to be used for statistics
• Optimisation: The game was very laggy before I arrive, and ressource intensive. It is know working better
• The new UI integration
• Some bug fixes
Identity is a 3D Game Engine and Editor we made during our second year at ISART Digital Montréal. Its aim was to provide a simple and user-friendly game engine for game developers. Development has started in January 2020, and the project was due by June 3rd 2020. In total we had only 4 months to do it (we had another project in between)
When we first started thinking of what we wanted our engine to be, we thought about the K.I.S.S. principle, and decided it should be this principle that would be the guideline for our project. We want to keep it simple on both the Engine and the Editor usage, so that we can easily change or implement new features in our engine, but also that people can use them without too much trouble.
The engine is targeted for 3D PC Video Games, was made using C++ and is based on an Entity Component System (ECS). It runs on DirectX11 and Win32 windows for the Rendering part, uses Assimp to load objects, Bullet for Physics and Irrklang for sound
We have the ability to load objects from common 3D formats, save and load scenes using our home-made serialization system and basic lighting, sound, and an Editor with a Hierarchy and Inspector to help you easily and fully utilize all the features our game engine provides.
Type: 3D Game Engine & Editor
Platform: PC
Language: C++ (Engine & Editor) and Python (Scripting)
Date: Jan - Jun 2020
(4 Months)
Team: Looking For Group
Programmers:
- L. Gadeau
- F. Antunes
- G. Meloche
On Identity I worked as an Engine Programmer
I worked on :
• The renderer and ability to use render-to-texture
• The objects display as well as the lighting, shaders and matrices
• The input system, using Raw-Input
• The quaternion-based free camera
• The UI and Editor
Have you ever wondered what it would be like if you could actually live your toys's fights when you were just a kid ? Well, now we can give you a look ! Let's go on a journey inside a tank fight in your cardboard arena !
Just like it probably would in real-life, your RC tank will shoot farther if it has speed, so do definitely try to peek up some speed, or try to find extra batteries to give yourself a boost ! But beware of the recoil when you shoot, it will slow you down ! And everyone knows a slow target is a dead target !
Along with two to four friends, fight to determine who is the best tank pilot of all ! Load your nerfs, take your remotes, and fight until one of you're toys runs out of battery !
Follow the development of the game step by step with our development gifs
This page is still W.I.P. more content (including gameplay video (the one you are seeing is raw footage)) will come soon !
Type: Video Game
Genre: Multiplayer Shooter
Platform: PC
Date: March 2020
(3 Weeks)
Team:
Programmers:
- F. Antunes
3D Artists:
- A. Rampaly
- J. Leduc
- G. Hamze
- T. Hervochon
On Panzer League I worked as a gameplay programmer
I worked on :
• The tank controller, camera, shots and trajectories, and general feel
• The multiplayer and split-screen managers
• The wheel animations
• The UI and victory conditions
• Objects implementation in Unity
• Collectibles, health and armor system, power-ups
Welcome Architect !
In this 2D Mobile Game, you will be tasked to raise sculptures for the pharaoh's latest palaces.
Start by placing anchor points, you don't want your sculpture to wiggle its way to the top !
Once you're sure that your center of gravity is being well pulled, you may ask your workers to pull the ropes and raise the sculpture to the predefined location. But watch out ... ! Make sure you don't hit anything on the way or you might break it in pieces !
The game's Beta has been made available in the Google Play Store, you might check it out here
Type: Video Game
Genre: 2D Puzzle Game
Date: Jan 2017 - Feb 2017
(6 Weeks !)
Platform: Android Mobiles
Team: Gamasticots
Programmers & Game Designer:
- T. Jacquin
- K. Desbrosse
- F. Antunes
2D Artist & Game Designer:
- C. Perrin
Raise The Sculpture was my first real experience with C#, and everything since the start made it a very interesting project. We were 4 Game designers with little (no) idea how to develop this concept. And we had only 6 weeks to have our game ready. But we decided to accept the challenge, and if the first two weeks of research were hard, the day we got our core features working was probably the most rewarding ever.
On Raise The Sculpture I worked as a Programmer, Game Director, Game Designer and Sound Designer.
I worked on :
• The rope pulling script & rope rendering
• The FXs, visible throughout the game
• Level Design, I made half of the game's levels
• All design documents
• The sound design and implementation
• Managed a team that had no idea where to start
Skeletal Meshes allow us to have animations easily integrated in video games. The first step was having to recreate the bones from the original animation file. From this point on, we can already play the animation in a sort of a stickman generated from the bone lines.
The second step is known as hardware skinning. It's making sure all the vertices follow the bone displacement so that we have an character moving.
The third step is interpolating the keyframes. An animation is usually 30 frames per second, which would give a very sloppy animation if we didn't interpolate keyframes. Using interpolations, we have fluid movement, and it's like we generate animation frames that weren't there to start with.
Type: Game Engine Tool
Platform: PC
Date: Nov 2019 - Dec 2019
(1 Week)
This project was not a team project.
All the code is written by me.
I worked on :
• Creating and displaying mesh's bones
• Creating a shader that allows for hardware skinning
• Interpolation frames for fluidity, as well as the ability to change animations and animation speed on the fly
• Creating a visual marker that shows what frame of the animation we are at right now.
• Implementing and testing our newly developed math library, including usage of Quaternions for rotations.
Multithreading has a lot of advantages. It is the concept of using all the cores and threads of the cpu, to run multiple instances of a code in one go.
Using it in some very specific cases, we can have very performant and optimised tasks being done. For example, this project, developped at ISART at the start of the second year, was to create a multithreaded Resource Manager.
Having the Resource Manager multithreaded allows us to load objects asynchronously, so we don't have to wait for all of the objects to load to play. Imagine an Open-World game, where the loading is seamless, because we're loading and unloading objects asynchronously, we don't have waiting/loading times !
Type: Game Engine Tool
Platform: PC - 1st year OpenGL Game Engine (ISART)
Date: Sep 2019 - Oct 2019
(2 Weeks)
This project was not a team project.
All the code is written by me.
I worked on :
• The OBJ parser, capable of reading files in .obj format, a commonly used format for saving objects
• The multithreaded resource manager
• The capability of loading and displaying objects on the fly, a technology our 1st year engine (ISART) didn't have
This chatbox was our first project on the wild world of low-level Network Programming at ISART Digital
It allowed us to understand the fundamentals and differences between UDP and TCP protocols, as well as the general usage of Network logic applied to code.
This project was a very short introduction, it lasted only one week.
Type: Game Engine Tool ?
Platform: PC
Date: Oct 2019 - Oct 2019
(1 Week)
This project was not a team project. All the code is written by me.
I worked on :
• The client/server connections and message handling
• The formatting of the console messages
• Establishing TCP protocols
During my studies of Game Design at Bellecour Ecole, we all had to study Progression & Reward Systems. I decided to do it on The Witcher 3 : Wild Hunt, which has a very interesting Progression and Reward system.
Type: Document
Genre: Progression & Reward Systems analysis
Date: May 2017
If you can't see the pdf correctly up here, use this link
During my studies of Game Design at Bellecour Ecole, we had to study an interesting but not too complex Camera | Character | Controls (3C) . I decided to do it on the amazing Limbo.
Type: Document
Genre: 3C analysis
Date: Sep 2016
If you can't see the pdf correctly up here, use this link
Scorpio is an Unreal Tournament 3 FPS map. It is a symetrical strategical map that enphasizes both vertical and horizontal fight, with long corridors and flying platforms.
For this map I wanted to give the super boots more use, so that it would be a high risk high reward to get the boots, and still make it balanced.
Type: Level Design | Map
Genre: UDK Capture the Flag | FPS
Date: Apr 2017
Scorpio was my first ever experience with UDK|UT3. It served two purposes :
• Show my Level Design skills
• Discover a new Development Kit, UDK.
Viking Expansion is a scenarised Age of Empires 2 (AOE2) map and campain. It is meant to be a DLC to the original AOE2 campain, and aims to show the power of the Vikings at that time. The Vikings are never played throughout the original campain, and I thought it would be a nice addition to add these mythical warriors to the battleground. Every part of the campain is scenarised, you will have objectives, items to retrieve, units to build, and places to discover, including one secret place that can give you a big advantage !
Type: Level Design | Map & Campain
Genre: 4X DLC
Date: Apr 2017 - June 2017
Programming isn't about what you know; it's about what you can figure out.
A great way not to make money is to make something you don't believe in.
One man's constant is another man's variable.
•
I am currently interested in learning about interesting opportunities