Procedurally Generated
   HOME

TheInfoList



OR:

In
computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes, and development of both hardware and software. Computing has scientific, e ...
, procedural generation is a method of creating data
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algorithms are used as specificat ...
ically as opposed to manually, typically through a combination of human-generated assets and algorithms coupled with computer-generated randomness and processing power. In
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
, 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. Procedural generation is a branch of media synthesis.


Overview

The term ''procedural'' refers to the process that computes a particular function.
Fractal In mathematics, a fractal is a 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 scales, as illu ...
s are geometric patterns which can often be generated procedurally. Commonplace procedural content includes textures and
meshes A mesh is a barrier made of connected strands of metal, fiber, or other flexible or ductile materials. A mesh is similar to a web or a net in that it has many attached or woven strands. Types * A plastic mesh may be extruded, oriented, ex ...
.
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 ...
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 languag ...
as well as music. It has been used to create compositions in various genres of
electronic music Electronic music is a genre of music that employs electronic musical instruments, digital instruments, or circuitry-based music technology in its creation. It includes both music made using electronic and electromechanical means ( electroac ...
by artists such as
Brian Eno Brian Peter George St John le Baptiste de la Salle Eno (; born Brian Peter George Eno, 15 May 1948) is a British musician, composer, record producer and visual artist best known for his contributions to ambient music and work in rock, pop an ...
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 software (built by Tim Cole and Pete Col ...
". While software developers have applied procedural generation techniques for years, few products have employed this approach extensively. Procedurally generated elements have appeared in earlier video games: '' 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 a group of islands in the 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 and Outer Hebrides, the Northern Isles, ...
. '' Soldier of Fortune'' from
Raven Software Raven Software Corporation is an American video game developer based in Wisconsin and founded in 1990. In 1997, Raven made an exclusive publishing deal with Activision and was subsequently acquired by them. After the acquisition, many of the stu ...
uses simple routines to detail enemy models, while its sequel featured a randomly-generated level mode. Avalanche Studios 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 survival game developed and published by Hello Games. It was released worldwide for the PlayStation 4 and Microsoft Windows in August 2016, for Xbox One in July 2018, for the PlayStation 5 and Xb ...
'', 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 and has developed the ''Joe Danger'' series, ''No Man's Sky'', and '' T ...
, 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 programming, visual ...
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 a 501(c)(3) professional association for electronic engineering and electrical engineering (and associated disciplines) with its corporate office in New York City and its operati ...
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.


Contemporary application


Tabletop role-playing games

Using procedural generation in games had origins in the tabletop role playing game (RPG) venue. 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 ga ...
'', 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 video game publisher, publisher with over 100 titles to its credit from its founding in 1979 to its dissolution in 1994. The company was especially noted for its numerous wargames ...
under license from TSR released the ''Dungeon Master's Assistant'', a computer program that generated dungeons based on these published tables. ''
Tunnels & Trolls ''Tunnels & Trolls'' (abbreviated ''T&T'') is a fantasy role-playing game designed by Ken St. Andre and first published in 1975 by Flying Buffalo. The second modern role-playing game published, it was written by Ken St. Andre to be a more accessib ...
'', published by
Flying Buffalo Flying Buffalo Inc. (FBI) is a game company with a line of role playing games, card games, and other gaming materials. The company's founder, Rick Loomis, began game publishing with '' Nuclear Destruction'', a play-by-mail game which started the ...
, 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 subgenre of role-playing computer games traditionally characterized by a dungeon crawl through procedurally generated levels, turn-based gameplay, grid-based movement, and permanent death of the player characte ...
games, a genre directly inspired by ''Dungeons & Dragons'' adopted for solitaire play, heavily utilized procedural generation 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 ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because of ...
- 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 numbers. The PRNG-generate ...
s. These PRNGs were often used with predefined
seed A seed is an embryonic plant enclosed in a protective outer covering, along with a food reserve. The formation of the seed is a part of the process of reproduction in seed plants, the spermatophytes, including the gymnosperm and angiospe ...
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 (french: élite, from la, eligere, to select or to sort out) are a small group of powerful people who hold a disproportionate amount of wealth, privilege, political power, or skill in a group. D ...
'', 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 ''River Raid'' is a vertically scrolling shooter designed and programmed by Carol Shaw and published by Activision in 1982 for the Atari 2600 video game console. Over a million game cartridges were sold. Activision later ported the title to th ...
'', 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 First-person shooter (FPS) is a sub-genre of shooter video games centered on gun and other weapon-based combat in a first-person perspective, with the player experiencing the action through the eyes of the protagonist and controlling the pl ...
called ''
.kkrieger ''.kkrieger'' (from ''Krieger'', German for warrior) is a German first-person shooter video game created by German demogroup .theprodukkt (a former subdivision of Farbrausch), which won first place in the 96k game competition at Breakpoint in Ap ...
'' 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 digital information. The International System of Units (SI) defines the prefix ''kilo'' as 1000 (103); per this definition, one kilobyte is 1000 bytes.International Standard IEC 80000-13 Quantiti ...
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 (XBLA) is a digital video game download service available through the Xbox Games Store, Microsoft's digital distribution network for the Xbox 360. It focuses on smaller downloadable games from both major publishers and independent ...
. Will Wright's ''
Spore In biology, a spore is a unit of sexual or asexual reproduction that may be adapted for dispersal and for survival, often for extended periods of time, in unfavourable conditions. Spores form part of the life cycles of many plants, algae, f ...
'' also makes use of procedural synthesis. Procedural generation is often used in
loot system In video games, loot is the collection of Item (gaming), items picked up by the player character that increase their power or level up their abilities, such as In-game currency, currency, magic (gaming), spells, equipment and weapons. Loot is mea ...
s of quest-driven games, such as
action role-playing game An action role-playing game (often abbreviated action RPG or ARPG) is a subgenre of video games that combines core elements from both the action game and role-playing genre. Definition The games emphasize real-time combat where the player h ...
s and
massive multiplayer online role playing game A massively multiplayer online role-playing game (MMORPG) is a video game that combines aspects of a role-playing video game and a massively multiplayer online game. As in role-playing games (RPGs), the player assumes the role of a character ( ...
s. 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 A borderland or borderlands are the geographical space or zone around a territorial border. Borderland or borderlands may refer to: Places * Borderland, West Virginia, an unincorporated community in Mingo County, West Virginia * Borderland (ele ...
'' series is based on its procedural generation system which can create over a million unique guns and other equipment. Many open world or
survival game Survival games are a sub-genre of action video games, which are usually set in hostile, intense, open-world environments. Players generally start with minimal equipment and are required to survive as long as possible by crafting tools, weapons ...
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 image, or the smallest point in an all points addressable display device. In most digital display devices, pixels are the smal ...
- or
voxel In 3D computer graphics, a voxel represents a value on a regular grid in three-dimensional space. As with pixels in a 2D bitmap, voxels themselves do not typically have their position (i.e. coordinates) explicitly encoded with their values. Ins ...
-based
biome A biome () is a biogeographical unit consisting of a biological community that has formed in response to the physical environment in which they are found and a shared regional climate. Biomes may span more than one continent. Biome is a broader ...
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'' (officially called ''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 sin ...
'' and ''
Minecraft ''Minecraft'' is a sandbox game developed by Mojang Studios. The game was created by Markus "Notch" Persson in the Java programming language. Following several early private testing versions, it was first made public in May 2009 before being ...
''. 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 is the galaxy that includes our Solar System, with the name describing the galaxy's appearance from Earth: a hazy band of light seen in the night sky formed from stars that cannot be individually distinguished by the naked eye ...
Galaxy as its world basis, uses procedural generation to simulate the planets in these solar systems. Similarly,
Star Citizen Logo Cloud Imperium Games ''Star Citizen'' is an in-development multiplayer, space trading and combat simulation game. The game is being developed and published by Cloud Imperium Games for Microsoft Windows. An extended retry of unrealized plans ...
uses the technology for its planets, to create a collection of seamlessly-loaded planet-sized planets among its hand-crafted universe. '' I-Novae Infinity'' features a plethora of planets which are procedurally generated between which the player can travel via space ships. '' 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 survival game developed and published by Hello Games. It was released worldwide for the PlayStation 4 and Microsoft Windows in August 2016, for Xbox One in July 2018, for the PlayStation 5 and Xb ...
'', by using procedural generation, is the largest video game in history, featuring a universe of 18
quintillion Two naming scales for large numbers have been used in English and other European languages since the early modern era: the long and short scales. Most English variants use the short scale today, but the long scale remains dominant in many non-E ...
full-sized planets across entire galaxies, and these galaxies can be explored in flight inch-by-inch, or on foot after a landing. 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. For a seed to be used in a pseudorandom number generator, it does not need to be random. Because of the nature of number gene ...
number to their deterministic engine), which enables players to meet and share discoveries.


Film

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 known as an ''imperfect factory'', where artists can 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 could model a product for a grocery store shelf, and then create an imperfect factory to generate many similar objects to populate the shelf. MASSIVE is a high-end computer animation and
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech 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 film director, screenwriter and producer. He is best known as the director, writer and producer of the ''Lord of the Rings'' trilogy (2001–2003) and the ''Hobbit'' trilogy ( ...
's ''
The Lord of the Rings ''The Lord of the Rings'' is an epic high-fantasy novel by English author and scholar J. R. R. Tolkien. Set in Middle-earth, intended to be Earth at some time in the distant past, the story began as a sequel to Tolkien's 1937 children's boo ...
'' films automatically. Coherent noise can be extremely important to procedural workflow in film.
Simplex noise Simplex noise is the result of an ''n''-dimensional noise function comparable to Perlin noise ("classic" noise) but with fewer directional artifacts and, in higher dimensions, a lower computational overhead. Ken Perlin designed the algorithm i ...
is often faster with fewer artifacts, though an older function called
Perlin noise Perlin noise is a type of gradient noise developed by Ken Perlin. History Ken Perlin developed Perlin noise in 1983 as a result of his frustration with the "machine-like" look of computer-generated imagery (CGI) at the time. He formally descr ...
may be used as well. Coherent noise, in this case, refers to a function that generates smooth pseudo-randomness in dimensions.


See also

*
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, cogn ...
*
Fractal landscape A fractal landscape is a surface that is generated using a stochastic algorithm designed to produce fractal behavior that mimics the appearance of natural terrain. In other words, the result of the procedure is not a deterministic fractal surface, ...
*
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 Gauss ...
*
Generative art Generative art refers to art that in whole or in part has been created 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 artwork that wo ...
*
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 generat ...
* List of games using procedural generation *
Media synthesis (AI) Synthetic media (also known as AI-generated media, generative AI, personalized media, and colloquially as deepfakes) is a catch-all term for the artificial production, manipulation, and modification of data and media by automated means, especiall ...
*
Noise Noise is unwanted sound considered unpleasant, loud or disruptive to hearing. From a physics standpoint, there is no distinction between noise and desired sound, as both are vibrations through a medium, such as air or water. The difference arise ...
,
Perlin noise Perlin noise is a type of gradient noise developed by Ken Perlin. History Ken Perlin developed Perlin noise in 1983 as a result of his frustration with the "machine-like" look of computer-generated imagery (CGI) at the time. He formally descr ...
,
Simplex noise Simplex noise is the result of an ''n''-dimensional noise function comparable to Perlin noise ("classic" noise) but with fewer directional artifacts and, in higher dimensions, a lower computational overhead. Ken Perlin designed the algorithm i ...
*
Procedural animation A procedural animation is a type of computer animation, used to automatically generate animation in real-time to allow for a more diverse series of actions than could otherwise be created using predefined animations. Procedural animation is us ...
*
Procedural modeling Procedural modeling is an umbrella term for a number of techniques in computer graphics to create 3D models and textures from sets of rules. L-Systems, fractals, and generative modeling are procedural modeling techniques since they apply algorit ...
*
Procedural texture In computer graphics, a procedural texture is a 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 and easy text ...
*
Random dungeon A random dungeon is a dungeon in a role-playing video game which is procedurally generated by the computer using an algorithm, such that the dungeon is laid out differently every time the player enters it, and a player often never plays through q ...
*
Random map In video games, a random map is a map generated randomly by the computer, usually in strategy games. Random maps are often the core of single and multiplayer gameplay, aside from story based campaigns that are often shipped with the game. Each ...
*
Roguelike Roguelike (or rogue-like) is a subgenre of role-playing computer games traditionally characterized by a dungeon crawl through procedurally generated levels, turn-based gameplay, grid-based movement, and permanent death of the player characte ...
* 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 Awards and Independent Games Festival, and a variety of tutori ...
2005 {{Coherent noise Applications of randomness