Taken thesis topics

Already taken thesis topics

Advanced Computer Graphics Learning Materials

Supervisor(s): Raimond Tunnel
Degree: MSc
Tools: JavaScript and/or C++

The base Computer Graphics course has been popular for many years. Every time there are students who would like to learn more. Currently that learning takes place in CGS and during thesis work. However, there could be an Advanced Computer Graphics course, which would continue the base course. This thesis consists of the creation and conduction of such a course. This means that establishing the learning outcomes, creating the materials and actually conducting the course. It would be a 6 credits course conducted in the Spring semester.
Some common topics possible in the course:

  • Deferred Rendering
  • Post-Processing Effects
  • Procedural Generation
  • Physically Based Rendering
  • Volumetric Rendering
  • Fractals
  • Real-Time Global Illumination (maybe)
  • Modern GPU Capabilities (maybe)
  • Virtual Reality (maybe)

Keywords: Computer graphics, learning materials, advanced rendering techniques, procedural generation, volumetric rendering, fractals, physically based rendering.


Thesis Text Analyzer for CGLearn

Supervisor(s): Raimond Tunnel
Degree: BSc or MSc
Tools: JavaScript, PHP, Python, MySQL

In the CGLearn learning environment the drafts of student theses are analyzed weekly. In 2020 Karl Erik Karindi created for his BSc thesis a collection of Estonian language analyzers for academic texts. CGLearn uses an API to use the created analyzer.
This topic is about advancing these analyzers and creating similar ones for also the English language. Additional analyzers could also be implemented. For example to detect common issues specific to Raimond’s supervision and computer graphics related works. Good visualization of the text issues is welcome.
The user experience of the weekly reports and shown analysis in CGLearn should be improved. For example if the analyzer detects a false-positive problem in the text, the user should be able to mark that issue to be ignored in subsequent reports. So that the same false-positive would not show up every week.
The Thesis Text Analyzer is implemented in Python. CGLearn is implemented in PHP (Laravel framework and Doctrine ORM).

Keywords: Data visualization, text processing, text analysis, metric, teaching tool.


Glyptics Portrait Generator – Gem Effects (taken)

Supervisor(s): Raimond Tunnel
Degree: BSc or MSc with PBS
Tools: C++, GLSL
Type: Software, Independent Study

In 2020 the Glyptics Portrait Generator exhibit for the UT Art Museum was made by Vladyslav Kupriienko for his MSc thesis. Unfortunately he did not manage to implement any optical gem effects. In this thesis you can delve into the research and solutions for implementing those effects. For example faced gem rendering, adularescence, chatoyancy, asterism, aventurescence, color change, iridescence, play of color and pleochroism. Potentially creating your own solutions for some of them.
Doing this thesis successfully gives you good computer graphics skills. As well as experience working on a real exhibit. Do check out the Rendering Precious Gems presentation (slides, recording) for more information about the effects.

Keywords: Computer graphics, physically-based shading, optical effects, gem effects, GLSL, shader programming, C++, exhibit.


Glyptics Portrait Generator – Physically-Based Shading (taken)

Supervisor(s): Raimond Tunnel
Degree: BSc or MSc with Gem Effects
Tools: C++, GLSL

In 2020 the Glyptics Portrait Generator exhibit for the UT Art Museum was made by Vladyslav Kupriienko for his MSc thesis. The current solution renders the visitor’s face with plaster, amethyst and gold materials. In this thesis you can learn physically-based shading techniques and make sure those materials follow those and look better. You can also create some new materials like agate or marble that would use noise to create a nice texture pattern. Also engravings were sometimes made on materials with different layers, so you could implement an approach where details are distinguished based on the engraving’s depth.
Doing this thesis successfully gives you solid skills in physically-based materials and procedural texture generation. As well as experience on working with a real exhibit.

Keywords: Computer graphics, physically-based shading, procedural textures, GLSL, shader programming, C++, exhibit.


Video Wall Game (taken)

Supervisor(s): Raimond Tunnel
Degree: BSc or MSc

The CGVR lab has a smart glass wall, which can be used as a video wall. Right now we have a promotional video displayed on it during lab events. The projector displaying the picture is connected to a Raspberry Pi 4. In this thesis you can design and implement a game for the video wall. The game can be controlled via an xbox controller or you could try to incorporate a depth/RGB camera, which would then be mounted near the wall. The wall consists of 3 panels, so your game design should take this into account. For example the game world could consists of 3 separate rooms and there would be portals between them.
This thesis gives you experience in unique game design and exhibit development. You also learn to optimize your game code as it is supposed to run smoothly on the Raspberry Pi.

Keywords: Software development, game development, game design, exhibit design, Raspberry Pi.


VR Headset Study (taken)

Supervisor(s): Raimond Tunnel
Degree: BSc

