HOME

TheInfoList



OR:

In
computing Computing is any goal-oriented activity requiring, benefiting from, or creating computer, computing machinery. It includes the study and experimentation of algorithmic processes, and the development of both computer hardware, hardware and softw ...
, procedural generation is a method of creating data
algorithm In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
ically as opposed to manually, typically through a combination of human-generated content and algorithms coupled with computer-generated randomness and processing power. In
computer graphics Computer graphics deals with generating images and art with the aid of computers. Computer graphics is a core technology in digital photography, film, video games, digital art, cell phone and computer displays, and many specialized applications. ...
, it is commonly used to create textures and 3D models. In video games, it is used to automatically create large amounts of content in a game. Depending on the implementation, advantages of procedural generation can include smaller file sizes, larger amounts of content, and randomness for less predictable gameplay.


Overview

The term ''procedural'' refers to the process that computes a particular function.
Fractal In mathematics, a fractal is a Shape, geometric shape containing detailed structure at arbitrarily small scales, usually having a fractal dimension strictly exceeding the topological dimension. Many fractals appear similar at various scale ...
s are geometric patterns which can often be generated procedurally. Commonplace procedural content includes textures and meshes.
Sound In physics, sound is a vibration that propagates as an acoustic wave through a transmission medium such as a gas, liquid or solid. In human physiology and psychology, sound is the ''reception'' of such waves and their ''perception'' by the br ...
is often also procedurally generated, and has applications in both
speech synthesis Speech synthesis is the artificial production of human speech. A computer system used for this purpose is called a speech synthesizer, and can be implemented in software or hardware products. A text-to-speech (TTS) system converts normal langua ...
as well as music. It has been used to create compositions in various genres of
electronic music Electronic music broadly is a group of music genres that employ electronic musical instruments, circuitry-based music technology and software, or general-purpose electronics (such as personal computers) in its creation. It includes both music ...
by artists such as
Brian Eno Brian Peter George Jean-Baptiste de la Salle Eno (, born 15 May 1948), also mononymously known as Eno, is an English musician, songwriter, record producer, visual artist, and activist. He is best known for his pioneering contributions to ambien ...
who popularized the term "
generative music Generative music is a term popularized by Brian Eno to describe music that is ever-different and changing, and that is created by a system. Historical background In 1995 whilst working with SSEYO's Koan_(program), Koan software (built by Tim ...
". Procedural generation was originally created as an instrument for video games, aiding in generating levels, textures and complete worlds with little human contribution. Procedurally generated elements have appeared in video games since the 1990s: '' The Elder Scrolls II: Daggerfall'' takes place in a mostly procedurally generated world, giving a world roughly two thirds the actual size of the
British Isles The British Isles are an archipelago in the Atlantic Ocean, North Atlantic Ocean off the north-western coast of continental Europe, consisting of the islands of Great Britain, Ireland, the Isle of Man, the Inner Hebrides, Inner and Outer Hebr ...
. '' Soldier of Fortune'' from
Raven Software Raven Software Corporation (trade name: Raven; formerly Raven Software, Inc.) is an American video game developer based in Middleton, Wisconsin, and part of Activision. Founded in May 1990 by brothers Brian and Steve Raffel, the company is most ...
uses simple routines to detail enemy models, while its sequel featured a randomly generated level mode.
Avalanche Studios Avalanche Studios Group is a Swedish video game developer and publisher based in Stockholm. It is a parent company that includes Avalanche Studios, Expansive Worlds, and Systemic Reaction. Founded by Linus Blomberg and Christofer Sundberg in M ...
employed procedural generation to create a large and varied group of detailed tropical islands for '' Just Cause''. ''
No Man's Sky ''No Man's Sky'' is an Action-adventure game, action-adventure survival game developed and published by Hello Games. It was released worldwide for the PlayStation 4 and Windows in August 2016, for Xbox One in July 2018, for the PlayStation 5 an ...
'', a game developed by games studio
Hello Games Hello Games Ltd is a British video game company based in Guildford, Surrey. The company was founded by Sean Murray, Grant Duncan, Ryan Doyle and David Ream in February 2008 (incorporated on 4 August 2008) and has developed the '' Joe Danger'' ...
, is all based upon procedurally generated elements. The modern
demoscene The demoscene () is an international computer art subculture focused on producing demos: self-contained, sometimes extremely small, computer programs that produce audiovisual presentations. The purpose of a demo is to show off computer programmi ...
uses procedural generation to package a great deal of audiovisual content into relatively small programs. New methods and applications are presented annually in conferences such as the
IEEE Conference on Computational Intelligence and Games The Institute of Electrical and Electronics Engineers (IEEE) is an American 501(c)(3) public charity professional organization for electrical engineering, electronics engineering, and other related disciplines. The IEEE has a corporate office i ...
and the
AAAI The Association for the Advancement of Artificial Intelligence (AAAI) is an international scientific society devoted to promote research in, and responsible use of, artificial intelligence. AAAI also aims to increase public understanding of artif ...
Conference on Artificial Intelligence and Interactive Digital Entertainment. Particularly in the application of procedural generation with video games, which are intended to be highly replayable, there are concerns that procedural systems can generate infinite numbers of worlds to explore, but without sufficient human guidance and rules to guide these. The result has been called "procedural oatmeal", a term coined by writer Kate Compton, in that while it is possible to mathematically generate thousands of bowls of oatmeal with procedural generation, they will be perceived to be the same by the user, and lack the notion of perceived uniqueness that a procedural system should aim for.


