Daniel Marques

Gameplay Programmer


I'm a software engineer passionate about creating masterpiece games and giving memorable gaming experiences.

About Me


My name is Daniel Marques. I love video games, programming and awesome cars.

I have completed an Integrated Master's degree in Informatics and Computing Engineering at the Faculty of Engineering of the University of Porto. I currently work at Ubisoft Québec as a Gameplay Programmer.

My goal in life is to make games that are appreciated as a work of art. Games that are enjoyable, immersive, story rich and unforgettable.

I spend my free time learning more about software development and computer graphics, playing video games or going for a drive.

My Skills


Programming

Proficient in C/C++. Experienced in C# and Python.

Knowledgeable in Object-Oriented and Data-Driven Programming.

Strives to write clean and elegant code.

Game Development

Able to quickly prototype.

General understanding of gameplay systems.

Experienced with Unity Engine.

Knowledgeable in Unreal Engine.

Computer Graphics

General understanding of Computer Graphics.

Basic experience with Vulkan, OpenGL and GLSL.

Enthusiastic about learning computer graphics algorithms and optimizations.

Software Development

Good communication and teamwork skills.

Experience with agile development, large codebases, documentation and diagrams.

Professional Projects


Far Cry 6

Welcome to Yara, a tropical paradise frozen in time. As the dictator of Yara, Anton Castillo is intent on restoring his nation back to its former glory by any means, with his son, Diego, following in his bloody footsteps. Their oppressive rule has ignited a revolution. Play as Dani Rojas, a local Yaran, as you fight alongside a modern-day guerrilla revolution to liberate Yara! Fight against Castillo's regime in the most expansive Far Cry to date, through jungles, beaches, and Esperanza, the capital city of Yara. Employ an arsenal of resolver weapons, backpacks, and vehicles to take down Castillo's ruthless regime.

My work on Far Cry 6 consisted mainly of bug and crash fixing and small features spanning the areas of gameplay ingredients, gameplay systems, game mode logic, physics, weapons and gadgets, vehicles, 3Cs (character, camera, controls), network replication, visual programming in quests and more.


Personal Projects


Roar

I enjoy learning about graphics programming, so I decided to create Roar: a small amateur Vulkan Rendering Engine. The project is written in C++, leveraging the more recent language features. The engine is loosely built with an Entity-Component-System (ECS) architecture using the EnTT library. Components represent meshes, lights, transforms, cameras, and graphics resources, while model loading, render passes, uniform buffer updates, and camera movement are implemented as systems. The project features a very rudimentary Render Graph which owns the render passes, uses dynamic rendering, automatically creates and destroys attachments and texture resources, and deals with layout transitions. In terms of shading, it features a Physically-Based Rendering (PBR) pipeline with Image-Based Lighting (IBL).


College Projects


Knocky Shooty

Knocky Shooty is a funfair themed virtual reality casual video game. In Knocky Shooty you can play two mini-games. In the arcades, you can shoot targets with a pistol. In the tents, you can knockdown soda cans with baseballs.

The game features both natural and teleport locomotion, diegetic interfaces, gaze-based input and spatial audio.

The game was developed for Virtual and Augmented Reality class using the Unity engine and the SteamVR plugin.


Primal Light

Primal Light is an open-world story-driven adventure video game. In Primal Light, light is literally a part of living beings. In it, you play as a character whose friend’s light faded away. You decide to go on a mysterious and dangerous adventure based on an old legend in order to pursue any chance to save your friend.

The game was developed for Computer Games Development class using the Unity engine.


Latrunculi XXI

Latrunculi XXI is a modern reimagination of Ludus latrunculorum, an ancient Roman board game.

The game was developed for Graphical Applications Laboratory class.

It features a Javascript WebGL front-end that handles input, animations and rendering and a Prolog back-end that applies the game's logic to each play and generates AI plays.


Stick Hero

Stick Hero is a game where you stretch the stick in order to reach the platforms.

This game was developed for the Computer Laboratory class.

It was built as a low-level C application, designed to run on Minix 3 operating system. It uses operating system, kernel and driver level functions to handle keyboard/mouse input, timer/RTC changes and video card output. These device functionalities were done using interrupts (event-driven programming) and polling.


Feup Evac

FeupEvac is a 2D platformer game where you play as a student studying at FEUP’s library. He’s startled by an explosion and suddenly has to face enemies, falling objects and holes in the floor. His goal is to exit the library towards safety. Once he does, he realizes he has fallen asleep while studying at the library.

The game was developed for Computer Games Development class using the Unity engine.


Contact Me!


Interested in working with me? Give me a call or send me an email!