The goal of this topic is to find comparative results for different popular virtual reality headsets. For this you can do a blind study, where participants are put into VR with one of the studies headsets. They will play some games and then have to answer about their user experience. Among the UX questions are some questions about the headset (visual quality, ergonomics, wire/battery issues). The headsets in study are Varjo VR-1, Oculus Rift CV1, Oculus Quest and HTC Vive Pro.
This is a relatively simple topic, which gives you experience in performing controlled studies. If you have no previous experience with VR before, then this is also a great opportunity to get that. You may also find a few similar studies from scientific literature and compare your own results with theirs.

Keywords: Virtual reality, headset, head mounted display, Oculus Rift, Oculus Quest, HTC Vive Pro, Varjo VR-1, headset ergonomics, headset visual quality, blind study.


Futuclass AR (taken)

Supervisor(s): Raimond Tunnel
Contact: Kristen Tamm
Degree: BSc or MSc
Tools: Unity

Futuclass is an educational virtual reality (VR) game that teaches natural science subjects. The focus is primarily on chemistry and physics. The educational game is designed to provide an hands-on experience. The VR game is developed by Futuclass OÜ located in the Delta Centre’s Business Building.
The goal of this thesis is to create an augmented reality (AR) counterpart of Futuclass. The solution could be either via mobile AR or with dedicated affordable glasses. The subject is the balancing of chemical reaction equations. The chemical elements are represented by physical cards. The software solution should track the markers on those cards. The user should manipulate the cards to produce chemical reactions, which then should be visualized on the molecular and atomic level via AR. This is somewhat similar to MoleQL application.
The company expects a usable prototype. They are ready to consult you and even financially support your studies if the prototype is good. During this thesis you acquire skills to work on educational software design, develop AR software solutions and experience working with a company.

Keywords: Software development, Unity, augmented reality, educational software, game design.


Stylized 3D Depth of Field (taken)

Supervisor(s): Raimond Tunnel, Santiago Montesdeoca
Contact: santiago@artineering.io
Degree: BSc
Tools: Python, GLSL/HLSL, Flair, Maya

Artineering is a company in Tallinn specialized in real-time stylized rendering of 3D animation. They want to incorporate new art-direction tools within their stylized engine, while nurturing talent to potentially expand their team.
Your task will be to survey state-of-the-art real-time depth-of-field algorithms and implement them in Flair. The review and implementation will give you the experience necessary to later expand your work creatively and develop your own stylized depth of field effect. You’ll be working mostly with shading languages such as GLSL/HLSL and will also need to modify some things with Python using Flair ether as a standalone or as a plugin for Autodesk Maya.
This project is ideal for Bachelor students looking into learning and expanding their knowledge about shader languages and image-processing. A positive outcome of your work will be integrated into the Flair shader library to be used in production worldwide.

Keywords: Computer graphics, post-processing effect, depth of field, art tool, Maya.


VR Live Stream of Remote-Controlled Racing Cars (taken)

Supervisor(s): Raimond Tunnel
Contact: Rainer Paat (rainer@rcsnail.ee)
Degree: BSc
Technology: Oculus Rift + Unity or Unreal

RCSnail is a company in Tartu who has created a remote-controlled car racing track in the Eeden mall. They already show a live video stream from the remote-controlled cars to the players. Now they want to improve the experience and show that video stream through a VR headset so that the players would be more immersed in the recreational activity. The company is very interested in this solution, likely an additional supervisor from the company will assist you and there is a possibility for getting paid for the work.
Basically, the end goal is to achieve this: https://www.youtube.com/watch?v=Q80oCX629xE


Keywords: Software development, virtual reality, video stream, UX.


Space Stuff Rendering

Supervisor(s): Raimond Tunnel
Degree: BSc or MSc
Tools: Blender (or other)

There is a YouTube channel called Science & Futurism with Isaac Arthur, where Mr Arthur discusses a lot of space and science fiction related ideas. The videos include 3D visualizations of different discussed things. The goal here would be to render some interesting space-related phenomena. Think about the landscapes of alien planets, weird atmospheric effects or storms on those planets, all sorts of stars, nebulae or even black or white holes. Of course also things like aliens, space ships and even megastructures like Dyson swarms. The challenge is to understand the physical and optical properties of space-related effects and render them as accurately as you can. There’s likely tons of literature of such topics and if you manage to render some cool-looking clips then maybe they can be used in the aforementioned channel.

Keywords: Computer graphics, rendering, simulation, astronomy.


LiDAR Scanned 3D Nature Asset Library (taken)

Supervisor(s): Madis Vasser
Contact: Madis.Vasser@ut.ee
Degree: BSc
Tools: iPad Pro, 3D modelling software, game engine of choice

