Procedural content generation is a useful tool to use when generating content for games. An issue with this type of content is often the lack of realism and purpose, especially regarding procedurally generated worlds or levels, aswell as outlier bugs, that can block the players progression, that can be hard to find since they could only show up in a few select seeds of the randomized world. This thesis examines the best use of procedural content generation for a game that features an endless world, as well as evaluating the final product against established definitions of the terms "realistic" and "purposeful", while also taking into account the prevention of outliers. The world is constructed as a series of interconnected sections that are generated incrementally as needed, with each section's landscape using Perlin-noise for its topography and A* pathfinding to build paths that ensure that the player can navigate through the randomized terrain and not get stuck. The topography is also modified by different techniques to generate a realistic coastline and feature different areas of interest within a section. The world was evaluated against the established definitions of realism and purposefulness by eight participants that gave the world a high score on all aspects of both definitions. To ensure the validity of the generated content, iterative evaluations were performed that showed no outlier bugs that prevented progressing through the world. The techniques used in this thesis can serve as a good starting ground for continued development of endless worlds.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:umu-187752 |
Date | January 2021 |
Creators | Ström, Linus |
Publisher | Umeå universitet, Institutionen för tillämpad fysik och elektronik |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0024 seconds