CONTACT
Email: davidmarquezcalavia@gmail.com
Phone: +34 660 354 385
LinkedIn: https://www.linkedin.com/in/david-márquez-calavia-a52b96170/
PROJECTS
Nehan
This is my master’s final project, which isn’t finished yet. It’s a platform and puzzles 3D game where the main character has three different time-related powers, including rewinding, slowing time down and creating a copy of himself to do a task and then replay what the clone copy did.
The team is formed by more than fifteen people from different roles such as marketing, production, art, design and programmers, being myself in this last one discipline. As a student in videogame development I’m trying to learn as much as I can about every aspect of the development, such as gameplay, AI, computer graphics, technology and user interface. The game it’s being developed using Unreal Engine 4.
Here is a link to a playthrough of the game and here the itch.io page of the project.
Cactus es amor
This is a 2D action videogame that I made along some colleagues for the Spain Game Devs Jam II in about a week using Unity.
In this project I focused on gameplay and AI features. A interesting aspect of the project is that we used steering behaviours for all the enemies. Because of that we had some perfomance problems because all the AIs where accessing the position of every other enemy on the scene within a range to calculate their trajectory. To avoid this, we made a grid that had a reference to every enemy that was over that cell, and the enemies looked for the adjacent cells and calculate its trajectory.
The code is a bit messy and the game is not polished as we had little time to develop it, but ended up pretty fun in my opinion.
The game can be played here and the repository with the source code can be found here.
Devil Daggers (again)
This is yet again another cheap copy of the videogame developed by indie company Sorath, Devil Daggers using a custom engine in C++ and programming the game logic in LUA.
A teacher of the master provided us a custom engine with all the LUA integration made for us to make a 2D pong-like game in about a week. Instead of using it, a colleague and I decided to use his engine build from scratch coded with vulkan as the graphic API to develop a 3D videogame.
For this project, I worked on the physics of the little engine, implementing spheres, capsules and the collisions between those combinations in C++, because that’s all we needed for the videogame. I also developed the AI for the enemy, using steering behaviours in order to avoid checking collisions between all the enemies in the scene (enhancing the performance) and it looked very nice and natural.
It’s not the most flashy or intricate videogame, but it was a very good oportunity to use a scripting language such as LUA to code all the logic and to implement a little engine in about a week.
The game is not finished at all, but it can be found in one of the branches with all the source code here, where my colleague is still developing his engine.
Repair URSS
This is a 2D top-down action videogame that some friends and I develop for the Global Game Jam 2019 in just two days using Unity. The code word for the Jam was “repair” and we came up with this fun twist for that concept.
In this project my main focus was the gameplay, where I spent most of the duration of the Jam. In my opinion, the most interesting things about game is that, even though the size of the map is fixed, the layout of the different assets was generated randomly while loading the level using a custom algorithm for that. Provided the limited time, the game ended up pretty fun but unpolished, as it was expected.
The game can be played here and the repository with the source code can be found here.
Efficient Sampling of Elliptical Lights
This is my University final project, where I used the physically based Mitsuba Renderer to implement an algorithm to efficiently sample the subtended solid angle of a elliptical light, allowing lower variance in the final result than previous work. In this project I had the chance to do my final University project within the Graphics and Imaging Lab research group, surrounded by some of the best researchers in the area. It was a great experience and aroused my curiosity around Computer Graphics research.
Here are some renders using my algorithm.
Non-real Time Renderer
This is a little non-real time renderer implemented while at University using both path-tracing and photon-mapping techniques. Apart from implementing different geometries and materials, it also implements participating isotropic media. I really enjoyed this project and it helped me a lot in the understanding of 3D mathematics and physically-based image rendering.
Here are some renders using this project:
Here is the repository where all the source code is stored.
Devil Daggers
This is a project that two colleagues and I had to develop for a subject while at University. It is also the first videogame I ever took part in. It was developed using OpenGL and C++.
It is a cheap copy of the videogame developed by indie company Sorath, Devil Daggers. The game we developed had the alternative of either a 2D top-down shooter version or a 3D FPS version (just like the original game). I worked mainly on the gameplay and AI part of the game, while also using briefly the computer graphics API OpenGL.
Here I upload two captures of both de 2D and 3D version of the game.
Here is the repository where all the source code is stored.