Estonian wilderness is being destroyed at an alarming pace by industrial activities. In order to capture the memory of this unique ecosystem, 3D assets of various objects and whole scenes could be scanned. Using the latest LiDAR sensor on the iPad Pro 2020, the goal of the project will be to get experience with scanning different large natural environments under various lighting conditions, working our a pipeline for cleaning the resulting meshes and building a library of optimized assets that could be used in reconstructing the scenary of Estonian nature in 3D. While professional-grade LiDAR scanners have been used in the forests before, usually the aim is to just measure the sizes of trees. The current project puts emphasis on the visual aspects of the scenes.
The output of the project should be dozens of high-quality 3D objects and a demo level that showcases the objects composited together to form a novel virtual scene.

Keywords: Computer graphics, LiDAR, environmental scanning, asset creation, compositing.


Glyptics Portrait Generator – Improvements

Supervisor(s): Raimond Tunnel
Degree: BSc or MSc
Tools: C++, Ogre3D

In 2020 the Glyptics Portrait Generator exhibit for the UT Art Museum was made by Vladyslav Kupriienko for his MSc thesis. While he tried to use a RealSense SR305 depth cam for capturing visitors’ face, in the end he resorted to only using RGB data from a regular web cam. In this thesis you can explore and implement viable solution for combining depth data with the RGB data to create a more accurate representation of the face.
You can also optimize the existing or your new solution to work faster on the tablet computers used by the UT Art Museum. Additional UX improvements can also be made here. Doing this thesis successfully gives you good 3D data analysis and manipulation background as well as experience with C++ and the Ogre3D rendering engine.

Keywords: Computer graphics, 3D data manipulation, 3D face scanning, meshing, optimization, C++, Ogre3D, exhibit, UX.


DeltaVR (taken)

Supervisor(s): Raimond Tunnel
Degree: BSc or MSc (with multiplayer)

Create a virtual reality experience inside the virtual Delta building. We have the 3D model of the building, but it may need tweaking and improvements to work better in VR. You can design your own fun and unique experiences that people could do in the virtual world inside Delta. It could be game too, although it should be non-violent as the environment is based on a real location.
During this thesis you can learn virtual reality experience development, 3D modelling and optimizations and likely some game design. For BSc this topic can be tackled with a friend, who would add multiplayer. For MSc adding multiplayer capabilities should be part of the thesis.

While this thesis is taken, you can join the project through the multiplayer development thesis.

Keywords: Software development, virtual reality, digital twin, game design.


DeltaVR – Multiplayer (Taken)

Supervisor(s): Ulrich Norbisrath
Degree: BSc
Tools: Unity, Blender

This topic is about adding multiplayer support for the DeltaVR application. Multiple users from both virtual reality and desktop should be able to explore the virtual Delta building and do activities there at the same time. The users should also be able to interact with each other. Designing the multiplayer interactions is part of the thesis.
This thesis gives you solid experience in both multiplayer and virtual reality software development.

Keywords: Software development, virtual reality, interaction design, multiplayer.


Delta Building Visualizations

Supervisor(s): Raimond Tunnel
Degree: BSc or MSc
Tools: Unity, Blender, Git

The institute wants you to create some nice visualizations to be displayed on big screens in the lobby of the new Delta building. Already five Bachelor students have worked on the project by visualizing the 3D Delta building, the people movement in the building, the schedule of activities and the weather. See the DBV project page for further details.
So a thesis here would be a continuation of the project. There can be several theses that work on this project, so you can collaborate with a fellow student here. Some possible avenues could be:

  • Creation of an admin tool for debugging different situations. (done)
  • Further optimization of the actors. (done)
  • Better pathfinding and activity planning for the actors. (done)
  • Fancier rendering techniques for the building, weather etc. (done)
  • Consistent rendering style and techniques for interior and exterior. (in progress)
  • Actual integration with the Study Information System 2.0 API. (in progress)
  • Refactoring, bug fixes and optimization. (in progress)
  • Final hardware setup in the Delta building. (in progress)
  • Web version of the visualization.
  • Some new idea what to add to the visualization.

As the project will go live in the Spring of 2020, you will get a chance to work on the actual video walls and the Delta building.


Keywords: Computer graphics, visualization, exhibit, stylized rendering, optimization, multi-agent system.

3D Model Edge Chamfering

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc
Tool: Unity

Often the 3D models in games do not look as good as pictures made by 3D artists. One important reason is that hard-surface modelers use subsurface modifiers for hiding sharp corners. This produces millions of vertices, which is too much for the use in video games. However, it is possible to add a face weighted bevel to replace those hard edges. That will result in perfectly smooth edges which in most cases would even not add any extra vertices because the hard edges already have double vertices. This technique is called edge chamfering and is already in use for games like Star Citizen. Unfortunately it is not possible to develop custom modifiers for Blender using Python. Because of that the goal of this topic is to create an automatic edge chamfering asset for Unity (instead of a plugin Blender).