Applications


Tabletop role-playing games

Using procedural generation in games had origins in tabletop role playing games (RPG). The leading tabletop system, ''
Advanced Dungeons & Dragons Several different editions of the '' Dungeons & Dragons'' (''D&D'') fantasy role-playing game have been produced since 1974. The current publisher of ''D&D'', Wizards of the Coast, produces new materials only for the most current edition of the ...
'', provided ways for the "dungeon master" to generate dungeons and terrain using random die rolls, expanded in later editions with complex branching procedural tables.
Strategic Simulations Strategic Simulations, Inc. (SSI) was a video game developer and publisher of over 100 games from its founding in 1979 to its dissolution in 1994 (though the brand was in use until around 2002). The company focused on computer wargames then lat ...
under license from TSR released the '' Dungeon Master's Assistant'', a computer program that generated dungeons based on these published tables. '' Tunnels & Trolls'', published by Flying Buffalo, was designed primarily around solitary play and used similar procedural generation for its dungeons. Other tabletop RPGs borrowed similar concepts in procedural generation for various world elements. Many online tools for Dungeon Masters now use procedural generation to varying degrees.


Video games


Early history

Prior to graphically oriented video games,
roguelike Roguelike (or rogue-like) is a style of role-playing game traditionally characterized by a dungeon crawl through procedurally generated levels, turn-based gameplay, grid-based movement, and permanent death of the player character. Most ro ...
games, a genre directly inspired by ''Dungeons & Dragons'' adopted for solitary play, heavily utilized procedural generation to randomly produce dungeons, in the same manner that tabletop systems had done. Such early games include '' Beneath Apple Manor'' (1978) and the genre's namesake, '' Rogue'' (1980). The procedural generation system in roguelikes would create dungeons in
ASCII ASCII ( ), an acronym for American Standard Code for Information Interchange, is a character encoding standard for representing a particular set of 95 (English language focused) printable character, printable and 33 control character, control c ...
- or regular tile-based systems and define rooms, hallways, monsters, and treasure to challenge the player. Roguelikes, and games based on the roguelike concepts, allow the development of complex gameplay without having to spend excessive time in creating a game's world. 1978's '' Maze Craze'' for the Atari VCS used an algorithm to generate a random, top-down maze for each game. Some games used
pseudorandom number generator A pseudorandom number generator (PRNG), also known as a deterministic random bit generator (DRBG), is an algorithm for generating a sequence of numbers whose properties approximate the properties of sequences of random number generation, random n ...
s. These PRNGs were often used with predefined
seed In botany, a seed is a plant structure containing an embryo and stored nutrients in a protective coat called a ''testa''. More generally, the term "seed" means anything that can be Sowing, sown, which may include seed and husk or tuber. Seeds ...
values in order to generate very large game worlds that appeared to be premade. '' The Sentinel'' supposedly had 10,000 different levels stored in only 48 and 64 kilobytes. An extreme case was ''
Elite In political and sociological theory, the elite (, from , to select or to sort out) are a small group of powerful or wealthy people who hold a disproportionate amount of wealth, privilege, political power, or skill in a group. Defined by the ...
'', which was originally planned to contain a total of 248 (approximately 282 trillion) galaxies with 256 solar systems each. However, the publisher was afraid that such a gigantic universe would cause disbelief in players, and eight of these galaxies were chosen for the final version. Other notable early examples include the 1985 game '' Rescue on Fractalus'' (that used fractals to procedurally create, in real time, the craggy mountains of an alien planet) and '' River Raid'' (the 1982
Activision Activision Publishing, Inc. is an American video game publisher based in Santa Monica, California. It serves as the publishing business for its parent company, Activision Blizzard, and consists of several subsidiary studios. Activision is one o ...
game that used a pseudorandom number sequence generated by a
linear feedback shift register In computing, a linear-feedback shift register (LFSR) is a shift register whose input bit is a linear function of its previous state. The most commonly used linear function of single bits is exclusive-or (XOR). Thus, an LFSR is most often a sh ...
in order to generate a scrolling maze of obstacles).


