My projects

DOTS TORNADO

Converted a project in Unity from object-oriented to data-oriented

2022

DINNER CATCH

Dinner Catch is a time management delivery game set in a fantasy and whimsical underwater world.

2021

NEMCV/EASYCV

The first project I ever made in Unity. It is a walking sim with three environments.

DEEP LEARNNING ASSIGNMENTS

A collection of assignments made in my deep learning course

2022

STUDBUD

My bachelor project is about using constraint programming to program an application used to schedule a ITU student’s study time.  

TAKE ME SERIOUSLY

A project about trying to annoy the player to limit of stopping to play. The game is a 2.5D game where you play as a ball.

THE SQUIRREL GAME

Platformer game made with C++ created in the SimpleRenderEngine.  

2021

BIKESHARE

An application to share bikes developed for android written in Kotlin

MY LITTLE ADVENTURE

The first project I ever made in Unity. It is a walking sim with three environments.

2022

DOTS Tornado


A project about converting a Unity project from object-oriented (i.e. OOP) to data-oriented (i.e. DOD) using DOTS


The tornado moves in a figure-8-pattern and consists of a fixed set of particles. There are randomly created buildings and the joints of the buildings break apart with enough tornado force. The camera follows the tornado around the scene.


The two projects were compared to each other using a profiler and the Profile Analyzer package. We managed to reduce the CPU usage by half in the converted project.


LANGUAGE: C#,Data oriented


SOFTWARE: Unity, DOTS


TIME: 2 months


TEAM: 2 people


COURSE: Algorithms for Game Development


DOTS Tornado
DOTS Tornado 1
DOTS Tornado 2

LANGUAGE:  Python


APPROACH(S): Reinforcement learning, Genetic Algorithms, Deep learning, Neural networks


SOFTWARE: Visual studio, Jupyter notebook


TIME: 2 months


TEAM: individual


COURSE: Deep Learning for Games and Simulations


2022

DEEP LEARNING ASSIGNMENTS


In the deep learning assignments I have implemented: Monte Carlo tree search, Neural networks from the ground up, Q-table based reinforcement learning, Deep Reinforcement Learning, Evolutionary algorithms and Genetic Algorithms with DEAP.


2021

THE SQUIRREL GAME

ROLE: PROGRAMMER


I was responsible for the level loading, level testing and some of the level design. In addition I created the background, squirrel (and animation sheet) and platform sprites.


The objective of the game is to reach the tree at the end of each level with as many points as possible


The player has to avoid falling when navigating the platforms as well as avoid being hit by the birds in order to complete the game. Points are acquired by collecting acorns throughout the levels. The acorns can also be used as projectiles to shoot the birds


LANGUAGE: C++


SOFTWARE: Visual studio, SimpleRenderEngine


TIME: 3 months


TEAM: 3 people


COURSE: Game programming

squirrel game 0
squirrel game 1
squirrel game 4
squirrel game 3
squirrel game 2

2021

DINNER CATCH

ROLE: PROGRAMMER


I, along with the other programmer, was responsible for the above-below water transition, movement above and below water, catching bugs system and delivery system.


Once a respected pond warden, now a gofer. Life hits hard, even in fairy tales - but food ain’t gonna deliver itself


Dinner Catch is a time management delivery game set in a fantasy and whimsical underwater world. The protagonist is Anthony, once a warden frog in charge of defending the water fairy civilization at the bottom of a pond, and now their food delivery guy.


LANGUAGE: C#


SOFTWARE: Visual studio, Unity


TIME: 2 months


TEAM: 7 people


COURSE:  Making Games


2021

STUDBUD


This thesis explores how to solve a scheduling problem using constraint programming:
How to find an optimal schedule

for a university student.


Constraint programming has been proven successful when utilized in scheduling problems, therefore, we have used this approach to solve this problem using the IBM ILOG CP Optimizer. The application uses hard constrains as well as soft constraints. In the application called StudBud, the soft constraints were implemented using objective functions to minimize penalties of specific decision variable assignments.


Hello world

A schdule made by a student who do not want to work in the weekend, is an earlybird, and want to study 8 hours a day.

THE CONSTRAINTS


The IBM ILOG CP Optimizer will solve a constraint problem. In the bachelor project we made some constraints and objectives that the schedule should be made under:

  • The lecture preperation must be placed before the corresponding lecture
  • If the student do not want to study in the weekend it should be minimized
  • If the student do not want to study in the morning the schedule should minimize it
  • Each day should not exceed the number of maximum hours of study specified by the student.
  • The schedule should minimize the number of holes (no activity)
  • The schedule should place activites of the same course together

LANGUAGE: Java


APPROACH(S): constraint programming (AI)


SOFTWARE: Visual studio,IBM ILOG CP Optimizer 


TIME: 5 months


TEAM: 2 people


COURSE: Bachelor project

2021

BIKESHARE

Course: Mobile App development, Individual project


The goal was to create an application where you can share your bike with others

 

I chose to split up the functionality between the user and admin pages. The admin page can insert new rides into the database, end the ride, delete a Realm object, and list all rides. I choose to use Realm over SQLLite because when you modify an obejct you can implement it to synchronises over all devices by the help of a Realm Server. The user can look at all vacant rides, take a vacant ride, end a ride, and look at the money left on the account.


LANGUAGE: Kotlin


SOFTWARE: SQLLite, Realm Server


SOFTWARE: Visual studio


TIME: 1 months

2019

NemCV/EasyCV

ROLE: PROGRAMMER


The website can be used to create a CV with the users input

 

NemCV is a website used to create a CV by filling out the information in a form and then display to the user. Two design methods were used Design Thinking and Lean UX for the design of the prototypes. The website is built on the mobile first principle and was developed for the screen size of a Pixel 2 XL phone, and afterwards adjusted for other screen sizes. A user test was conducted and resulted simplifying the user interactions used to build the CV.



LANGUAGE: javaSript,CSS,HTML


SOFTWARE: Visual studio Code


TIME: 3 months


TEAM: 6 people


COURSE:Systematic design of user interfaces, Group project

NemCV 0
NemCV 3
NemCV 4
NemCV 5
NemCV 6
NemCV 1
NemCV 2
TMS 0
TMS 1
TMS 2
TMS 3
TMS 4

LANGUAGE: C#


APPROACH(S): Uster testing


SOFTWARE: Visual studio,Unity


TIME: 3 months


TEAM: 2 people


COURSE: High school IT project

2018

TAKE ME SERIOUSLY


This project was about trying to annoy the player to find the limit of when the player would stop playing


The game is a 2.5D game where you play as a ball. The controls are slow to annoy the player. The ghosts are also always going after the player and can go though walls to be more unfair to the player. The narrator is also not reliable to also confuse the player. We then tested the product and get feedback.


MLE 3
MLE 0
MLE 1
MLE 2

SOFTWARE: Unity


TIME: 1 month


TEAM: 2 people


COURSE: High school IT project

2018

Mit lille eventyr/My little adventure

High school IT project


The project was about creating a fantasy enviroment by using assets in Unity


This was one of my first projects ever made in Unity. It is a walking sim that has three enviroments: Forrest, mushroom and winter woods.