Hard surface model with the edge split modifier in Blender (left) and the same model with chamfered edges using my own algorithm in Unity (right)
JaanusModel-1 JaanusModel-2

Edge Loop Reduction Based LOD Generation

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc

The Level of Detail (LOD) is a technique to reduce the number of vertices for distant objects. LODs can be generated manually by the artist or by using an algorithm. However the artist made LODs are generally of much better quality. The algorithms usually just collapse the smaller and less curving edges one by one, however this will break the original topology. There are some better ways to do that, for example in Saint Row the artist can mark important edges beforehand and the algorithm will take this as a consideration, however this will require a little bit of work from the artist.
On the other hand if the artists do the LODs by hand then they will usually just select less important edge loops one by one and collapse them. The idea behind this topic is to simulate the artist way of generating LODs with an algorithm by determining less important edge loops and dissolving them.

An example of typical LOD generation system that collapses edges but messes up the topology underneath:

An example of LOD that retains nice topology:


NPC AI System Based On Gameplay Recordings

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc

Non-player characters (NPC) are often quite boring and predictable in computer games. Shopkeepers often just stand in one place 24/7 or follow a simple behaviour state machine. The goal of this topic is to design and develop an interesting NPC system that accounts for the way players have been playing the game and inherit that behaviour into an NPC behaviour. The game should not just play back a recording but adapt it to the world and find a way to make it an important gameplay element.



Vrena AI Bots

Supervisor(s): Margus Luik
Degree: BSc or MSc
GameEngine: Unity

Vrena is a multiplayer first person shooter game, developed for virtual reality platforms like HTC Vive and Oculus Rift. The game takes its inspiration from shooters such as Quake 3 and the Unreal Tournament series. However, a good shooter also needs a good artificial intelligence (AI) for the enemy bots.
The first part of the thesis would be to make the 3D levels navigable by the AI, with the use of grappling hooks. Difficulty here is to develop a navigation system (including pathfinding) for a 3D environment.
The second part of the thesis consists of developing smart decision making for the AI. By using the navigation system developed in the first part of the thesis, the AI should be able to provide a challenge for the player. Decisions include suitable weapon choosing, frontal attack vs taking cover, escaping, hindering the player’s objectives.

For reference, read the thesis on Quake 3 Arena Bot development. Also see the AI-related articles referenced here.

Vrena is developed in Unity. One of the solutions here could be the integration of the Open AI framework with Vrena.


An Idea for a topic – View frustum planar reflection mapping

Supervisor(s): Jaanus Jaggo
Degree: MSc
GameEngine: Unity, Shaders

One of the most important aspects of accurate lighting is good reflections. The two main approaches for implementing real-time reflections are planar reflections and screen space reflections. Planar reflections only fit for planar surfaces by rendering the scene from a reflected angle, but the result is therefore very accurate. Screen space reflections can be used to reflect surfaces with any angle by sampling the reflected pixel already drawn on the screen, however, it can only reflect objects visible on the screen. https://docs.unrealengine.com/latest/INT/Engine/Rendering/LightingAndShadows/PlanarReflections/

The idea behind this thesis is to combine these two approaches by rendering the scene from all camera frustum planes expect front plane and sampling the right image based on surface normal. An example image with three reflected walls that could be used for sampling reflections.



An idea for a topic – Vertex color based GPU animation framework

Supervisor(s): Jaanus Jaggo
Degree: BSc
GameEngine: Unity, UI scripting, very little shaders

Most of the animations are done with skinned meshes by CPU using bones. This is however quite costly for mobile devices especially if there are a lot of animated objects. The idea of this topic is to make a framework for animating objects by coloring vertices and animating them in the vertex shader based on repeating trigonometry functions like Sin.
An example of animated food items:

Vertex Based Animation Shader in Unity Game Engine

It is also possible to create simple character animations like walk cycle using the same technique.



Procedural 3D Plant Generation

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc
GameEngine: Unity, Geometry

Superformula is a really simple equation for generating life-like vegetation shapes. For example it is used in the game No Man Sky. The goal of this thesis is to develop a system for procedurally generating 3D plants and to simulate their growth.
The results of my own current algorithm for creating plant stems using superformula can be seen below.



Specular Anti-Aliasing Methods

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc

GameEngine: Unity, Shaders

Chamfered edges, glossy surfaces and normal maps often result in a lot of jagged highlights. This is especially distracting in virtual reality (VR) games where any kind of aliasing breaks the immersion.
VR games are advised to use forward rendering with MSAA anti-aliasing. However MSAA would not reduce specular aliasing at all. The same applies for FXAA, SMAA and other screen space anti-aliasing techniques with an exception of temporal anti-aliasing. Unfortunately the latter is quite resource dependent and may cause other artifacts. The goal of this topic is to study different solutions and implement other techniques to reduce the specular anti-aliasing.

