Unity, Unreal Engine ja Godot pelimoottorien suorituskykyvertailu
Lento, Valtteri (2025)
Kandidaatintyö
Lento, Valtteri
2025
School of Engineering Science, Tietotekniikka
Kaikki oikeudet pidätetään.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2025021010779
https://urn.fi/URN:NBN:fi-fe2025021010779
Tiivistelmä
Peliteollisuus on viime vuosina kasvanut ja kasvaa edelleen. Pelinkehittäjillä voi olla haasteita oikean pelimoottorin valinnassa. Vertailemalla pelimoottorien suorituskykyjä pelinkehittäjien on helpompi valita oikea pelimoottori, riippuen minkä tyyppistä peliä he ovat tekemässä.
Tämän tutkimuksen tarkoituksena on verrata Unity, Unreal Engine ja Godot pelimoottoreiden suorituskykyä, ja selvittää mikä on suorituskyvyltään tehokkain. Vertailu toteutetaan luomalla näillä pelimoottoreilla samankaltaiset ajettavat ohjelmat, joiden avulla mitataan suorituskykyä. Ohjelmat luodaan kolmiulotteisiksi. Ohjelmat luovat pomppivia palloja neljän seinän rajaamalle alueelle, kunnes kuvaa sekunnissa arvo laskee alle kolmenkymmenen. Ohjelmissa lasketaan kuinka monta kuvaa sekunnissa ohjelmat tuottavat eri pallojen määrillä.
Tutkimuksen vertailu toteutettiin kahdella eri tehoisella laitteella. Eri laitteilla saadut tulokset eivät juurikaan eronneet suhteellisesti toisistaan. Molemmilla laitteilla Unityllä kehitetty ohjelma pystyi luomaan eniten palloja. Godotilla kehitetyn ohjelman suorituskyky pudotus oli kaikista jyrkin. Unreal Enginellä luodun ohjelman suorituskyky tippui tasaisesti. The game industry has grown over the last years and is still growing. Game developers may have challenges choosing the right game engine. By comparing the performance of game engines, it is easier for developers to choose the right game engine depending on what kind of game they are developing.
The objective of this study is to compare the performance of Unity, Unreal Engine and Godot game engines, and to find out which one has the best performance. Comparison is done by creating a similar executable program with these game engines to measure performance. The programs are created as three dimensional. The programs generate bouncing balls in an area bordered by four walls until the number of frames per second goes below thirty. The number of frames per second that the programs can produce is counted for different number of balls.
The comparison was carried out with two devices of different performance. The results of different devices didn’t really differ from each other relatively. The program created with Unity generated the most balls on both devices. The program created with Godot had the steepest performance drop. The program created with Unreal Engine had a steady performance drop.
Tämän tutkimuksen tarkoituksena on verrata Unity, Unreal Engine ja Godot pelimoottoreiden suorituskykyä, ja selvittää mikä on suorituskyvyltään tehokkain. Vertailu toteutetaan luomalla näillä pelimoottoreilla samankaltaiset ajettavat ohjelmat, joiden avulla mitataan suorituskykyä. Ohjelmat luodaan kolmiulotteisiksi. Ohjelmat luovat pomppivia palloja neljän seinän rajaamalle alueelle, kunnes kuvaa sekunnissa arvo laskee alle kolmenkymmenen. Ohjelmissa lasketaan kuinka monta kuvaa sekunnissa ohjelmat tuottavat eri pallojen määrillä.
Tutkimuksen vertailu toteutettiin kahdella eri tehoisella laitteella. Eri laitteilla saadut tulokset eivät juurikaan eronneet suhteellisesti toisistaan. Molemmilla laitteilla Unityllä kehitetty ohjelma pystyi luomaan eniten palloja. Godotilla kehitetyn ohjelman suorituskyky pudotus oli kaikista jyrkin. Unreal Enginellä luodun ohjelman suorituskyky tippui tasaisesti.
The objective of this study is to compare the performance of Unity, Unreal Engine and Godot game engines, and to find out which one has the best performance. Comparison is done by creating a similar executable program with these game engines to measure performance. The programs are created as three dimensional. The programs generate bouncing balls in an area bordered by four walls until the number of frames per second goes below thirty. The number of frames per second that the programs can produce is counted for different number of balls.
The comparison was carried out with two devices of different performance. The results of different devices didn’t really differ from each other relatively. The program created with Unity generated the most balls on both devices. The program created with Godot had the steepest performance drop. The program created with Unreal Engine had a steady performance drop.
