Introduction into Procedural Content Generation by Yogie Aditya

Preview:

Citation preview

Introduction into Procedural Content Generation

Yogie AdityaNiji Games

Procedural Content Generation

Extra Credits

Procedural Content Generation

• Procedural content generation (PCG) refers to creating game content automatically, through algorithmic means. - Togelius, Yannakakis, Stanley, Browne

• PCG should ensure that from a few parameters, a large number of possible types of content can be generated. - Doull

• Procedural Content Generation is the process of using techniques based on AI, maths and other disciplines to automatically create game content. - University of Strathclyde

Is PCG totally Random?

Extra Credits

Extra Credits

Opportunities of PCG

• High diversity of the resulting assets • Faster than any human designer could ever be • Significantly reduces production costs• Allows for a mixed-initiative approach to level design• Content automatically implemented in the engine• Can save vital system resources• Players can influence the parameters of the game world

• Possibility of automatically analyzing player behavior

Challenges of PCG

Satisfying a high number of constraints (e.g. full connectivity)

• Finding these constraints and tweaking unintuitive parameters of the system can degenerate into trial and error

Produce aesthetically pleasing results

• Levels can become too similar to each other

Maximize the expressive range (variety of results)

• Can decrease co-op multiplayer playability

May require spending too much time on inventing a sophisticated level generator

Extra Credits

Extra Credits

Extra Credits

The Ingredients?

• Domain knowledge

• Artificial intelligence

• Structured randomness• Multi-layering• Filters, limits & restrictions• Specialized algorithms• Gameplay integration

The Ingredients? (Con’t)

Domain Knowledge

• To generate something you need to know it• PCG typically aims at building an artificial level designer, usually needs domain

knowledge about level design

Artificial Intelligence

• Need algorithms that can work on complex knowledge and generate plausible content• Search-based methods, L-systems, evolutionary computation, fractals, cellular automata,

agent-based methods, planning, graphic programming, etc.

PCG Implementation Example

• Koch Snowflakes

• Grid Based

• Chunk-based approach

• Noise

Koch Snowflakes (N = 0)

Koch Snowflakes (N = 1)

Koch Snowflakes (N = 2)

Koch Snowflakes (N = 3)

Koch Snowflakes (N = 4)

Grid Based

Grid Based

Grid Based

Grid Based

Chunk-based approach

Chunk-based approach

Chunk-based approach

Chunk-based approach

Chunk-based approach

Noise

Noise

Noise

That’s all folks!Thank you

Any Question?