Specular anti-aliasing material applied to the left cube:

Post effect specular anti-aliasing reduction:
JaanusSpecAlias-1 JaanusSpecAlias-3

Specular and reflection aliasing depending on material smoothness:


Dynamic Global Illumination System Based On Spherical Harmonics

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc
GameEngine: Unity, Shaders

Dynamic lighting is often the most expensive thing in computer graphics, especially when simulating dynamical global illumination (GI). Therefore the light sources and global illumination is often baked into textures. However, that does not work with dynamic objects that are moving around in the environment. For them game engines usually allow the developer to bake light probes – static points in the world where the lighting is baked into. All the dynamic objects are then sampling the light from those points.


Mathematically those light probes are spherical harmonics, relatively simple mathematical structures that can hold the light’s directional information. They are also really fast to sample. However, in game engines they are often static and for example in Unity the developer can not even add new light probes in run time. The goal of this task is to make a light probe based dynamic system. That is constructing the spherical harmonics at run time and updating the information when light sources move. For a Master’s thesis the spherical harmonics should also try to capture the reflected light from surfaces (GI).

Example of spherical harmonics:

An article about how to use SH for making an impression of specular lighting:



Volumetric Cloud Rendering

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc
GameEngine: Unity, Shaders

Realistic looking clouds and fog are usually created by path tracing algorithms. The modern video cards have just recently become fast enough to allow real-time path tracing and therefore very few games are using it. The goal of this thesis is to research and develop and optimize procedural generation algorithms for producing dynamic clouds.

Pildiotsingu volumetric clouds tulemus

An article that describes the method used in Horizon zero dawn

Article about Horizon Zero Dawn cloud rendering


Wolf3D Topics

Supervisor(s): Margus Luik
Degree: BSc or MSc

Wolf3D is a company in Tallinn. They do quick scans of people with a mobile app and then use the results as avatars in 3D games. There are a number of things they want to improve in their app and are looking for smart students who could get experience with several bleeding edge algorithms. So those topics would be about taking an algorithm, seeing if there are alternatives, implementing the algorithm and validating that it works or does not work in Wolf3D-s software. Each algorithm is sufficient for one thesis. BSc and MSc distinction comes from the amount and depth of the work.
These topics can also involve paid work, which can further contribute towards the Practical Training in Informatics, if that is in your specific curriculum.

In the order of importance:

  1. Coupled 3D Reconstruction of Sparse Facial Hair and Skin
    How to detect and recreate a beard, eyelashes and eyebrows?
  2. Image Style Transfer Using Convolutional Neural Networks
    How to transfer a certain aesthetic style automatically on a texture or a 3D mesh. For example making the human’s avatar resemble a character from the Simpsons.
  3. Virtual Faces
    http://graphics.uni-bielefeld.de/research/faces/ from Figure 5 + refs
    Making a realistic avatar into a stylized one.
  4. Robust face landmark estimation under occlusion
    Detecting hidden features in photos and videos.
  5. Photorealistic Facial Texture Inference Using Deep Neural Networks
    Generating a texture from one image. This is probably a huge topic / work.
  6. A Morphable Model For The Synthesis Of 3D Faces
    Creating a 3D model from a database and an image.



Önwall AR Tool

Supervisor(s): Raimond Tunnel
Contact: karl@onwall.ee
Degree: BSc or MSc
Tools: Android (or iOS)

Önwall is a company that produces wood mosaic tile covers for interior room walls. They want a simple mobile AR tool to show in real-time how a room would look like with their wall tiles. That tool can help customers decide which tiles would visually suit their rooms and desires the best.
The technical challenge is to determine the rough room geometry via a mobile application in order to detect the walls and furniture. This can be done by scanning the room with the smartphone’s camera. Then a simple UI design is required for the users to select different walls or wall regions and place specific Önwall tiles on them.
As this is work for a company, then it includes communication with the company (ran by a really friendly guy) and payment options may be possible. Detailed info about the project from here or from Karl Nagel.


Machine Learning in an Invisible Maze

Supervisor(s): Madis Vasser, Jaan Aru, Tambet Matiisen
Contact: madis.vasser@ut.ee
Degree: MSc
Technology: Unity 3D

The task is to teach an agent to navigate worlds with invisible 3D walls by using raw pixel input. The work should be carried out with Unity ML agents.
In the end we want to compare the performance of ML and real people wearing a VR headset. There’s a chance to learn a bit about psychology as well.






VR Headset Implementation in PsychLab

