Glavna tema diplomskog rada je proceduralno generiranje sadržaja u računalnim igrama pomoću programskih algoritama, na praktičnom primjeru dvodimenzionalne igre izrađene pomoću Unity alata. U prvom dijelu rada su opisani odabrani softverski alati korišteni prilikom praktične izrade računalne igre, te njihove osnove komponente. Nakon toga su opisani glavni koncepti i ideja same igre, te osnovni elementi u sklopu Unity-a od kojih je ona izrađena. Svi elementi igre su praćeni s primjerima iz programskog koda, koji pokazuju interakciju između njih i pozadinskih skripti. Središnji dio rada sadrži opis pet različitih algoritama čija je osnovna zadaća kreiranje dijela sadržaja unutar igre pomoću koda u C# programskom jeziku, popraćen s praktičnim primjerima korištenja tih algoritama u igri. Na kraju rada su predstavljeni rezultati analize i usporedbe primijenjenih algoritama u četiri različite kategorije. Kompleksnost algoritama mjeri maksimalni broj koraka potrebnih za izvršavanje algoritama. Performanse algoritama su analizirane u sklopu opterećenja procesora i memorije za vrijeme izvršavanja algoritama tijekom pokretanja igre. Kategorije fleksibilnosti i igrivosti donose nešto subjektivniju analizu algoritama iz perspektive njihovog proširivanja, iskorištavanje u drugim igrama, te kvalitete sadržaja koji je generiran pomoću njih iz perspektive igrača.Main topic of this thesis is procedural generation of content in video games using programming algorithms, with practical application in a two-dimensional game developed using Unity software. First section describes software tools used for developing the game and their basic components. Main idea and concepts behind the game are described in the next section, including the main components in Unity used during game development. All game elements contain code examples, with the purpose of demonstrating interaction between them and programming scripts running in the background. Central section contains the description of five different algorithms used for procedural content generation using C# programming laguange, together with actual code examples showing the practical application of these algorithms during game development. The ending section of this thesis contains analysis and comparison between algorithms used in the game in four different categories. Algorithm complexity shows maximum number of iterations needed for execution of the chosen algorithm. Algorithm performance is shown using processor and memory usage during their running time. Flexibility and playability contain a more subjective analysis of algorithms in terms of their expandability, their ability to be used in other games, and the quality of game content that was generated using the algoritms, from the perspective of the game player