Abstract [eng] |
A game of the first-person shooter genre was created during the final project of master's studies. The game works in a multiplayer mode where players have to cooperate and coordinate their actions with each other in order to successfully complete the missions assigned to them. The game is developed using the Unity game engine. The analytical part reviews performance optimization methods and techniques used in games (object pooling, occlusion culling, level of detail) and good game development practices for creating games using the Unity game engine. The design part describes the architecture of the developed game and the implemented functions. The research part evaluates the quality of the game based on the following metrics: the average number of frames per second generated by the game, the use of RAM and the size occupied by the compiled game build. After evaluating the quality in the research part, quality improvement solutions are presented - improvement of the method of hiding objects by changing the used component, reduction of the maximum allowed size of textures, grouping of textures into atlases and selecting proper texture and sound compression settings. In the experimental part, the evaluation of system improvements is carried out. At the end of the paper, the conclusions are presented that the use of occlusion culling to hide invisible objects increased the average number of frames per second, the use of the level of detail method did not affect the average number of frames per second, usage of object pooling reduced the amount of allocated memory garbage, limiting the maximum allowed size of textures reduced the use of RAM , and the compression methods used for textures and sound files helped to reduce the size of the compiled game build. |