Supervisor(s): Madis Vasser, Jaan Aru
Contact: madis.vasser@ut.ee
Degree: BSc / MSc
Technology: HTC Vive, Oculus Rift, Python

The thesis is about integrating common VR hardware into DeepMind PsychLab software that currently only has mouse input. The tool is mainly used for comparing machine learning agents with humans, so having some knowledge of ML is good. If the task feels too easy, we can add some cool new experiments to the program as well



Greasy Gears (taken)

Supervisor(s): Raimond Tunnel
Contact: tarvo@makerlab.ee
Degree: BSc or MSc
Tools: Android and/or iOS

Tarvo Metspalu from Edulab OÜ is working on a physical tabletop game. The gameplay consists of placing and turning colored gears to move game pieces from one end of the board to the other. The game can be played by 1 to 4 players and the winner is the one who has moved their pieces the fastest. One real life game session takes about 30 – 90 minutes.
In this thesis you can make a mobile version of that game. Depending on the scope of your thesis there can be a number of potential game modes implemented: 1) single player against up to 3 computer opponents, 2) hot seat with up to 4 players, 3) online multiplayer with matchmaking.
The actual game rules, art assets, the possibility to play the physical game and possible business agreements will be available from Tarvo once you have picked this topic.
More info (in Estonian)

Keywords: Game development, mobile game development, tabletop game, AI, multiplayer.


Glyptics Portrait Generator (taken)

Supervisor(s): Raimond Tunnel
Degree: BSc or MSc

The Museum of the University of Tartu is having a exhibition about glyptics in February 2020. The aim of this topic is to create an interactive digital exhibit that shows the profile portrait of the visitor as a cameo (see technique).
The features of the visitors could be captured from a regular camera, but a dedicated depth camera like RealSense might also be needed for finer details. The specific hardware requirements and setup is part of this topic. The rendering could be of an opaque plaster cast of an engraved gemstone and/or a transparent or translucent gemstone. In that regard the thesis should explore the physically based rendering of those materials. The final goal is to create a nice user experience for the visitors of the exhibition.
As the exhibition begins in February, it would be very much preferred if the practical solution would be ready and tested by then. So if you are looking for an interesting Summer/Autumn project that is also going to be your thesis, then this topic is for you.

Keywords: Image processing, 3D scanning, procedural mesh generation, physically-based rendering, computer graphics, interactive exhibit.


SOFIT Level Editor

Supervisor(s): Raimond Tunnel
Contact: peeter.nieler@criffin.com
Degree: BSc or MSc
Tools: Unity

SOFIT (Special Operation Forces Immersive Training) is a virtual reality training software (similar to this) developed by an Estonian company Criffin in the Unity game engine. They want their clients to be able to create their own training scenarios and levels withing a certain set of rules. This means that their software will need a custom level editor.
The goal of this thesis is to build the said level editor in Unity. The exact specification should be agreed upon by you and Criffin. Some potential things the level editor could include: building placement, landscape, roads, room plans, furniture in the rooms, placement of bombs and enemies, enemy patrol routes, scenario specification (eg hostage situation) etc. The level editor could also include a measure about how performance heavy the created level is.
All the models, animations, enemy AI etc will be provided by Criffin.

Keywords: Software development, level editor, Unity, performance estimation, UX, UI.



SOFIT Level Editor (Taken)

Supervisor(s): Ulrich Norbisrath
Contact: Peeter Nieler (peeter.nieler@criffin.com)
Degree: BSc or MSc
Tools: Unity

SOFIT (Special Operation Forces Immersive Training) is a virtual reality training software (similar to this) developed by an Estonian company Criffin in the Unity game engine. They want their clients to be able to create their own training scenarios and levels withing a certain set of rules. This means that their software will need a custom level editor.
The goal of this thesis is to build the said level editor in Unity. The exact specification should be agreed upon by you and Criffin. Some potential things the level editor could include: building placement, landscape, roads, room plans, furniture in the rooms, placement of bombs and enemies, enemy patrol routes, scenario specification (eg hostage situation) etc. The level editor could also include a measure about how performance heavy the created level is.
All the models, animations, enemy AI etc will be provided by Criffin.

Keywords: Software development, level editor, Unity, performance estimation, UX, UI.

3D Comic Rendering

Supervisor(s): Raimond Tunnel
Contact: santiago@artineering.io
Degree: BSc or MSc
Tools: C++, Python, GLSL/HLSL, Maya

Artineering is a startup in Tallinn specialized in real-time stylized rendering of 3D animation. They want to incorporate new non-photorealistic 3D styles within their engine, while nurturing talent to potentially expand their team.
Your task will be to break down a comic style and come as close as possible to recreating it, using 3D computer graphics. The main development focus resides on the characteristic shading and textured linework of the comic style below. You’ll be working with and learning C++, Python and shading languages (HLSL/GLSL) within the MNPRX plugin for Autodesk Maya.
An exciting blend between art and technology, this project is ideal for engineers that possess an affinity or special interest in art.

