Thesis Topics

If you can not come up with your own topic, here is a list from us..

Be sure to check out our New Supervisee Form when considering doing your thesis with us!

CGLearn Improvements

Software

Supervisor: Raimond Tunnel
Contact: raimond.tunnel@ut.ee
Level: Master
Type: Software
Tools: PHP, Laravel, JavaScript, jQuery, Bootstrap, Require.js, Doctrine, DQL, HTML, CSS, Ubuntu, Apache

The development of the CGLearn learning environment started more than 10 years ago and a part of Raimond Tunnel's master's thesis. The environment is used for a number of the CGVR Study Lab's courses, thesis supervision, the lab's admin panel, and more. There are many areas of CGLearn that would need improvements. For example, the Require.js JavaScript module loader does not always load the modules in the desired order. The front-end does not work well on mobile and the CSS could be structured better. It should be migrated to a newer Laravel and PHP version. There are likely more issues to find. This practical thesis is about discovering serious issues in an existing web information system and fixing them. Previous experience with full-stack web development and with Laravel or similar PHP frameworks is required.


Keywords: PHP, Laravel, full-stack web development, web security, code refactoring.

Lightmap Blending for Godot Engine

Software

Supervisor: Jaanus Jaggo
Contact: jaanus.jaggo@ut.ee
Level: Master
Type: Software
Tools: Godot 4, C++

Baked lightmaps are still the most performant way of creating gorgeous 3D scenes. However, this can only be used for static light setting. Blending between different lightmaps would allow to change it, and it looks really convincing, for example it was used in Emotions of Love VR game. However, no major game engine supports lightmap blending, thus the goal of this thesis is to extend Godot\'s lightmap baking with this feature. This work will require deeper dive into Godot source code and decent understanding of C++ language.


Keywords: Software development, Godot, Lightmap, Light baking.

Game Development Tool

Software

Supervisor: Jaanus Jaggo
Contact: jaanus.jaggo@ut.ee
Level: Bachelor or master
Type: Software
Tools: Godot 3/4, GDScript/C++

Design and develop an useful tool for game developers of your own idea. If there is a tedious task then there is also ways to solve this. If you don't have a solution, then discuss it with your supervisor. You can also find a creative way to incorporate AI to simplify these tasks.

Here is a list of ideas that a tool could do:

  • Organize the project or help coding.
  • Balance a game or optimize its flow.
  • Write story or dialogue.
  • Plan the project and keep track of tasks.


Keywords: Software development, Godot, Tool.

Material Mapping for Grammar Editor Tool

Software

Supervisor: Mathias Plans
Contact: mathias.plans@ut.ee
Level: Bachelor or master
Type: Software
Tools: Godot 4

The Grammar Editor Tool is an app made in Godot that allows users to define shape grammar rules to procedurally generate 3D shapes, mainly buildings. While the software is capable of generating interesting buildings, textures cannot be applied to them. Your task is to make it possible to use textures and materials on the generated buildings.

The thesis topic is split into two main tasks. Firstly, during the procedural generation of the shape, UV coordinates and normals of all the vertices have to be calculated. Each face then has to be mapped to a texture or a material. Secondly, this mapping should be editable via the editor. New controls and UI elemets for the Grammar Editor Tool have to be developed. This topic is suitable for students who are interested in geometry calculations, procedural generations, and Godot.


Keywords: Software development, computer graphics, procedural generation, Godot.

Evolution of Video Games Course Material Update

Learning Materials

Supervisor: Mark Muhhin
Contact: mark.muhhin@ut.ee
Level: Bachelor or master
Type: Learning Materials
Tools: Affinity Studio, DaVinci Resolve, HTML, JavaScript

The Evolution of Video Games is a popular 3 credits online course, where participants learn a broad understanding of the field of video games in both Estonian and English. The course features weekly reading materials, educational videos, and the Virtual Tour Game learning game. The course materials are now over five years old and need updating. The work of this thesis includes identifying subjects that need to be added or changed, creating the necessary updated learning materials (both textual and videos), unifying the written material and its visual design throughout the materials, and updating the assessment methods (tasks, tests, the learning game). The course is given in the spring semester, so the materials need to be updated by then. During the active course, the quality of the created materials needs to be assessed methodolocally.

By picking this topic you get to work with different multimedia (text, images, videos, and a game) to help create quality learning materials that will be used by many students for years to come. It is highly recommended that you have taken this course yourself before choosing this topic for your thesis. It is recommended to take this topic for a master's thesis due to the scope.


Keywords: Learnin materials, didactics, visual design, learning game.

Video Game

Software

Supervisor: Mark Muhhin
Contact: mark.muhhin@ut.ee
Level: Bachelor or master
Type: Software

