Hello readers this is the third of several short articles where I talk about some of the research that goes into making my images.
Remember in math class how you asked yourself “When the %^@! am I gonna use this!” – well dark times are upon us, hell HAS frozen – Math has become an incremental aspect of art and design.
In this article I will look at how procedurally generated content has shaped the creation of games and it’s implementation in the design of characters and environments. I plan on looking at thing like World Machine, Terragen and Space Engine (and if we have time maybe even rant about No Man’s Sky 😉 )
Procedurally generated content has found a comfortable place in the workflow of most artists in recent times – be it to generate templates, detail maps or even entire assets – its speed and ability to generate an infinite number of artifacts has made it an invaluable asset in recent times. As such I decide to look at several papers that explore some interesting ideas in the field.
Petalz: Search-Based Procedural Content Generation for the Casual Gamer
(12th Otc 2016)
This study introduces a game environment that sees users discover new variation of flowers. The assets created or discovered can then be traded between users on a global market place. Users can combine their discoveries or “cross pollinate them” to create new assets based on the properties of the original two. The game also allows users to print 3D replicas of their collection of flowers.
While this is an interesting and original idea that has the opportunity to have an infinite amount of content for its users its global user base of 1900 users is relatively small. While the game its self present some extremely interesting ideas like putting the procedurally generated assets at the center of the experience and making the users content creators its small consumer base makes this a limited success.
Ultimately this form of research is extremely fascinating as it could potentially pave the way for the creation of more professional content for game artists where procedural assets can be traded and altered between a community to greatly reduce time taken to create artifacts.
Risi, S., Lehman, J., D’Ambrosio, D., Hall, R. and Stanley, K. (2016). Petalz: Search-Based Procedural Content Generation for the Casual Gamer. IEEE Transactions on Computational Intelligence and AI in Games, 8(3), pp.244-255.
Procedural Generation of Levels for Angry Birds Style Physics Games
(17th Otc 2016)
This paper talks about how an algorithm can be used to create an infinite number of levels for an Angry Birds style game from a pool of 12 original assets. This is a particularly interesting read as the physics based nature of the game requires all structures generated from the assets to be structurally sound and be able to support and balance their weight and pieces along with the placement of other assets like occupants and enemies.
Where this paper fall short however is the fact that it is currently impossible to guarantee that all of the levels will be solvable with a restricted number of trials. While they are theoretically possible with an infinite number of tries this limitation could be a major issue for gameplay.
Overall this paper is interesting to me as it presents gameplay artifacts being assembled from a limited library. While procedural game levels are nothing new at this point, having physics based structures created from a limited pool of resources could not only increase scale but also the level of interaction of future games. I am interested in this as it suggests that a more “building block” approach to assets and characters can be implemented to create endless variations in my designs.
Stephenson, M. and Renz, J., 2016, September. Procedural Generation of Levels for Angry Birds Style Physics Games. In Twelfth Artificial Intelligence and Interactive Digital Entertainment Conference.
Procedural Content Generation for Games: A Survey (18th Otc 2016)
This paper is interesting as it seeks to survey the different methods used for procedural content generation and map them the different types of procedurally generated content like assets and texture patterns to story content and gameplay mechanics. The paper goes on to separate these into different layers of content and mentions how technologies and methods used in one category can be applied to another.
This paper is interesting as it paves the ways for new techniques of game and asset design that can be used to create content that was previously difficult or impossible to create.
Hendrikx, M., Meijer, S., Van Der Velden, J. and Iosup, A. (2013). Procedural content generation for games. ACM Transactions on Multimedia Computing, Communications, and Applications, 9(1), pp.1-22.
OpenGL Insights: OpenGL, OpenGL ES and WebGL
Procedural Textures in GLSL (5th Nov 2016)
In this chapter the book focuses on procedural textures. It talks about how fractal patterns from simple functions can be combined and altered to create an endless amount of variations of an infinite texture that will avoid issues such as tiling or in some cases resolution constraints of traditional texturing methods that use images.
I do believe however that towards the conclusion where the authors suggest that such work is possible in real time is slightly too optimistic. This is due to the fact that having this technology work in real time is one thing and having it work in a game setting is completely different. As soon as procedural content gets involved much of the CPU/GUP power has to be dedicated to it, which can leave other game systems like AI or complex rendering and post process effects restrained.
I find this paper interesting as it delves deep into how some of my workflow software works. I currently use World Machine from some environment work which uses the same noise functions described in the paper. What I am also intrigued by is the possibility of using these textures to generate meshes. In the past I have experimented with creating assets like large cities with many buildings by using a single displacement texture as well as a box mapping projection – the result was a city block the was several kilometers large that was made up of only two textures!
*Personal work based on a workflow similar to the one described above
Cozzi, P. and Riccio, C. (2012). OpenGL insights. 1st ed. Boca Raton, FL: CRC Press.
Metropolis Procedural Modeling (14th Nov 2016)
In this paper the authors talk about creating an efficient algorithm that controls “grammar based” procedural models. They aim to create a function that is both flexible and easy enough to control so that it can be applied in a wide range of situations, form the creation of buildings to trees and even 2D images.
I find this useful as it again delves more into the working of some software that I have used in the past. This work is a strong reference to the user interface of Plant Factory which I used to create procedurally generated models for trees that were constrained by a set of rules dictating everything from number of branched and tree height to root depth and even the details on the bark.
*Personal work based on a workflow similar to the one described above
This however also reminds me of my struggles to use the Esri City Engine software which is used to create procedural cities with varied buildings. The main issue with this was the lack of an accessible user interface that as the paper mentioned severely hampered my ability to create or modify anything that I’ve created using the software.
Talton, J., Lou, Y., Lesser, S., Duke, J., Měch, R. and Koltun, V. (2011). Metropolis procedural modeling. ACM Transactions on Graphics, 30(2), pp.1-14.
Guided Ecological Simulation for Artistic Editing of Plant Distributions in Natural Scenes (6th Dec 2016)
In this paper the authors present a workflow for generating an ecological scatter simulation of assets that is based both on procedural data an artistic input. This means that apart from getting a natural looking distribution of tree models according to size and species that are distributed much like they would be in real life, the artist himself can guide the appearance of this eco system. This is important as it can quickly blend artistic vision with realism.
I have tried to replicate a similar workflow in the past with tree distribution in an environment by using a wide range of software and I have to admit that I managed to receive the worst of both ends a crippled control over the flow of vegetation, combined with an unnatural looking distribution of assets. This is why I am excited for this work flow.
*My experiment with this used distribution maps that were based on geological masks that looked at erosion, sediment carry and slope angle that were combined and pained over to better guide asset spread.
Bradbury, GA, Subr, K, Koniaris, C, Mitchell, K & Weyrich, T 2015, ‘Guided Ecological Simulation for Artistic Editing of Plant Distributions in Natural Scenes’ Journal of Computer Graphics Techniques, vol 4, no. 4, pp. 28-53.