La mémoire de l’eau by Valérie Vernay and Mathieu Reynès

Keywords: Computer graphics, non-photorealistic rendering, stylized rendering, Maya.


Canvas Synthesis for Stylized Animation

Supervisor(s): Raimond Tunnel
Contact: santiago@artineering.io
Degree: BSc or MSc
Tools: C++, Python, GLSL/HLSL, Maya

Artineering is a company in Tallinn specialized in real-time stylized rendering of 3D animation. They want to incorporate substrate (canvas) synthesis within their stylized engine, while nurturing talent to potentially expand their team.
Your task will be to survey texture synthesis algorithms, find and implement the most suited method to synthesize a dynamic canvas for non-photorealistic animation. The dynamic canvas should be generated in real-time and behave in intuitive ways with the overlying animation. You’ll be working with and learning C++, Python and shading languages (HLSL/GLSL) within the MNPRX plugin for Autodesk Maya.
With the canvas having few outlying features, this project is ideal for engineers that are interested in unique texture synthesis cases in production.

Keywords: Computer graphics, non-photorealistic rendering, stylized rendering, procedural texture generation, Maya.


Dwarf Block – Dwarf Simulation

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc
Tools: Unity, C#

Dwarf Block is a first-person dwarf colony simulation game that is currently in development. The aim of this thesis is to implement a dwarf simulation system that the player can interact with. The main focus should be to provide an interesting and immersive gameplay experience.


Dwarf Block – Dynamic Environment

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc
Tools: Unity, C#

Dwarf Block is a first-person dwarf colony simulation game that is currently in development. The aim of this thesis is to implement a world-building system where the player can build its own dwarven castle. The base system will be a common marching cube-based voxel world, but the main goal of this thesis is to implement the actor navigation, lighting, and construction systems.


Dwarf Block – Networking

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc
Tools: Unity, C#

Dwarf Block is a first-person dwarf colony simulation game that is currently in development. The aim of this thesis is to add cooperative online networking for Dwarf Block through Steam P2P services using Mirror API.


BLASTRONAUT game development (different topic options) (Taken)

Supervisor(s): Jaanus Jaggo
Contact: jaanus.jaggo@ut.ee
Degree: BSc or MSc
Tools: Godot

BLASTRONAUT screenshot

BLASTRONAUT is a 2D mining game in a procedurally generated world that will come to early access this fall. It is developed by Jaanus Jaggo (Perfoon company) who will be both the supervisor and the client for this project. Try the game demo in Itch.io

There are several areas of this game that can be improved, for example the procedural generation, enemies or multiplayer support. The exact goal and topic should be discussed with the supervisor.

You are expected to start working during the fall semester (from October) and provide usable features for the launch of the game. As a benefit you will get part of the launch of an indie game, get to learn from Jaanus who has years of experience in game development. If the project succeeds and your work is good, he is also willing to support your studies financially.
Keywords: Software development, Godot, game development, game design.


Texture Processing Tool

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc
Tools: Haxe (ZUI and Iron)

In 3D game development, there is usually one specific workflow for creating assets. Often it involves some labor-intensive steps where the artist has to do the same thing over and over for each 3D object. The aim of this thesis is to create a tool that allows to specify a texture processing workflow and then apply it on multiple input textures at once.

More info: https://courses.cs.ut.ee/LTAT.05.005/2019_fall/uploads/Main/Texture%20Processing%20Workflow%20Tool


Intelligent Language Teacher

Supervisor(s): Jaanus Jaggo
Degree: BSc or MSc
Tools: Javascript, HTML5, Amazone Services

NovelStyle is a web-based natural language learning application, that turns your favorite book into grammar learning exercises. The future goal is to add an intelligent teacher that studies the user progress and chooses the right exercises at the right time.



VR Self-Driving Car Simulator (Bolt)

Supervisor(s): Alexander Nolte, Ats Kurvet
Contact: alexander.nolte@ut.ee
Degree: BSc
Technology: Oculus Rift, Unreal Engine 4 (or similar)

The crowdsource taxi company Bolt aims to create self-driving cars as an option for people to get a ride with. They want a VR application that allows people to experience how different dangerous situations play out in a self-driving car. For example when a child runs in front of the car, what happens next?
In this thesis you can build such a VR application and implement a number of scenarios from Bolt. Basically it is like a racing game without any racing and most of the game is pre-programmed scenarios. As sitting in a car is a sitting experience, the likely VR platform would be Oculus Rift. The choice of the game engine may vary depending on your skills and licence agreement.