This is an open topic for you to design, develop, and test your video game idea. As usual with the Software Solution thesis type, you start by checking out the existing market for similar games. Then you create a unique design with some certain goal in mind. The thesis proceeds with you implementing the design. Then you need to test the implemented design on your target audience. This process can be iterated a couple of times to create a better result. The specifics will depend on your own proposed goals for the game and timeline. In the end, you have authored a video game to put into your CV, market, and build a studio around.


Keywords: Video game, game design, game development.

Game Jam Information Streaming Software

Software

Supervisor: Daniel Nael
Contact: daniel.nael@ut.ee
Level: Bachelor
Type: Software

The Computer Graphics and Virtual Reality Study Lab and the Institute of Computer Science organizes three game jam events every year. During those events, participants are in computer classrooms and seminar rooms creating their video games. The educator's computer and projectors in the rooms are utilized to show the participants relevant information. That information includes: upcoming event deadlines and announcements, QR codes to important links, and advertisement videos from event supporters. Currently, that information is shown from a specific website and a separate video player is ran to keep the PC from going to sleep. This makes relaying new information and ensuring the system is always working in every room, involve quite a lot of manual labor and constant physical checking.

During this thesis, you establish the requirements for, design, develop, and test (in an actual game jam event) a better software solution. Mostly that solution should allow for remote updating of the contents (including video and audio, also, audio alerts), live status checks from each room, and ensuring that the PC does not go go sleep while the software is running. The administrator of the software should be able to easily update the contents and see the status of each room remotely (without the need to physically go to each room separately). If time allows, you can also integrate it with the jamvote.ee API. By picking this topic, you get to design and develop a software that will be used to make game jam events run more efficiently.


Keywords: monitoring software, software requirements, software design, software development

XR (AR/VR) Functionality for a Product Configurator Tool (Wenture)

Software

Supervisor: Daniel Nael
Contact: daniel.nael@ut.ee
Level: Bachelor
Type: Software
Tools: Unity

Wenture is an Estonian company who develops helpful software tools for the construction sector. When picking this topic, you will be working on a tool that will have much benefit and use for the Estonian construction sector through Wenture.

This thesis will develop XR (AR/VR) functionality for a web-based product configurator, focusing on making the entire user interface accessible through a VR headset. The configurator allows users to design and purchase complex products (e.g. solar roof) in real time by interacting with a 'digital twin' of the real product, created using the Unity game engine and ReactJS. The goal is to ensure the user experience is fully immersive and functional in a VR environment, allowing end users to explore and customize products virtually.


Keywords: VR, Unity, software development, computer graphics, product configurator

Establishing a Workflow for Parametric Unity Models Based on 3D BIM Components (Wenture)

Software

Supervisor: Daniel Nael
Contact: daniel.nael@ut.ee
Level: Bachelor
Type: Software
Tools: Unity, Revit

Wenture is an Estonian company who develops helpful software tools for the construction sector. When picking this topic, you will be working on a tool that will have much benefit and use for the Estonian construction sector through Wenture.

This thesis will focus on establishing an automated workflow for generating parametric Unity models from Revit's 3D BIM components. The project will explore the possibilities of using tools like Unity Pixyz and Unity Reflect for smooth BIM-to-Unity data conversion. The work will emphasize the creation of a flexible and reusable workflow for parametric modeling, helping avoid the complexity of full Revit model conversion. The focus is on creating a workflow that bridges BIM models with Unity to streamline interactive 3D applications.


Keywords: Revit, Unity, software development, parametric models, BIM, computer graphics

2D DXF Product Drawings Export Tool (Wenture)

Software

Supervisor: Daniel Nael
Contact: daniel.nael@ut.ee
Level: Bachelor
Type: Software
Tools: Unity, AutoCAD

Wenture is an Estonian company who develops helpful software tools for the construction sector. When picking this topic, you will be working on a tool that will have much benefit and use for the Estonian construction sector through Wenture.

This thesis will explore the creation of a tool that simplifies the process of generating 2D product drawings in DXF format from 3D models within Unity. Ability to export 2D technical drawings is a desirable feature by production companies who are using Unity game engine to visualize their customizable products in 3D.

The project’s aim is to build on existing solutions such as Unity’s DXF Exporter or automating Make2D processes using Grasshopper, to establish seamless 2D DXF export while avoiding potential challenges with CAD file structures.


Keywords: AutoCAD, DXF, Unity, software development, computer graphics.

Mixed Reality Game for Delta on Meta Quest 3

Software

Supervisor: Madis Vasser
Contact: madis.vasser@ut.ee
Level: Bachelor or master
Type: Software
Tools: Unreal Engine or Unity

The Meta Quest 3 standalone VR headset has color passthrough cameras, allowing to show the real world environment inside the goggles. The device also features a depth sensor to enable mixed reality experiences, e.g. the virtual characters can be occluded by a real chair. The thesis is about exploring the limits of the depth sensor and building a simple game around the different use cases of the sensor. Ideally the game would use the Delta building as the real world environment.


Keywords: Software development, mixed reality, virtual reality, augmented reality.