Modern use

Though modern computer games do not have the same memory and hardware restrictions that earlier games had, the use of procedural generation is frequently employed to create randomized games, maps, levels, characters, or other facets that are unique on each playthrough. In 2004, a PC
first-person shooter A first-person shooter (FPS) is a video game genre, video game centered on gun fighting and other weapon-based combat seen from a First person (video games), first-person perspective, with the player experiencing the action directly through t ...
called '' .kkrieger'' was released by a German demo group. It is entirely contained in a 96
kilobyte The kilobyte is a multiple of the unit byte for Computer data storage, digital information. The International System of Units (SI) defines the prefix ''kilo-, kilo'' as a multiplication factor of 1000 (103); therefore, one kilobyte is 1000&nbs ...
executable for Microsoft Windows that generates hundreds of megabytes of 3D and texture data when run. According to one of the programmers, "it was a complete failure as far as the game side was concerned (mostly because no one involved really deeply cared about that aspect)." Naked Sky's '' RoboBlitz'' used procedural generation to maximize content in a less than 50 MB downloadable file for
Xbox Live Arcade Xbox Live Arcade (or XBLA) was a video game Digital distribution in video games, digital distribution service that was available for the Xbox (console), Xbox and Xbox 360 consoles. It focused on smaller downloadable games from both major publisher ...
. Will Wright's ''
Spore In biology, a spore is a unit of sexual reproduction, sexual (in fungi) or asexual reproduction that may be adapted for biological dispersal, dispersal and for survival, often for extended periods of time, in unfavourable conditions. Spores fo ...
'' also makes use of procedural synthesis. Procedural generation is often used in loot systems of quest-driven games, such as
action role-playing game An action role-playing game (often abbreviated action RPG or ARPG) is a video game genre that combines core elements from both the action game and Role-playing video game, role-playing game genres. Definition Action role-playing games empha ...
s and massive multiplayer online role playing games. Though quests may feature fixed rewards, other loot, such as weapons and armor, may be generated for the player based on the player-character's level, the quest's level, their performance in the quest, and other random factors. This often leads to loot having a rarity quality applied to reflect when the procedural generation system has produced an item with better-than-average attributes. For example, the '' Borderlands'' series is based on its procedural generation system which can create over a million unique guns and other equipment. Many
open world In video games, an open world is a virtual world in which the Gamer, player can approach objectives freely, as opposed to a world with more linear and structured gameplay. Notable games in this category include ''The Legend of Zelda (video game ...
or
survival game Survival games are a subgenre of action games which are often set in hostile, intense, open-world environments. Players generally start with minimal equipment and are required to survive as long as possible by finding the resources necessary t ...
s procedurally create a game world from a random seed or one provided by the player, so that each playthrough is different. These generation systems create numerous
pixel In digital imaging, a pixel (abbreviated px), pel, or picture element is the smallest addressable element in a Raster graphics, raster image, or the smallest addressable element in a dot matrix display device. In most digital display devices, p ...
- or
voxel In computing, a voxel is a representation of a value on a three-dimensional regular grid, akin to the two-dimensional pixel. Voxels are frequently used in the Data visualization, visualization and analysis of medical imaging, medical and scient ...
-based
biome A biome () is a distinct geographical region with specific climate, vegetation, and animal life. It consists of a biological community that has formed in response to its physical environment and regional climate. In 1935, Tansley added the ...
s with distribution of resources, objects, and creatures. The player frequently has the ability to adjust some of the generation parameters, such as specifying the amount of water coverage in a world. Examples of such games include
Dwarf Fortress ''Dwarf Fortress'' (previously titled ''Slaves to Armok: God of Blood Chapter II: Dwarf Fortress'') is a construction and management simulation and roguelike indie video game created by Bay 12 Games. Available as freeware and in development si ...
, ''
Minecraft ''Minecraft'' is a 2011 sandbox game developed and published by the Swedish video game developer Mojang Studios. Originally created by Markus Persson, Markus "Notch" Persson using the Java (programming language), Java programming language, the ...
, and Vintage Story.'' Procedural generation is also used in space exploration and trading games. '' Elite: Dangerous'', through using the 400 billion known stars of the
Milky Way The Milky Way or Milky Way Galaxy is the galaxy that includes the Solar System, with the name describing the #Appearance, galaxy's appearance from Earth: a hazy band of light seen in the night sky formed from stars in other arms of the galax ...
Galaxy as its world basis, uses procedural generation to simulate the planets in these solar systems. Similarly, ''
Star Citizen ''Star Citizen'' is a multiplayer, space trading and combat simulation video game currently under development by Cloud Imperium Games for Windows. An extended retry of unrealized plans for ''Freelancer'' (2003), ''Star Citizen'' is led by dire ...
'' uses the technology to create seamlessly loaded planets among its hand-crafted universe. '' Outerra Anteworld'' is a video game in development that uses procedural generation and real world data to create a virtual replica of planet Earth in true scale. ''
No Man's Sky ''No Man's Sky'' is an Action-adventure game, action-adventure survival game developed and published by Hello Games. It was released worldwide for the PlayStation 4 and Windows in August 2016, for Xbox One in July 2018, for the PlayStation 5 an ...
'', by using procedural generation, is the largest video game in history, featuring a universe of 18
quintillion Depending on context (e.g. language, culture, region), some large numbers have names that allow for describing large quantities in a textual form; not mathematical. For very large values, the text is generally shorter than a decimal numeric repres ...
planets across entire galaxies, which can be explored in flight or on foot. The planets all have their own uniquely diverse terrain, weather, flora, and fauna, as well as a number of space-faring alien species. The same content exists at the same places for all players (thanks to a single
random seed A random seed (or seed state, or just seed) is a number (or vector) used to initialize a pseudorandom number generator. A pseudorandom number generator's number sequence is completely determined by the seed: thus, if a pseudorandom number gener ...
number to their deterministic engine), which enables players to meet and share discoveries.


Other applications

As in video games, procedural generation is often used in film to create visually interesting and accurate spaces rapidly. This comes in a wide variety of applications. One application is ''imperfect factories'', which are used by artists to rapidly generate many similar objects. This accounts for the fact that, in real life, no two objects are ever exactly alike. For instance, an artist can model a product for a grocery store, and then create an imperfect factory to generate many imperfect copies to populate a whole shelf. MASSIVE is a high-end computer animation and
artificial intelligence Artificial intelligence (AI) is the capability of computer, computational systems to perform tasks typically associated with human intelligence, such as learning, reasoning, problem-solving, perception, and decision-making. It is a field of re ...
software package used for generating crowd-related visual effects for film and television. It was developed to create fighting armies of hundreds of thousands of soldiers for
Peter Jackson Sir Peter Robert Jackson (born 31 October 1961) is a New Zealand filmmaker. He is best known as the director, writer, and producer of the ''Lord of the Rings'' trilogy (2001–2003) and the ''Hobbit'' trilogy (2012–2014), both of which ar ...
's ''
The Lord of the Rings ''The Lord of the Rings'' is an Epic (genre), epic high fantasy novel written by English author and scholar J. R. R. Tolkien. Set in Middle-earth, the story began as a sequel to Tolkien's 1937 children's book ''The Hobbit'' but eventually d ...
'' films automatically. Coherent noise can be extremely important to procedural workflow in film. Simplex noise is often faster with fewer artifacts, though an older function called Perlin noise may be used as well. Coherent noise, in this case, refers to a function that generates smooth pseudo-randomness in dimensions. Poyck studied how procedurally generated cityscapes can be used to aid social simulations and to train self-driving cars. Procedural generation plays a pivotal part in the progression of
digital twin A digital twin is a digital model of an intended or actual real-world physical product, system, or process (a ''physical twin'') that serves as a digital counterpart of it for purposes such as simulation, integration, testing, monitoring, and m ...
s, which are very detailed virtual replicas of real-world objects used for simulation, analysis, and planning.


Future directions

Neural networks A neural network is a group of interconnected units called neurons that send signals to one another. Neurons can be either Cell (biology), biological cells or signal pathways. While individual neurons are simple, many of them together in a netwo ...
have recently been employed to refine procedurally generated content. Combining classic randomization methods with
deep learning Deep learning is a subset of machine learning that focuses on utilizing multilayered neural networks to perform tasks such as classification, regression, and representation learning. The field takes inspiration from biological neuroscience a ...
provides new ways for generating audio, images, 3D objects, and other content types. This is especially useful in game level development;
reinforcement learning Reinforcement learning (RL) is an interdisciplinary area of machine learning and optimal control concerned with how an intelligent agent should take actions in a dynamic environment in order to maximize a reward signal. Reinforcement learnin ...
allows the development of agents that play generated levels, serving as automatic content evaluators. Integrating procedural generation with deep learning alters the landscape of digital content creation. Zakaria et al. demonstrated that different deep learning methods for procedurally generating Sokoban levels have different strengths and weaknesses. Looking ahead, researchers are investigating methods to combine large language models (LLMs) with deep-learning powered procedural generation systems, aiming to enhance their adaptability. Zakaria suggests that "LLMs combined with reinforcement learning can create procedural assets that evolve dynamically based on real-time feedback". Zakaria investigated the application of advanced deep learning structures such as bootstrapped LSTM (Long short-term memory) generators and GANs (Generative adversarial networks) to upgrade procedural level design. They found that "diversity sampling consistently increases the numbers of generated solutions and signatures", showing that hybrid approaches help overcome problems like repetitive patterns or lack of variation.


See also

*
Cellular automata A cellular automaton (pl. cellular automata, abbrev. CA) is a discrete model of computation studied in automata theory. Cellular automata are also called cellular spaces, tessellation automata, homogeneous structures, cellular structures, tessel ...
*
Computational creativity Computational creativity (also known as artificial creativity, mechanical creativity, creative computing or creative computation) is a multidisciplinary endeavour that is located at the intersection of the fields of artificial intelligence, cogni ...
* Fractal landscape *
Fractional Brownian motion In probability theory, fractional Brownian motion (fBm), also called a fractal Brownian motion, is a generalization of Brownian motion. Unlike classical Brownian motion, the increments of fBm need not be independent. fBm is a continuous-time Gaus ...
*
Generative art Generative art is post-conceptual art that has been created (in whole or in part) with the use of an autonomous system. An ''autonomous system'' in this context is generally one that is non-human and can independently determine features of an ...
*
Generative artificial intelligence Generative artificial intelligence (Generative AI, GenAI, or GAI) is a subfield of artificial intelligence that uses generative models to produce text, images, videos, or other forms of data. These models Machine learning, learn the underlyin ...
* L-systems *
Linear congruential generator A linear congruential generator (LCG) is an algorithm that yields a sequence of pseudo-randomized numbers calculated with a discontinuous piecewise linear equation. The method represents one of the oldest and best-known pseudorandom number gener ...
* List of games using procedural generation * Media synthesis (AI) *
Noise Noise is sound, chiefly unwanted, unintentional, or harmful sound considered unpleasant, loud, or disruptive to mental or hearing faculties. From a physics standpoint, there is no distinction between noise and desired sound, as both are vibrat ...
, Perlin noise, Simplex noise * Procedural animation * Procedural modeling *
Procedural texture In computer graphics, a procedural texture is a Image texture, texture created using a mathematical description (i.e. an algorithm) rather than directly stored data. The advantage of this approach is low storage cost, unlimited texture resolution ...
*
Random map In video games, a random map is a map generated randomness, randomly by the computer, usually in Strategy video game, strategy games. Random maps are often the core of single and multiplayer gameplay, aside from story based campaigns that are o ...
*
Roguelike Roguelike (or rogue-like) is a style of role-playing game traditionally characterized by a dungeon crawl through procedurally generated levels, turn-based gameplay, grid-based movement, and permanent death of the player character. Most ro ...
* Scenery generator


References


Further reading

* *
The Future Of Content
Will Wright keynote on Spore & procedural generation at the
Game Developers Conference The Game Developers Conference (GDC) is an annual conference for video game developers. The event includes an expo, networking events, and awards shows like the Game Developers Choice Award for Game of the Year, Game Developers Choice Awards and ...
2005 {{Coherent noise Applications of randomness