Raimond has created some analyzation and visualization of thesis texts from the past 3 years. However, he thinks the tried text readability metrics like the Flesch-Kincaid ease and auto index did not give a good enough result to accurately qualify the different theses. This topic is about the research of different metrics and trying some out to see what works well for indicating the quality of a thesis. There could also be other approaches taken here like machine learning. If you find some better statistics or indicators for theses, then you can also change and improve the current visualization. The goals here are to: 1) Give some indication for students, which theses are good and which bad; 2) Allow for better analyzation of also the thesis draft texts, which gives thesis authors better feedback throughout the writing process.


Comparing Mobile and Glasses-based AR

Supervisor(s): Madis Vasser, …
Contact: madis.vasser@ut.ee
Degree: BSc
Technology: ARCore/ARKit, marker based systems, Meta 2 AR glasses

The work should compare mobile and glasses-based augmented reality in terms of similarities and differences, UI and UX design and development process. A part of the work is literature review, and the other part practical work. I would be nice to also build a simple demo for both ARKit/ARCore and Meta 2 glasses.


VR Locomotion Puzzles

Supervisor(s): Madis Vasser
Contact: madis.vasser@ut.ee
Degree: BSc
Technology: HTC Vive, any game engine

VR offers novel ways to study the process of insight – how people suddenly solve complex tasks. The thesis revolves around creating such tasks, centered around VR locomotion. More concretely, tasks to be created include combining real and virtual locomotion, constructing physically movable virtual play spaces, and reverse-engineering the usual locomotion mechanics.

Keywords: Virtual reality, user experience design, simulator, computer graphics.

5G AR Assistant

Supervisor(s): Chinmaya Dehury, Madis Vasser
Contact: chinmaya.dehury@ut.ee
Degree: MSc
Tools: Game engine of choice
Type: Software

General Mobile is looking for highly motivated individuals that are keen on developing an AR solution (Android and iOS) for a multinational broadband company. Due to a specific antenna pattern that we have designed for a premium 5G mobile broadband CPE, users are highly recommended to utilize a companion directive: 5G Spot On, to assist them in determining the best location and angle to install their broadband device in their homes.

Our current solution involves a simple manual entering of location names (and photo-taking option) prior to the speed test. The solution we aim to deploy is a user-friendly AR interface that not only provides a more convenient method for achieving optimal directional placement, but also a more interactive and enjoyable experience as a whole. This solution is to be integrated into an existing companion application: LINK App, which allows users to manage various settings, such as parental control and priorities for their broadband devices at home.

The thesis gives a great opportunity to study object recognition in augmented reality and live communication between the app and an external hardware device.

Keywords: Mobile software development, augmented reality.


VR Focus Meditation Training


Supervisor(s): Madis Vasser, Aaditi Kulshreshtha
Contact: madis.vasser@ut.ee, aaditi@undreamxr.com
Degree: MSc
Tools: Unreal Engine 4 (for VR), Meta Quest 2
Type: Software

At Undream, we combine the immersive nature of virtual reality and the neuroscience of attention to design VR meditation experiences for emotional wellbeing. Everything we perceive is filtered through our minds via thoughts & emotions, yet most of us never learn how to master our minds to achieve our full potential. Our vision at Undream is to design science-informed VR experiences that enable people to live more fulfilled lives with regular meditation practice, improved focus, better sleep, easier emotional regulation, and reduced anxiety and depression.

If you were in Jedi training with Master Yoda and needed to master the art of Focus, what would this VR experience be like?

If this peaks your interest, you will enjoy creating our VR focus meditation training module, with game-based learning. While our experience is without a Star Wars theme, the only limits of the visuals will be in your imagination and Meta Quest 2‘s visual fidelity. We will use head tracking on the VR HMD, to train the mind to focus on objects which subsequently begin levitating. If the trainee loses focus, the object falls, and the process starts again. As the trainee progresses, this VR focus training becomes ever more challenging. The objective is to improve the trainee’s ability to focus and to build a habit for daily practice.

Your task is to design, implement and test this VR-focus training module for our upcoming VR app. It would be helpful to first understand the needs of the audience and then build solutions. While people who struggle with ADHD, memory problems, and depression would benefit particularly from this VR training, it will also help improve focus for people in urban cities who struggle with attention spans, in our increasingly distracting digital world.

This project is for students who are interested in building VR applications that can improve people’s lives. You will also enjoy this experience if you enjoy building calming and fantastical environments. As a growing startup, we are keen to grow our team with proactive, Unreal developers and artists who are interested in a long-term association with us. As we build this module together, if we find you are a good fit with our team, you will be given a hiring preference for any suitable job openings at Undream.

Keywords: Virtual reality, focus, meditation, mental health, emotional wellbeing, Unreal Engine, Meta Quest 2.