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(s): Raimond Tunnel
Contact: raimond.tunnel@ut.ee
Degree: MSc
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.

Glass Wall Video Streams

Software

Supervisor(s): Raimond Tunnel
Contact: raimond.tunnel@ut.ee
Degree: BSc
Tools: JavaScript, WebSocket, Raspberry Pi, YouTube API

The CGVR Study Lab has a smart glass wall. This wall can be made transparent or translucent. When it is translucent, pictures can be projected onto it from inside the room and these pictures show through the wall into the hallway. This is achieved with a data projector that is connected to a Raspberry Pi. Currently, the Raspberry Pi loads a web browser in kiosk mode with a specific web browser and website. This website then uses a WebSocket connection with CGLearn to know what must be shown. The CGLearn’s Lab Admin Panel allows configuration of different content. The main issue is that, at the moment, the promotional videos are loaded from YouTube, and the streams tend to break. The purpose of this thesis is to either enhance the current solution or make a new one that would be more reliable, while still maintaining the direct control of the content through CGLearn’s Lab Admin Panel. This topic features delving into web technologies, as well as working with a Raspberry Pi.


Keywords: Web development, web communication, reliability, performance, advertisement, Raspberry Pi, JavaScript.

Lightmap Blending for Godot Engine

Software

Supervisor(s): Jaanus Jaggo
Contact: jaanus.jaggo@ut.ee
Degree: MSc
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.

Expressive Real-Time Animation Control Experiments

Experiments

Supervisor(s): Mathias Plans
Contact: mathias.plans@ut.ee
Degree: BSc or MSc
Type: Experiments
Tools: Unreal Engine, MetaHuman

This thesis topic is about experimenting with different animation control technology stacks and workflows to determine their pros and cons. The pipeline should start with textual input, which could be AI-generated but would include specific keywords (like “angry”, “joyful”, “elevated”, etc). The pipeline should end with good-looking face and body animations on a custom MetaHuman model (for example, one resembling Lydia Koidula). The input data can also include text or audio that the model should lip sync to. There are different third-party components (some, for example, mimicking Nvidia Audio2Face) that can facilitate this process between Unreal Engine and MetaHuman models. By choosing this topic, you discover 3-5 different components that can be pieced together in different ways for the full pipeline. The expected result here is to try out all the potential combinations, map out the pros and cons in the quality of the final result (as assessed by an expert), the complexity of use, licensing cost, and other discovered parameters.

Source. Note that this example uses facial capture, which we we will not use in this thesis.

Keywords: Software experiments, technology stack, text‑to‑animation‑control pipeline, MetaHuman, Unreal Engine, 3D animation, skeletal animation, blend shapes, facial animation, FACS.

Material Mapping for Grammar Editor Tool

Software

Supervisor(s): Mathias Plans
Contact: mathias.plans@ut.ee
Degree: BSc or MSc
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.

Video Game

Software

Supervisor(s): Mark Muhhin
Contact: mark.muhhin@ut.ee
Degree: BSc or MSc
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.

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

Software
Wenture

Supervisor(s): Daniel Nael
Contact: daniel.nael@ut.ee
Degree: BSc
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
Wenture

Supervisor(s): Daniel Nael
Contact: daniel.nael@ut.ee
Degree: BSc
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
Wenture

Supervisor(s): Daniel Nael
Contact: daniel.nael@ut.ee
Degree: BSc
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(s): Madis Vasser
Contact: madis.vasser@ut.ee
Degree: BSc or MSc
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.