Welcome to my portfolio page. This page is intended to highligh some of the projects I've done over the years. Currently I'm working on a video conferencing software as a part of a Ultravideo Group at TUT which I've enjoyed. At this point however I'm most interested in working in the game industry which has been my goal for many years now. All aspects of game development intrest me, but mostly I've done programming.

Professional projects tab contains projects which I've done while working at TUT and personal projects tab contains projects which I've done over the years related to game development. I started to become interested in game development on my second year at University in 2010. In 2016 I got my Master's Degree in computer science.

Kvazzup (C++, Qt, 2016-)

Kvazzup is an open-source HEVC video conferencing application. I've written a paper on it and it was accepted to ISM 2017 conference. Kvazzup is built using several different media processing libraries along with ability to agree on call parameters. The software is built using Qt framework. I've been the only one working on it, but when I hit a though spot I ask for help from other team members. My work has mainly consisted of designing and implementing the software architecture; evaluating and integrating outside libraries; and implementing protocols based on RFC documentation.

Video call recording. (C, 2014-2015)

The subject of my Master's Thesis was the recording of a video call to an MP4 file. The project included modification to an open source video call software, an MP4 library and the VLC. The modifications to VLC were accepted to codebase and a paper on the project was accepted to ISM 2016 conference, where I presented the paper. During this project I learned some of the differences in coding C vs C++. I prefer C++ over C.

Sector 100 (C#, Unity3D, 2017)

Picture of Sector 100 game demo.

Sector 100 in itch.io

My most recent personal project Sector 100 is a 3D real-time tactics game demo made with Unity. This year I decided to make a demo to test my abilities with Unity3D. The demo turned out much beter than initially planned (and also took longe). I may do something similar someday. Models, music and most of the sounds were from asset store, but I programmed all of the game logic.

Game jams (C++, Java and C#; SFML, libGDX, Construct 2 and Unity3D; 2013-2018)

Picture of our FGJ2013 game. Picture of our FGJ2014 game. Picture of our FGJ2015 game. Picture of our FGJ2016 game. Picture of our RAY Game Jam game. Picture of our FGJ2018 game.

Game jams are events in which a team is formed to create a game in 48 hours. I've noticed my skills improving over the years when participating. I've learned from jams that good communication is really important. I've also learned that Unity3D enables to include more content in the game than by using a simple framework like SFML.

L-System (python & C++, SFML, 2013).

Picture of L-system
For my Bachelor Thesis I did a comparison of using C++ vs python in generating 2D L-systems along with visualization done with C++.

Shackle (C++, Ogre3D, 2011-2012)

At one point I decided to make a game engine based on Ogre3D. It had some nice features like context based input handling and the ability to import scenes from blender. I worked on if for about 6 months. The name Shackle was a reminder that whatever I do with this, its going to restrict the types of games I can make with it and that was part of the reason why I decided to abandon it.

Blockfall (C++, Allegro, 2010)

Picture of Blockfall
A tetris clone called Blockfall was the first complete game I made. It was playable, nothing fancy really, but a nice start to making games.

Loikka. (C++, Allegro, 2010)

Picture of Loikka game
This is where it all started. I wanted to test if it truly was possible to make games on my own.