Escola T`ecnicaSuperior d'Enginyeria Inform`atica Universitat Polit`ecnicade Val`encia Open World Streaming: Automatic memory management in open world games without loading screens. Trabajo Fin de Grado Grado en Ingenier´ıaInform´atica Alejandro Juan P´erez
[email protected] Supervised by Ram´onPascual Moll´aVay´a 2015-2016 Contents 1 Introduction 3 2 Open world videogames 4 2.1 Content generation . .5 3 Requirements 6 3.1 Main requirements . .6 3.2 Secondary Requirements . .7 4 Level-based videogames 8 5 World streaming 9 5.1 Examples of games using world streaming . 10 5.2 The strategy . 18 5.3 Loading Resources is slow . 19 6 The architecture of the engine 21 7 Implementation 23 7.1 Graphics System . 23 7.1.1 Architecture . 23 7.1.2 Features . 24 7.1.3 Why did I implement my own graphics engine? . 25 7.1.4 Modern OpenGL programming . 26 7.2 Physics System . 29 7.2.1 The issue of the precission . 30 7.2.2 Alternative approaches . 30 7.2.3 Our approach . 31 7.3 Resource Manager . 31 7.4 World Streamer . 34 8 Result and testing 38 8.1 Demo . 39 8.2 Performance . 40 9 Conclusion 44 10 Update: animation system 45 11 Future extensions 50 1 12 License 51 13 Tools and dependencies 51 13.1 Used tools . 51 13.2 Dependencies . 51 2 1 Introduction Open world games are among the most appreciated games by players. They provide users the chance to explore a big world and they are very immersive. Open world games grant players the freedom to take any decision and enjoy their high interaction.